Class: Shift::ZlibWriter

Inherits:
Interface show all
Defined in:
lib/shift/i/zlib_writer.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Interface

available?, default, engine_class, gem_dependencies, instructions, new, #rename, require_libs

Constructor Details

#initializeZlibWriter

Returns a new instance of ZlibWriter.



12
13
14
15
# File 'lib/shift/i/zlib_writer.rb', line 12

def initialize
  require 'zlib'
  require 'stringio'
end

Class Method Details

.keep_extension?Boolean

Returns:

  • (Boolean)


4
5
6
# File 'lib/shift/i/zlib_writer.rb', line 4

def self.keep_extension?
  true
end

.target_formatObject



8
9
10
# File 'lib/shift/i/zlib_writer.rb', line 8

def self.target_format
  'gz'
end

Instance Method Details

#process(str) ⇒ Object



17
18
19
20
21
22
23
24
# File 'lib/shift/i/zlib_writer.rb', line 17

def process(str)
  StringIO.open('', 'w') do |io|
    gz = Zlib::GzipWriter.new(io)
    gz.write(str)
    gz.close
    io.string
  end
end