Module: Awspec::BlackListForwardable

Included in:
ResourceReader, Type::Base
Defined in:
lib/awspec/resource_reader.rb

Defined Under Namespace

Classes: CalledMethodInBlackList

Instance Method Summary collapse

Instance Method Details

#method_missing_via_black_list(name, delegate_to: nil) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/awspec/resource_reader.rb', line 6

def method_missing_via_black_list(name, delegate_to: nil)
  fail(ArguementError, 'delegate_to: must be specified') unless delegate_to
  if match_black_list?(name)
    fail CalledMethodInBlackList, "Method call #{name.inspect} is black-listed"
  else
    attr = delegate_to.send(name)
    case attr
    when Aws::Resources::Resource
      ResourceReader.new(attr)
    else
      attr
    end
  end
end