class Dropmire::Identity

Public Class Methods

new(text) click to toggle source
# File lib/dropmire/identity.rb, line 5
def initialize(text)
  p = Parser.new(text)
  p.parse

  @attrs = p.attrs
end

Public Instance Methods

method_missing(method, *args, &block) click to toggle source
Calls superclass method
# File lib/dropmire/identity.rb, line 12
def method_missing(method, *args, &block)
  is_attr = attrs.fetch(method, nil)
  if is_attr.nil? && !(dl_id_values.include?(method))
    super
  else
    key = find_key_from_method(method)
    attrs[key]
  end
end

Private Instance Methods

attrs() click to toggle source
# File lib/dropmire/identity.rb, line 24
def attrs
  @attrs
end
dl_id_values() click to toggle source
# File lib/dropmire/identity.rb, line 28
def dl_id_values
  [:drivers_license_expiration_date, :drivers_license_iin,
   :drivers_license_number]
end
drivers_license_attrs() click to toggle source
# File lib/dropmire/identity.rb, line 46
def drivers_license_attrs
  %w(expiration_date iin )
end
find_key_from_method(method) click to toggle source
# File lib/dropmire/identity.rb, line 33
def find_key_from_method(method)
  case method.to_s
  when 'drivers_license_expiration_date'
    :expiration_date
  when 'drivers_license_iin'
    :iin
  when 'drivers_license_number'
    :license_num
  else
    method
  end
end