Class: Baykit::BayServer::Util::GzipCompressor
- Inherits:
-
Object
- Object
- Baykit::BayServer::Util::GzipCompressor
- Defined in:
- lib/baykit/bayserver/util/gzip_compressor.rb
Defined Under Namespace
Classes: CallbackWriter, CompressListener
Instance Attribute Summary collapse
-
#cb_writer ⇒ Object
readonly
Returns the value of attribute cb_writer.
-
#gout ⇒ Object
readonly
Returns the value of attribute gout.
-
#listener ⇒ Object
readonly
Returns the value of attribute listener.
Instance Method Summary collapse
- #compress(buf, ofs, len, &lis) ⇒ Object
- #finish ⇒ Object
-
#initialize(comp_lis) ⇒ GzipCompressor
constructor
A new instance of GzipCompressor.
Constructor Details
#initialize(comp_lis) ⇒ GzipCompressor
Returns a new instance of GzipCompressor.
35 36 37 38 39 |
# File 'lib/baykit/bayserver/util/gzip_compressor.rb', line 35 def initialize(comp_lis) @listener = comp_lis @cb_writer = CallbackWriter.new(self) @gout = Zlib::GzipWriter.new(@cb_writer) end |
Instance Attribute Details
#cb_writer ⇒ Object (readonly)
Returns the value of attribute cb_writer.
33 34 35 |
# File 'lib/baykit/bayserver/util/gzip_compressor.rb', line 33 def cb_writer @cb_writer end |
#gout ⇒ Object (readonly)
Returns the value of attribute gout.
32 33 34 |
# File 'lib/baykit/bayserver/util/gzip_compressor.rb', line 32 def gout @gout end |
#listener ⇒ Object (readonly)
Returns the value of attribute listener.
31 32 33 |
# File 'lib/baykit/bayserver/util/gzip_compressor.rb', line 31 def listener @listener end |
Instance Method Details
#compress(buf, ofs, len, &lis) ⇒ Object
41 42 43 44 45 |
# File 'lib/baykit/bayserver/util/gzip_compressor.rb', line 41 def compress(buf, ofs, len, &lis) @cb_writer.done_listener = lis @gout.write(buf[ofs .. ofs + len - 1]) @gout.flush() end |
#finish ⇒ Object
47 48 49 50 |
# File 'lib/baykit/bayserver/util/gzip_compressor.rb', line 47 def finish() #@gout.finish() @gout.close() end |