Class | Archive::Zip::Codec::Store::Compress |
In: |
lib/archive/zip/codec/store.rb
|
Parent: | Object |
Archive::Zip::Codec::Store::Compress is simply a writable, IO-like wrapper around a writable, IO-like object which provides a CRC32 checksum of the data written through it as well as the count of the total amount of data. A close method is also provided which can optionally close the delegate object. In addition a convenience method is provided for generating DataDescriptor objects based on the data which is passed through this object.
Instances of this class should only be accessed via the Archive::Zip::Codec::Store#compressor method.
Creates a new instance of this class using io as a data sink. io must be writable and must provide a write method as IO does or errors will be raised when performing write operations.
The flush_size attribute is set to 0 by default under the assumption that io is already buffered.
Closes this object so that further write operations will fail. If close_delegate is true, the delegate object used as a data sink will also be closed using its close method.
Returns an instance of Archive::Zip::DataDescriptor with information regarding the data which has passed through this object to the delegate object. The close or flush methods should be called before using this method in order to ensure that any possibly buffered data is flushed to the delegate object; otherwise, the contents of the data descriptor may be inaccurate.