Sha256: 8cbecc4ec36e0e2214f6753462dc61739a6336eea754e3c8c6f21e55c2753bbc

Contents?: true

Size: 844 Bytes

Versions: 106

Compression:

Stored size: 844 Bytes

Contents

module Aws
  module Plugins
    # @api private
    class SQSQueueUrls < Seahorse::Client::Plugin

      class Handler < Seahorse::Client::Handler

        def call(context)
          if url = context.params[:queue_url]
            update_region(context, url)
            update_endpoint(context, url)
          end
          @handler.call(context)
        end

        def update_endpoint(context, url)
          context.http_request.endpoint = url
        end

        def update_region(context, url)
          if region = url.to_s.split('.')[1]
            context.config = context.config.dup
            context.config.region = region
            context.config.sigv4_region = region
          else
            raise ArgumentError, "invalid queue url `#{url}'"
          end
        end

      end

      handler(Handler)

    end
  end
end

Version data entries

106 entries across 106 versions & 1 rubygems

Version Path
aws-sdk-core-2.2.14 lib/aws-sdk-core/plugins/sqs_queue_urls.rb
aws-sdk-core-2.2.13 lib/aws-sdk-core/plugins/sqs_queue_urls.rb
aws-sdk-core-2.2.12 lib/aws-sdk-core/plugins/sqs_queue_urls.rb
aws-sdk-core-2.2.11 lib/aws-sdk-core/plugins/sqs_queue_urls.rb
aws-sdk-core-2.2.10 lib/aws-sdk-core/plugins/sqs_queue_urls.rb
aws-sdk-core-2.2.9 lib/aws-sdk-core/plugins/sqs_queue_urls.rb
aws-sdk-core-2.2.8 lib/aws-sdk-core/plugins/sqs_queue_urls.rb
aws-sdk-core-2.2.7 lib/aws-sdk-core/plugins/sqs_queue_urls.rb
aws-sdk-core-2.2.6 lib/aws-sdk-core/plugins/sqs_queue_urls.rb
aws-sdk-core-2.2.5 lib/aws-sdk-core/plugins/sqs_queue_urls.rb
aws-sdk-core-2.2.4 lib/aws-sdk-core/plugins/sqs_queue_urls.rb
aws-sdk-core-2.2.3 lib/aws-sdk-core/plugins/sqs_queue_urls.rb
aws-sdk-core-2.2.2 lib/aws-sdk-core/plugins/sqs_queue_urls.rb
aws-sdk-core-2.2.1 lib/aws-sdk-core/plugins/sqs_queue_urls.rb
aws-sdk-core-2.2.0 lib/aws-sdk-core/plugins/sqs_queue_urls.rb
aws-sdk-core-2.1.36 lib/aws-sdk-core/plugins/sqs_queue_urls.rb
aws-sdk-core-2.1.35 lib/aws-sdk-core/plugins/sqs_queue_urls.rb
aws-sdk-core-2.1.34 lib/aws-sdk-core/plugins/sqs_queue_urls.rb
aws-sdk-core-2.1.33 lib/aws-sdk-core/plugins/sqs_queue_urls.rb
aws-sdk-core-2.1.32 lib/aws-sdk-core/plugins/sqs_queue_urls.rb