public override void CloseStream(string name) { if (Streams.ContainsKey(name)) { Stream stream = Streams[name]; TemporaryStream temp = stream as TemporaryStream; if (temp != null && MyStreams.ContainsValue(stream)) { temp.ClosePersist(); } else if (StreamOwnership) { stream.Close(); } else { return; } Streams.Remove(name); } }