Module: Multicard

Defined in:
lib/multicard.rb,
lib/multicard/client.rb,
lib/multicard/errors.rb,
lib/multicard/version.rb,
lib/multicard/response.rb,
lib/multicard/signature.rb,
lib/multicard/http_client.rb,
lib/multicard/configuration.rb,
lib/multicard/token_manager.rb,
lib/multicard/resources/base.rb,
lib/multicard/resources/cards.rb,
lib/multicard/resources/holds.rb,
lib/multicard/resources/payouts.rb,
lib/multicard/resources/invoices.rb,
lib/multicard/resources/payments.rb,
lib/multicard/resources/registry.rb

Defined Under Namespace

Modules: Resources Classes: AuthenticationError, CallbackTimeoutError, CardExpiredError, CardNotFoundError, Client, Configuration, DebitUnknownError, Error, HttpClient, InsufficientFundsError, InvalidFieldsError, NetworkError, NotFoundError, RateLimitError, Response, ServerError, Signature, TokenManager, ValidationError

Constant Summary collapse

ERROR_MAP =

Maps Multicard error codes to Ruby exception classes

{
  'ERROR_CARD_NOT_FOUND' => CardNotFoundError,
  'ERROR_INSUFFICIENT_FUNDS' => InsufficientFundsError,
  'ERROR_CARD_EXPIRED' => CardExpiredError,
  'ERROR_DEBIT_UNKNOWN' => DebitUnknownError,
  'ERROR_CALLBACK_TIMEOUT' => CallbackTimeoutError,
  'ERROR_FIELDS' => InvalidFieldsError
}.freeze
VERSION =
'0.2.0'

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.configurationObject (readonly)

Returns the value of attribute configuration.



21
22
23
# File 'lib/multicard.rb', line 21

def configuration
  @configuration
end

Class Method Details

.configure {|@configuration| ... } ⇒ Object

Configure the gem globally (optional — you can also pass config per-client).

Multicard.configure do |config|
  config.application_id = ENV["MULTICARD_APPLICATION_ID"]
  config.secret = ENV["MULTICARD_SECRET"]
  config.store_id = 123
end

Yields:



31
32
33
34
35
# File 'lib/multicard.rb', line 31

def configure
  @configuration = Configuration.new
  yield(@configuration) if block_given?
  @configuration
end

.reset_configuration!Object

Reset global configuration (useful in tests).



38
39
40
# File 'lib/multicard.rb', line 38

def reset_configuration!
  @configuration = nil
end