Sha256: 03a9984fcfacd1acfa21bb6a1ba4c553e5b19f7ca0c9f049acc0a92394e697b6

Contents?: true

Size: 676 Bytes

Versions: 21

Compression:

Stored size: 676 Bytes

Contents

module AchClient
  class Abstract
      # Interface for storing company credentials used with a provider
    class CompanyInfo

      ##
      # @return [CompanyInfo] instance built from configuration values
      def self.build
        raise AbstractMethodError
      end

      ##
      # Build a hash to send to provider
      # @return [Hash] hash to send to provider
      def to_hash
        raise AbstractMethodError
      end

      private_class_method def self.build_from_config(args)
        self.new(
          args.map do |arg|
            {arg => self.to_s.deconstantize.constantize.send(arg)}
          end.reduce(&:merge)
        )
      end
    end
  end
end

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
ach_client-3.1.0 lib/ach_client/providers/abstract/company_info.rb
ach_client-3.0.0 lib/ach_client/providers/abstract/company_info.rb
ach_client-2.1.0 lib/ach_client/providers/abstract/company_info.rb
ach_client-2.0.0 lib/ach_client/providers/abstract/company_info.rb
ach_client-1.1.0 lib/ach_client/providers/abstract/company_info.rb
ach_client-1.0.3 lib/ach_client/providers/abstract/company_info.rb
ach_client-1.0.2 lib/ach_client/providers/abstract/company_info.rb
ach_client-1.0.1 lib/ach_client/providers/abstract/company_info.rb
ach_client-1.0.0 lib/ach_client/providers/abstract/company_info.rb
ach_client-0.7.0 lib/ach_client/providers/abstract/company_info.rb
ach_client-0.6.8 lib/ach_client/providers/abstract/company_info.rb
ach_client-0.6.7 lib/ach_client/providers/abstract/company_info.rb
ach_client-0.6.6 lib/ach_client/providers/abstract/company_info.rb
ach_client-0.6.5 lib/ach_client/providers/abstract/company_info.rb
ach_client-0.6.4 lib/ach_client/providers/abstract/company_info.rb
ach_client-0.6.3 lib/ach_client/providers/abstract/company_info.rb
ach_client-0.6.2 lib/ach_client/providers/abstract/company_info.rb
ach_client-0.6.1 lib/ach_client/providers/abstract/company_info.rb
ach_client-0.6.0 lib/ach_client/providers/abstract/company_info.rb
ach_client-0.5.2 lib/ach_client/providers/abstract/company_info.rb