protected override void Dispose(bool disposing) { if (disposing && destination != null) { if (!inconsistentState) { Flush(); } if (destination is Stream) { ((Stream)destination).Close(); } else { ((TextWriter)destination).Close(); } } if (consumer != null && consumer is IDisposable) { ((IDisposable)consumer).Dispose(); } destination = null; consumer = null; sinkInputObject = null; chunkToReadBuffer = null; base.Dispose(disposing); }
internal override IProducerConsumer CreatePullChain(TextReader input, ConverterStream converterStream) { this.inputEncoding = Encoding.Unicode; ConverterInput input2 = new ConverterUnicodeInput(input, false, this.maxHtmlTagSize, base.TestBoundaryConditions, converterStream); ConverterOutput output = new ConverterEncodingOutput(converterStream, false, false, this.outputEncodingSameAsInput ? Encoding.UTF8 : this.outputEncoding, this.outputEncodingSameAsInput, base.TestBoundaryConditions, this); return(this.CreateChain(input2, output, converterStream)); }
internal override IProducerConsumer CreatePullChain(TextReader input, ConverterReader converterReader) { this.inputEncoding = Encoding.Unicode; this.outputEncoding = Encoding.Unicode; ConverterInput input2 = new ConverterUnicodeInput(input, false, this.maxHtmlTagSize, base.TestBoundaryConditions, converterReader); ConverterOutput output = new ConverterUnicodeOutput(converterReader, false, false); return(this.CreateChain(input2, output, converterReader)); }
internal void SetSink(ConverterUnicodeInput sinkInputObject) { this.sinkInputObject = sinkInputObject; }