Class: Portage::Ucp::PostalAddress

Inherits:
Data
  • Object
show all
Defined in:
lib/portage/ucp/value_objects.rb

Overview

schemas/shopping/types/postal_address.json — every field optional, so a partial address (e.g. locality/region/country only, before a full street address is known) is still schema-conformant.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(extended_address: nil, street_address: nil, address_locality: nil, address_region: nil, address_country: nil, postal_code: nil, first_name: nil, last_name: nil, phone_number: nil) ⇒ PostalAddress

Returns a new instance of PostalAddress.



241
242
243
244
# File 'lib/portage/ucp/value_objects.rb', line 241

def initialize(extended_address: nil, street_address: nil, address_locality: nil, address_region: nil,
               address_country: nil, postal_code: nil, first_name: nil, last_name: nil, phone_number: nil)
  super
end

Instance Attribute Details

#address_countryObject (readonly)

Returns the value of attribute address_country

Returns:

  • (Object)

    the current value of address_country



239
240
241
# File 'lib/portage/ucp/value_objects.rb', line 239

def address_country
  @address_country
end

#address_localityObject (readonly)

Returns the value of attribute address_locality

Returns:

  • (Object)

    the current value of address_locality



239
240
241
# File 'lib/portage/ucp/value_objects.rb', line 239

def address_locality
  @address_locality
end

#address_regionObject (readonly)

Returns the value of attribute address_region

Returns:

  • (Object)

    the current value of address_region



239
240
241
# File 'lib/portage/ucp/value_objects.rb', line 239

def address_region
  @address_region
end

#extended_addressObject (readonly)

Returns the value of attribute extended_address

Returns:

  • (Object)

    the current value of extended_address



239
240
241
# File 'lib/portage/ucp/value_objects.rb', line 239

def extended_address
  @extended_address
end

#first_nameObject (readonly)

Returns the value of attribute first_name

Returns:

  • (Object)

    the current value of first_name



239
240
241
# File 'lib/portage/ucp/value_objects.rb', line 239

def first_name
  @first_name
end

#last_nameObject (readonly)

Returns the value of attribute last_name

Returns:

  • (Object)

    the current value of last_name



239
240
241
# File 'lib/portage/ucp/value_objects.rb', line 239

def last_name
  @last_name
end

#phone_numberObject (readonly)

Returns the value of attribute phone_number

Returns:

  • (Object)

    the current value of phone_number



239
240
241
# File 'lib/portage/ucp/value_objects.rb', line 239

def phone_number
  @phone_number
end

#postal_codeObject (readonly)

Returns the value of attribute postal_code

Returns:

  • (Object)

    the current value of postal_code



239
240
241
# File 'lib/portage/ucp/value_objects.rb', line 239

def postal_code
  @postal_code
end

#street_addressObject (readonly)

Returns the value of attribute street_address

Returns:

  • (Object)

    the current value of street_address



239
240
241
# File 'lib/portage/ucp/value_objects.rb', line 239

def street_address
  @street_address
end

Instance Method Details

#to_wire_hObject



246
247
248
249
250
251
# File 'lib/portage/ucp/value_objects.rb', line 246

def to_wire_h
  { "extended_address" => extended_address, "street_address" => street_address,
    "address_locality" => address_locality, "address_region" => address_region,
    "address_country" => address_country, "postal_code" => postal_code, "first_name" => first_name,
    "last_name" => last_name, "phone_number" => phone_number }.compact
end