class DefraRuby::Aws::DeleteFileFromBucketService

Attributes

bucket[R]
dir[R]
file_name[R]

Public Class Methods

new(bucket, file_name, options) click to toggle source
# File lib/defra_ruby/aws/services/delete_file_from_bucket_service.rb, line 12
def initialize(bucket, file_name, options)
  @bucket = bucket
  @file_name = file_name
  @dir = options[:s3_directory]
end
run(bucket, file_name, options = {}) click to toggle source
# File lib/defra_ruby/aws/services/delete_file_from_bucket_service.rb, line 8
def self.run(bucket, file_name, options = {})
  new(bucket, file_name, options).run
end

Public Instance Methods

run() click to toggle source
# File lib/defra_ruby/aws/services/delete_file_from_bucket_service.rb, line 18
def run
  Response.new(response_exe)
end

Private Instance Methods

destination() click to toggle source
# File lib/defra_ruby/aws/services/delete_file_from_bucket_service.rb, line 34
def destination
  [*dir, file_name].compact.join("/")
end
response_exe() click to toggle source
# File lib/defra_ruby/aws/services/delete_file_from_bucket_service.rb, line 26
def response_exe
  lambda do
    delete_object_output = s3_bucket.object(destination).delete

    delete_object_output.request_charged.length.positive?
  end
end