Sha256: dec49c08d38cec06a57b2729b3163e0e0cd028d10cb410fc32cefc99a4f2e9bf

Contents?: true

Size: 1.01 KB

Versions: 8

Compression:

Stored size: 1.01 KB

Contents

# encoding: UTF-8
#
# Copyright (c) 2010-2015 GoodData Corporation. All rights reserved.
# This source code is licensed under the BSD-style license found in the
# LICENSE file in the root directory of this source tree.

require 'aws-sdk'
require_relative 'base_middleware'

module GoodData
  module Bricks
    class AWSMiddleware < Bricks::Middleware
      def call(params)
        params = params.to_hash
        if params.key?('aws_client')
          puts 'Setting up AWS-S3 connection'
          raise 'Unable to connect to AWS. Parameter "aws_client" seems to be empty' unless params['aws_client']
          raise 'Unable to connect to AWS. Parameter "access_key_id" is missing' if params['aws_client']['access_key_id'].blank?
          raise 'Unable to connect to AWS. Parameter "secret_access_key" is missing' if params['aws_client']['secret_access_key'].blank?
          s3 = AWS::S3.new(params['aws_client'])
          params['aws_client']['s3_client'] = s3
        end
        @app.call(params)
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
gooddata-bricks-0.8.0 lib/gooddata/bricks/middleware/aws_middleware.rb
gooddata-bricks-0.7.0 lib/gooddata/bricks/middleware/aws_middleware.rb
gooddata-bricks-0.6.0 lib/gooddata/bricks/middleware/aws_middleware.rb
gooddata-bricks-0.5.0 lib/gooddata/bricks/middleware/aws_middleware.rb
gooddata-bricks-0.4.0 lib/gooddata/bricks/middleware/aws_middleware.rb
gooddata-bricks-0.3.0 lib/gooddata/bricks/middleware/aws_middleware.rb
gooddata-bricks-0.2.0 lib/gooddata/bricks/middleware/aws_middleware.rb
gooddata-bricks-0.1.0 lib/gooddata/bricks/middleware/aws_middleware.rb