Class: SiteMaps::Adapters::AwsSdk::Config

Inherits:
Configuration show all
Defined in:
lib/site_maps/adapters/aws_sdk/config.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Configuration

attribute, attributes, #base_uri, #becomes, #fetch_sitemap_index_links, inherited, #local_sitemap_path, #remote_sitemap_directory, #to_h, #url

Constructor Details

#initialize(**options) ⇒ Config

Returns a new instance of Config.



13
14
15
16
17
18
# File 'lib/site_maps/adapters/aws_sdk/config.rb', line 13

def initialize(**options)
  defined_attrs = options.slice(*self.class.attributes.keys)
  super(**defined_attrs)

  @aws_extra_options = options.reject { |k, v| defined_attrs.key?(k) }
end

Instance Attribute Details

#aws_extra_optionsObject (readonly)

Returns the value of attribute aws_extra_options.



11
12
13
# File 'lib/site_maps/adapters/aws_sdk/config.rb', line 11

def aws_extra_options
  @aws_extra_options
end

Instance Method Details

#inspectObject Also known as: to_s



32
33
34
# File 'lib/site_maps/adapters/aws_sdk/config.rb', line 32

def inspect
  "#<#{self.class}:#{object_id} access_key_id=#{access_key_id.inspect} region=#{region.inspect} bucket=#{bucket.inspect}>"
end

#s3_bucketObject



20
21
22
# File 'lib/site_maps/adapters/aws_sdk/config.rb', line 20

def s3_bucket
  s3_resource.bucket(bucket)
end

#s3_resourceObject



24
25
26
27
28
29
30
# File 'lib/site_maps/adapters/aws_sdk/config.rb', line 24

def s3_resource
  @s3_resource ||= begin
    require "aws-sdk-s3"

    ::Aws::S3::Resource.new(s3_resource_options)
  end
end