class RabbitSwift::LargeObject::StaticLargeObject
Constants
- LIMIT_FILE_SIZE
- ORIGINAL_MD5SUM_META_NAME
Public Class Methods
is_over_default_limit_object_size(file_size)
click to toggle source
# File lib/rabbit_swift/large_object/static_large_object.rb, line 46 def self.is_over_default_limit_object_size(file_size) LIMIT_FILE_SIZE < file_size end
new(file_path, dest_container_path, split_file_path: nil, limit_file_size: LIMIT_FILE_SIZE)
click to toggle source
# File lib/rabbit_swift/large_object/static_large_object.rb, line 20 def initialize(file_path, dest_container_path, split_file_path: nil, limit_file_size: LIMIT_FILE_SIZE) @file_path = file_path @split_file_path = split_file_path @dest_container_path = dest_container_path @limit_file_size = limit_file_size end
Public Instance Methods
create_manifest_list(file_path_list)
click to toggle source
# File lib/rabbit_swift/large_object/static_large_object.rb, line 35 def create_manifest_list(file_path_list) manifest = [] file_path_list.each do |file_path| md5 = Digest::MD5.file(file_path).to_s manifest.push( {path: File.join(@dest_container_path, File.basename(file_path)), etag: md5, size_bytes: File.size(file_path)}) end JSON.generate(manifest) end
split()
click to toggle source
# File lib/rabbit_swift/large_object/static_large_object.rb, line 27 def split rabbit_file_split = RabbitFileSplit::Bytes.new(@file_path) #p @file_path #p @limit_file_size rabbit_file_split.split(@limit_file_size) rabbit_file_split end