Module: CcipherFactory::Compression::ZlibCompressor

Includes:
CcipherFactory::Common
Defined in:
lib/ccipher_factory/compression/zlib_compressor.rb

Instance Method Summary collapse

Methods included from CcipherFactory::Common

#attach_mode, #cleanup_intOutputBuf, #cleanup_intOutputFile, #detach_mode, #disposeOutput, #intOutputBuf, #intOutputFile, #is_attach_mode?, #is_output_given?, #output, #output_obj, #sanitize_symbol, #write_to_output

Instance Method Details

#compress_finalObject



30
31
32
33
34
35
# File 'lib/ccipher_factory/compression/zlib_compressor.rb', line 30

def compress_final
  @compressor.final

  ts = BinStruct.instance.struct(:compression_zlib)
  ts.encoded
end

#compress_init(*args, &block) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/ccipher_factory/compression/zlib_compressor.rb', line 9

def compress_init(*args, &block)

  @compressor = Ccrypto::UtilFactory.instance(:compression, Ccrypto::CompressionConfig.new)
  #@compressor = Zlib::Deflate.new

  if block
    instance_eval(&block)
    compress_final
  else
    self
  end

end

#compress_update(val) ⇒ Object



23
24
25
26
27
28
# File 'lib/ccipher_factory/compression/zlib_compressor.rb', line 23

def compress_update(val)
  res = @compressor.update(val)
  #res = @compressor.deflate(val, Zlib::SYNC_FLUSH)
  write_to_output(res)
  res
end