Class: SNS
Overview
Collect SNS resources
Constant Summary
Constants inherited from Mapper
Mapper::SINGLE_REGION_SERVICES
Instance Method Summary collapse
-
#collect ⇒ Object
Returns an array of resources.
Methods inherited from Mapper
Constructor Details
This class inherits a constructor from Mapper
Instance Method Details
#collect ⇒ Object
Returns an array of resources.
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/aws_recon/collectors/sns.rb', line 10 def collect resources = [] # # list_topics # @client.list_topics.each_with_index do |response, page| log(response.context.operation_name, page) response.topics.each do |topic| log(response.context.operation_name, topic.topic_arn, page) # get_topic_attributes struct = OpenStruct.new(@client.get_topic_attributes({ topic_arn: topic.topic_arn }).attributes.to_h) struct.type = 'topic' struct.arn = topic.topic_arn struct.policy = struct.delete_field('Policy').parse_policy struct.effective_delivery_policy = struct.delete_field('EffectiveDeliveryPolicy').parse_policy struct.subscriptions = [] # list_subscriptions_by_topic @client.list_subscriptions_by_topic({ topic_arn: topic.topic_arn }).each_with_index do |response, page| log(response.context.operation_name, topic.topic_arn, page) response.subscriptions.each do |sub| struct.subscriptions.push(sub.to_h) end end resources.push(struct.to_h) end end resources end |