public Stream GetStream(ProtoStream stream) { Require.NotNull(stream, "stream"); if (stream.Length > MaxStreamSize) return null; else return new MemoryStream(); }
public Stream GetStream(ProtoStream stream) { Require.NotNull(stream, "stream"); if (stream.Length > MaxStreamSize) return null; if (stream.Length > MaxMemoryStreamSize) return _diskStreamManager.GetStream(stream); else return _memoryStreamManager.GetStream(stream); }
public Stream GetStream(ProtoStream stream) { Require.NotNull(stream, "stream"); if (stream.Length > MaxStreamSize) return null; while (true) { string fileName = System.IO.Path.Combine(Path, Guid.NewGuid().ToString()); if (!File.Exists(fileName)) return File.Create(fileName, 0x4000, FileOptions.DeleteOnClose); } }
public bool RegisterStream(int associationId, Messages.StartStream message) { var protoStream = new ProtoStream(message.Length, message.StreamName, message.ContentType, null); var stream = _streamManager.GetStream(protoStream); if (stream == null) return false; var pendingStream = new PendingReceiveStream( message.Length, message.StreamName, message.ContentType, associationId, stream ); _streams.Add(pendingStream.AssociationId, pendingStream); return true; }