﻿////////////////////////////////////////////////////////////////////////////////
//
//    Suflow, Enterprise Applications
//    Copyright (C) 2015 Suflow
//
//    This program is free software: you can redistribute it and/or modify
//    it under the terms of the GNU Affero General Public License as
//    published by the Free Software Foundation, either version 3 of the
//    License, or (at your option) any later version.
//
//    This program is distributed in the hope that it will be useful,
//    but WITHOUT ANY WARRANTY; without even the implied warranty of
//    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//    GNU Affero General Public License for more details.
//
//    You should have received a copy of the GNU Affero General Public License
//    along with this program.  If not, see <http://www.gnu.org/licenses/>.
//
////////////////////////////////////////////////////////////////////////////////
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;

namespace System {
    public static class StreamExtension {
        public static byte[] ToByteArray(this Stream stream) {
            stream.Position = 0;
            BinaryReader b = new BinaryReader(stream);
            if (stream.Length > int.MaxValue)
                throw new Exception("Maxumum length supported by this method is: " + int.MaxValue);
            int length = (int)stream.Length;
            byte[] binData = b.ReadBytes(length);
            return binData;
        }
    }
}
