Sha256: 9e1110d41d90194545cb8d6df809a53c8fd7dccaa3e06477b96141b3b969aa11

Contents?: true

Size: 476 Bytes

Versions: 12

Compression:

Stored size: 476 Bytes

Contents

module Pay
  class Merchant < Pay::ApplicationRecord
    belongs_to :owner, polymorphic: true

    validates :processor, presence: true

    store_accessor :data, :onboarding_complete

    delegate_missing_to :pay_processor

    def self.pay_processor_for(name)
      "Pay::#{name.to_s.classify}::Merchant".constantize
    end

    def pay_processor
      return if processor.blank?
      @pay_processor ||= self.class.pay_processor_for(processor).new(self)
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
pay-3.0.24 app/models/pay/merchant.rb
pay-3.0.23 app/models/pay/merchant.rb
pay-3.0.22 app/models/pay/merchant.rb
pay-3.0.21 app/models/pay/merchant.rb
pay-3.0.20 app/models/pay/merchant.rb
pay-3.0.19 app/models/pay/merchant.rb
pay-3.0.18 app/models/pay/merchant.rb
pay-3.0.17 app/models/pay/merchant.rb
pay-3.0.16 app/models/pay/merchant.rb
pay-3.0.15 app/models/pay/merchant.rb
pay-3.0.14 app/models/pay/merchant.rb
pay-3.0.13 app/models/pay/merchant.rb