Ejemplo n.º 1
0
 /// <param name="compressionAlgo">The compression algorithm to be used to for compression.
 ///     </param>
 /// <exception cref="System.IO.IOException"/>
 public WBlockState(Compression.Algorithm compressionAlgo, FSDataOutputStream fsOut
                    , BytesWritable fsOutputBuffer, Configuration conf)
 {
     // !null only if using native
     // Hadoop compression
     this.compressAlgo       = compressionAlgo;
     this.fsOut              = fsOut;
     this.posStart           = fsOut.GetPos();
     fsOutputBuffer.Capacity = TFile.GetFSOutputBufferSize(conf);
     this.fsBufferedOutput   = new SimpleBufferedOutputStream(this.fsOut, fsOutputBuffer
                                                              .Bytes);
     this.compressor = compressAlgo.GetCompressor();
     try
     {
         this.@out = compressionAlgo.CreateCompressionStream(fsBufferedOutput, compressor,
                                                             0);
     }
     catch (IOException e)
     {
         compressAlgo.ReturnCompressor(compressor);
         throw;
     }
 }