Class: OnlinePayments::SDK::CommunicatorConfiguration

Inherits:
EndpointConfiguration show all
Defined in:
lib/onlinepayments/sdk/communicator_configuration.rb

Overview

A CommunicatorConfiguration stores all data used to initialize an Communicator.

Constant Summary

Constants inherited from EndpointConfiguration

EndpointConfiguration::DEFAULT_CONNECT_TIMEOUT, EndpointConfiguration::DEFAULT_MAX_CONNECTIONS, EndpointConfiguration::DEFAULT_SOCKET_TIMEOUT

Instance Attribute Summary collapse

Attributes inherited from EndpointConfiguration

#connect_timeout, #integrator, #max_connections, #proxy_configuration, #shopping_cart_extension, #socket_timeout

Instance Method Summary collapse

Methods inherited from EndpointConfiguration

default_connect_timeout, default_max_connections, default_socket_timeout

Constructor Details

#initialize(properties: nil, api_endpoint: nil, api_key_id: nil, secret_api_key: nil, authorization_type: nil, connect_timeout: nil, socket_timeout: nil, max_connections: nil, proxy_configuration: nil, integrator: nil, shopping_cart_extension: nil) ⇒ CommunicatorConfiguration

Creates a new CommunicatorConfiguration instance.

If a properties object is given, it will be parsed like a hash in order to read these attributes. If a value is given in both the properties hash and as a separate parameter, the separate parameter will take precedence over the value in the properties.

Parameters:

  • properties (Hash) (defaults to: nil)

    hash that may contain any of the other parameters.

  • api_endpoint (String) (defaults to: nil)

    the base URL to the Online Payments platform.

  • api_key_id (String) (defaults to: nil)

    the identifier of the secret_api_key used to authenticate requests.

  • secret_api_key (String) (defaults to: nil)

    the key used to authenticate requests sent to the Online Payments platform.

  • authorization_type (String) (defaults to: nil)

    string describing the authorization protocol to follow.

  • connect_timeout (Integer) (defaults to: nil)

    the number of seconds before a connection attempt with the Online Payments platform times out.

  • socket_timeout (Integer) (defaults to: nil)

    the number of seconds before a timeout occurs when transmitting data to or from the Online Payments platform.

  • max_connections (Integer) (defaults to: nil)

    the number of connections with the Online Payments platform that are kept alive in the connection pool. These connections will be reused when possible.

  • proxy_configuration (OnlinePayments::SDK::ProxyConfiguration) (defaults to: nil)

    stores the URL to a proxy to be used in all communication, or nil if no proxy should be used.

  • integrator (String) (defaults to: nil)

    name of the integrator

  • shopping_cart_extension (OnlinePayments::SDK::Domain::ShoppingCartExtension) (defaults to: nil)

    stores shopping cart-related metadata.

See Also:



31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# File 'lib/onlinepayments/sdk/communicator_configuration.rb', line 31

def initialize(properties: nil, api_endpoint: nil, api_key_id: nil,
               secret_api_key: nil, authorization_type: nil,
               connect_timeout: nil, socket_timeout: nil,
               max_connections: nil, proxy_configuration: nil,
               integrator: nil, shopping_cart_extension: nil)
  if properties
    super(properties, 'onlinePayments.api')
    @authorization_type = properties['onlinePayments.api.authorizationType'] ?
                            DefaultImpl::AuthorizationType.get_authorization(properties['onlinePayments.api.authorizationType']) :
                            DefaultImpl::AuthorizationType::V1HMAC
  end
  @api_endpoint = api_endpoint if api_endpoint
  @api_key_id = api_key_id if api_key_id
  @secret_api_key = secret_api_key if secret_api_key
  @authorization_type = DefaultImpl::AuthorizationType.get_authorization(authorization_type) if authorization_type
  @connect_timeout = connect_timeout if connect_timeout
  @socket_timeout = socket_timeout if socket_timeout
  @max_connections = max_connections if max_connections
  @proxy_configuration = proxy_configuration if proxy_configuration
  @integrator = integrator if integrator
  @shopping_cart_extension = shopping_cart_extension if shopping_cart_extension
end

Instance Attribute Details

#api_endpointString

Base URL to the Online Payments platform

Returns:

  • (String)

    the current value of api_endpoint



9
10
11
# File 'lib/onlinepayments/sdk/communicator_configuration.rb', line 9

def api_endpoint
  @api_endpoint
end

#api_key_idString

Identifier of the secret_api_key used in authentication.

Returns:

  • (String)

    the current value of api_key_id



9
10
11
# File 'lib/onlinepayments/sdk/communicator_configuration.rb', line 9

def api_key_id
  @api_key_id
end

#authorization_typeString

String representing the authentication algorithm used

Returns:

  • (String)

    the current value of authorization_type



9
10
11
# File 'lib/onlinepayments/sdk/communicator_configuration.rb', line 9

def authorization_type
  @authorization_type
end

#secret_api_keyString

Secret key used in authentication

Returns:

  • (String)

    the current value of secret_api_key



9
10
11
# File 'lib/onlinepayments/sdk/communicator_configuration.rb', line 9

def secret_api_key
  @secret_api_key
end