Sha256: 10cb7d8e717f375194a156fdd9fb599f9c4645ad6017db151c968cc23ae3d104

Contents?: true

Size: 555 Bytes

Versions: 36

Compression:

Stored size: 555 Bytes

Contents

#
# Poller that consume internal AWS Events,
# like S3 notifications, CloudWatch events, etc.
#
# This poller's output message will be a list of hashes,
# each containing one event.
#
module Pheme
  module MessageType
    module AwsEvent
      extend ActiveSupport::Concern

      def get_content(body)
        body['Records']
      end

      def format
        :aws_event
      end

      def parse_aws_event(message_contents)
        RecursiveOpenStruct.new({ wrapper: message_contents }, recurse_over_arrays: true).wrapper
      end
    end
  end
end

Version data entries

36 entries across 36 versions & 1 rubygems

Version Path
pheme-4.1.0 lib/pheme/message_type/aws_event.rb
pheme-4.0.15 lib/pheme/message_type/aws_event.rb
pheme-4.0.14 lib/pheme/message_type/aws_event.rb
pheme-4.0.13 lib/pheme/message_type/aws_event.rb
pheme-4.0.12 lib/pheme/message_type/aws_event.rb
pheme-4.0.11 lib/pheme/message_type/aws_event.rb
pheme-4.0.10 lib/pheme/message_type/aws_event.rb
pheme-4.0.9 lib/pheme/message_type/aws_event.rb
pheme-4.0.8 lib/pheme/message_type/aws_event.rb
pheme-4.0.7 lib/pheme/message_type/aws_event.rb
pheme-4.0.6 lib/pheme/message_type/aws_event.rb
pheme-4.0.5 lib/pheme/message_type/aws_event.rb
pheme-4.0.3 lib/pheme/message_type/aws_event.rb
pheme-4.0.2 lib/pheme/message_type/aws_event.rb
pheme-4.0.1 lib/pheme/message_type/aws_event.rb
pheme-4.0.0 lib/pheme/message_type/aws_event.rb
pheme-3.4.0 lib/pheme/message_type/aws_event.rb
pheme-3.3.3 lib/pheme/message_type/aws_event.rb
pheme-3.3.2 lib/pheme/message_type/aws_event.rb
pheme-3.3.0 lib/pheme/message_type/aws_event.rb