class TopsConnect::Address

Constants

TYPES

Attributes

owner[R]

Public Class Methods

new(data, owner:) click to toggle source
Calls superclass method
# File lib/tops_connect/address.rb, line 25
def initialize(data, owner:)
  super(data)

  @owner = owner
end

Public Instance Methods

formatted()
Alias for: to_s
to_s() click to toggle source
# File lib/tops_connect/address.rb, line 35
def to_s
  lines = address_lines

  return if lines.empty?

  # Foreign addresses do not have City/State/Zip
  if @data['City'] && @data['State'] && @data['Zip']
    lines << "#{@data['City']}, #{@data['State']} #{@data['Zip']}"
  end

  lines.map(&:strip).join("\n")
end
Also aliased as: formatted
type() click to toggle source
# File lib/tops_connect/address.rb, line 31
def type
  @data['Type']['Name']
end

Protected Instance Methods

address_lines() click to toggle source
# File lib/tops_connect/address.rb, line 51
def address_lines
  lines = []

  if @data['AddressLine1'].match?(/[[:graph:]]/)
    lines << @data['AddressLine1']
  end

  if @data['AddressLine2'].match?(/[[:graph:]]/)
    lines << @data['AddressLine2']
  end

  lines
end