class FakeAWS::S3::ObjectOnDisk

Public Class Methods

new(bucket_on_disk, key) click to toggle source
# File lib/fake_aws/s3/object_on_disk.rb, line 8
def initialize(bucket_on_disk, key)
  @bucket_on_disk = bucket_on_disk
  @key            = key
end

Public Instance Methods

exists?() click to toggle source
# File lib/fake_aws/s3/object_on_disk.rb, line 13
def exists?
  File.exists?(object_path)
end
metadata_path() click to toggle source
# File lib/fake_aws/s3/object_on_disk.rb, line 39
def metadata_path
  @metadata_path ||= "#{object_path}.metadata.json"
end
object_path() click to toggle source
# File lib/fake_aws/s3/object_on_disk.rb, line 35
def object_path
  @object_path ||= File.join(@bucket_on_disk.path, @key)
end
read_content() click to toggle source
# File lib/fake_aws/s3/object_on_disk.rb, line 23
def read_content
  File.new(object_path)
end
read_metadata() click to toggle source
# File lib/fake_aws/s3/object_on_disk.rb, line 27
def read_metadata
  if File.exists?(metadata_path)
    JSON.parse(File.read(metadata_path))
  else
    {}
  end
end
write(content, metadata) click to toggle source
# File lib/fake_aws/s3/object_on_disk.rb, line 17
def write(content, metadata)
  FileUtils.mkdir_p(File.dirname(object_path))
  File.write(object_path, content)
  File.write(metadata_path, metadata.to_json)
end