class CardConnect::Service::BinRequest

Constants

FIELDS
REQUIRED_FIELDS

Attributes

errors[R]

Public Class Methods

new(attrs = {}) click to toggle source

Initializes a new BinGetRequest

@param attrs [Hash] @return CardConnect::BinGetRequest

# File lib/cardconnect/services/bin/bin_request.rb, line 17
def initialize(attrs = {})
  @errors = []
  set_attributes(attrs, FIELDS)
  validate_required_fields
end

Public Instance Methods

payload() click to toggle source

Builds the request payload

# File lib/cardconnect/services/bin/bin_request.rb, line 29
def payload
  "/#{merchid}/#{token}"
end
valid?() click to toggle source

Indicates that the request is valid once it is built.

# File lib/cardconnect/services/bin/bin_request.rb, line 24
def valid?
  errors.empty?
end

Private Instance Methods

validate_required_fields() click to toggle source
# File lib/cardconnect/services/bin/bin_request.rb, line 35
def validate_required_fields
  REQUIRED_FIELDS.each do |field|
    value = send(field)
    value.nil? || value.empty? ? errors.push("#{field.capitalize} is missing") : next
  end
end