Sha256: 0660a4623df6470c28ed29cfa7dad29c2138b448bfce3e1e19e6d0f25cafcc08

Contents?: true

Size: 839 Bytes

Versions: 5

Compression:

Stored size: 839 Bytes

Contents

module AwsPluralResourceMixin
  include AwsResourceMixin
  attr_reader :table

  # This sets up a class, AwsSomeResource::BackendFactory, that
  # provides a mechanism to create and use backends without
  # having to know which is selected.  This is mainly used for
  # unit testing.
  # TODO: DRY up.  This code exists in both the Singular and Plural mixins.
  # We'd like to put it in AwsResourceMixin, but included only sees the
  # directly-including class - we can't see second-order includers.
  def self.included(base)
    # Create a new class, whose body is simply to extend the
    # backend factory mixin
    resource_backend_factory_class = Class.new(Object) do
      extend AwsBackendFactoryMixin
    end
    # Name that class
    base.const_set('BackendFactory', resource_backend_factory_class)
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
inspec-2.1.81 lib/resource_support/aws/aws_plural_resource_mixin.rb
inspec-2.1.21 lib/resource_support/aws/aws_plural_resource_mixin.rb
inspec-2.1.10 lib/resource_support/aws/aws_plural_resource_mixin.rb
inspec-2.0.32 lib/resource_support/aws/aws_plural_resource_mixin.rb
inspec-2.0.17 lib/resource_support/aws/aws_plural_resource_mixin.rb