class S3Gzip::Writer

Attributes

bucket[R]
filename[R]

Public Class Methods

new(access_key_id, secret_access_key, bucket, filename) click to toggle source
# File lib/s3gzip/writer.rb, line 9
def initialize(access_key_id, secret_access_key, bucket, filename)

  @access_key_id = access_key_id
  @secret_access_key = secret_access_key
  @bucket = bucket
  @filename = filename
  
  s3 = AWS::S3.new(
    :access_key_id => access_key_id,
    :secret_access_key => secret_access_key
  )
  bucket = s3.buckets[bucket]
  s3_object = bucket.objects[filename]
  @io = S3io.open(s3_object, 'w') 
  @gzip_writer = Zlib::GzipWriter.new(@io)
end
open(*args) { |writer| ... } click to toggle source
# File lib/s3gzip/writer.rb, line 41
def self.open(*args)
  writer = new(*args)
  return writer unless block_given?
  yield writer
ensure
  writer.close if block_given?
end
write(access_key_id, secret_access_key, bucket, filename, value) click to toggle source
# File lib/s3gzip/writer.rb, line 49
def self.write(access_key_id, secret_access_key, bucket, filename, value)
  writer = new(access_key_id, secret_access_key, bucket, filename)
  writer.write(value)
  writer.close
end

Public Instance Methods

close() click to toggle source
# File lib/s3gzip/writer.rb, line 34
def close
  unless self.closed?
    @gzip_writer.close
    @io=nil
  end
end
closed?() click to toggle source
# File lib/s3gzip/writer.rb, line 26
def closed?
  not @gzip_writer.nil? and @gzip_writer.closed?
end
write(*args) click to toggle source
# File lib/s3gzip/writer.rb, line 30
def write(*args)
  @gzip_writer.write(*args)
end