Class: RBzip2::Java::Compressor

Inherits:
Object
  • Object
show all
Defined in:
lib/facter/util/rbzip2-0.3.0/lib/rbzip2/java/compressor.rb

Overview

This code is free software; you can redistribute it and/or modify it under the terms of the new BSD License.

Copyright © 2013-2017, Sebastian Staudt

Instance Method Summary collapse

Constructor Details

#initialize(io) ⇒ Compressor

Returns a new instance of Compressor.



8
9
10
# File 'lib/facter/util/rbzip2-0.3.0/lib/rbzip2/java/compressor.rb', line 8

def initialize(io)
  @io = RBzip2::Java::BZip2CompressorOutputStream.new io.to_outputstream
end

Instance Method Details

#closeObject



16
17
18
# File 'lib/facter/util/rbzip2-0.3.0/lib/rbzip2/java/compressor.rb', line 16

def close
  @io.close
end

#flushObject



12
13
14
# File 'lib/facter/util/rbzip2-0.3.0/lib/rbzip2/java/compressor.rb', line 12

def flush
  @io.flush
end

#putc(int) ⇒ Object



20
21
22
23
24
25
26
# File 'lib/facter/util/rbzip2-0.3.0/lib/rbzip2/java/compressor.rb', line 20

def putc(int)
  if int.is_a? Numeric
    write int & 0xff
  else
    write int.to_s[0]
  end
end

#puts(line) ⇒ Object



28
29
30
# File 'lib/facter/util/rbzip2-0.3.0/lib/rbzip2/java/compressor.rb', line 28

def puts(line)
  write line + $/
end

#write(bytes) ⇒ Object



32
33
34
35
36
# File 'lib/facter/util/rbzip2-0.3.0/lib/rbzip2/java/compressor.rb', line 32

def write(bytes)
  raise 'stream closed' if @io.nil?

  @io.write bytes.to_java_bytes
end