class GpWebpay::Configuration
Attributes
cards_controller[RW]
configurations[RW]
mount_at[RW]
orders_controller[RW]
parent_controller[RW]
Public Class Methods
new()
click to toggle source
# File lib/gp_webpay/configuration.rb, line 5 def initialize @configurations = {} @parent_controller = 'AbstractController::Base' @mount_at = '/gp_webpay' @orders_controller = 'OrdersController' @cards_controller = 'CardsController' end
Public Instance Methods
[](config_name)
click to toggle source
# File lib/gp_webpay/configuration.rb, line 17 def [](config_name) return if config_name.blank? @configurations[config_name] || find_configuration_by_merchant_number(config_name) end
add_configuration(merchant_number:, default: false) { |configurations| ... }
click to toggle source
# File lib/gp_webpay/configuration.rb, line 30 def add_configuration(merchant_number:, default: false) @configurations[merchant_number] = MerchantConfig.new(merchant_number) yield(@configurations[merchant_number]) @configurations[:default] = @configurations[merchant_number] if default || !@configurations[:default] end
default()
click to toggle source
# File lib/gp_webpay/configuration.rb, line 13 def default @configurations[:default] end
find_configuration_by_merchant_number(merchant_number)
click to toggle source
# File lib/gp_webpay/configuration.rb, line 23 def find_configuration_by_merchant_number(merchant_number) config = @configurations.find { |_key, value| value.merchant_number.to_s == merchant_number.to_s } return nil if config.blank? config[-1] end
remove_configuration(merchant_number:)
click to toggle source
# File lib/gp_webpay/configuration.rb, line 36 def remove_configuration(merchant_number:) @configurations.delete(merchant_number) @configurations[:default] = @configurations[@configurations.keys[0]] end