Class: FakeSNS::DeliverMessage

Inherits:
Object
  • Object
show all
Extended by:
Forwardable
Defined in:
lib/fake_sns/deliver_message.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options) ⇒ DeliverMessage

Returns a new instance of DeliverMessage.



17
18
19
20
21
22
# File 'lib/fake_sns/deliver_message.rb', line 17

def initialize(options)
  @subscription = options.fetch(:subscription)
  @message = options.fetch(:message)
  @request = options.fetch(:request)
  @config = options.fetch(:config)
end

Instance Attribute Details

#configObject (readonly)

Returns the value of attribute config.



13
14
15
# File 'lib/fake_sns/deliver_message.rb', line 13

def config
  @config
end

#messageObject (readonly)

Returns the value of attribute message.



13
14
15
# File 'lib/fake_sns/deliver_message.rb', line 13

def message
  @message
end

#requestObject (readonly)

Returns the value of attribute request.



13
14
15
# File 'lib/fake_sns/deliver_message.rb', line 13

def request
  @request
end

#subscriptionObject (readonly)

Returns the value of attribute subscription.



13
14
15
# File 'lib/fake_sns/deliver_message.rb', line 13

def subscription
  @subscription
end

Class Method Details

.call(options) ⇒ Object



9
10
11
# File 'lib/fake_sns/deliver_message.rb', line 9

def self.call(options)
  new(options).call
end

Instance Method Details

#callObject



24
25
26
27
28
29
30
31
# File 'lib/fake_sns/deliver_message.rb', line 24

def call
  method_name = protocol.gsub("-", "_")
  if protected_methods.map(&:to_s).include?(method_name)
    send(method_name)
  else
    raise InvalidParameterValue, "Protocol #{protocol} not supported"
  end
end