Sha256: 791a1a226bee52680915bfec84234fa27d13fc475e801a0c4d0762bc2e5e937d

Contents?: true

Size: 755 Bytes

Versions: 2

Compression:

Stored size: 755 Bytes

Contents

class SQS < Mapper
  #
  # Returns an array of resources.
  #
  def collect
    resources = []

    #
    # list_queues
    #
    @client.list_queues.each_with_index do |response, page|
      log(response.context.operation_name, page)

      response.queue_urls.each do |queue|
        log(response.context.operation_name, queue.downcase.split('/').last, page)

        # get_queue_attributes
        struct = OpenStruct.new(@client.get_queue_attributes({ queue_url: queue, attribute_names: ['All'] }).attributes.to_h)
        struct.type = 'queue'
        struct.arn = struct.QueueArn
        struct.policy = struct.Policy ? struct.delete_field('Policy').parse_policy : nil

        resources.push(struct.to_h)
      end
    end

    resources
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
aws_recon-0.2.27 lib/aws_recon/collectors/sqs.rb
aws_recon-0.2.26 lib/aws_recon/collectors/sqs.rb