private HttpMultipartContentTemplateStreamParser(StreamIndexer data, long length, byte[] boundary, Encoding encoding) { this._data = data; this._length = (int) length; this._boundary = boundary; this._encoding = encoding; }
internal MultipartContentElement(string name, string filename, string contentType, StreamIndexer data, int offset, int length) { this._name = name; this._filename = filename; this._contentType = contentType; this._offset = offset; this._length = length; _streamIndexer = data; // Idea here is that we don't read the stream in to memory yet, one by 1, that would take ages, instead // we take a reference to our stream object, and then wait until we can save from the underlying stream }
internal static MultipartContentElement[] Parse(StreamIndexer data, long length, byte[] boundary, Encoding encoding) // Edited to remove HttpRawUploadedContent dependancy { var httpMultipartContentTemplateParser = new HttpMultipartContentTemplateStreamParser(data, length, boundary, encoding); httpMultipartContentTemplateParser.ParseIntoElementList(); return (MultipartContentElement[])httpMultipartContentTemplateParser._elements.ToArray(typeof(MultipartContentElement)); }
public void CopyBytes(StreamIndexer streamIndexer, int streamIndexerOffset, byte[] destArray, int destArrayOffset, int count) { m_stream.Position = streamIndexerOffset; m_stream.Read(destArray, destArrayOffset, count); }