Sha256: 589d2a7958f55ef6b9bb7cc1df2772f54143541334c8a327b4b43ec9a5263b13

Contents?: true

Size: 610 Bytes

Versions: 1

Compression:

Stored size: 610 Bytes

Contents

module Paymill
  module Request
    class Base
      attr_reader :info
      attr_accessor :response

      def initialize(info)
        @info = info
      end

      def perform
        raise AuthenticationError if Paymill.api_key.nil?
        connection.setup_https
        send_request

        validator.validated_data_for(response)
      end

      protected

      def send_request
        self.response = connection.request
      end

      def connection
        @connection ||= Connection.new(info)
      end

      def validator
        @validator ||= Validator.new(info)
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
paymill-0.4.0 lib/paymill/request/base.rb