class Restforce::Bulk::Zipper
Attributes
content_type[RW]
files_mapping[RW]
Public Class Methods
new(files_mapping, content_type=:zip_xml)
click to toggle source
# File lib/restforce/bulk/zipper.rb, line 6 def initialize(files_mapping, content_type=:zip_xml) self.files_mapping = files_mapping self.content_type = content_type end
Public Instance Methods
zip()
click to toggle source
# File lib/restforce/bulk/zipper.rb, line 11 def zip ::Zip::File.open(output_filename, ::Zip::File::CREATE) do |zip_file| zip_file.get_output_stream('request.txt') do |io| io.write builder.create_request_txt(files_mapping) end files_mapping.each do |mapping| zip_file.add(mapping[:filename], mapping[:full_filename]) end end output_filename end
Protected Instance Methods
builder()
click to toggle source
# File lib/restforce/bulk/zipper.rb, line 27 def builder @builder ||= Restforce::Bulk::Builder.const_get(content_type.to_s.camelize).new('insert') end
output_filename()
click to toggle source
# File lib/restforce/bulk/zipper.rb, line 31 def output_filename @output_filename ||= "/tmp/#{SecureRandom.hex}.zip" end