Class: Ppl::Service::PostalAddress
- Inherits:
-
Object
- Object
- Ppl::Service::PostalAddress
- Defined in:
- lib/ppl/service/postal_address.rb
Instance Method Summary collapse
- #add(contact, address_id, options) ⇒ Object
- #move(contact, address_id, new_address_id) ⇒ Object
- #remove(contact, address_id) ⇒ Object
- #update(contact, address_id, options) ⇒ Object
Instance Method Details
#add(contact, address_id, options) ⇒ Object
4 5 6 7 8 9 |
# File 'lib/ppl/service/postal_address.rb', line 4 def add(contact, address_id, ) address = Ppl::Entity::PostalAddress.new address.id = address_id update_postal_address(contact, address, ) contact.postal_addresses << address end |
#move(contact, address_id, new_address_id) ⇒ Object
24 25 26 27 28 29 30 31 32 |
# File 'lib/ppl/service/postal_address.rb', line 24 def move(contact, address_id, new_address_id) address = require_address(contact, address_id) id_okay = contact.postal_addresses.select { |pa| pa.id == new_address_id }.empty? if id_okay address.id = new_address_id else raise "Address '#{new_address_id}' is already in use" end end |
#remove(contact, address_id) ⇒ Object
19 20 21 22 |
# File 'lib/ppl/service/postal_address.rb', line 19 def remove(contact, address_id) require_address(contact, address_id) contact.postal_addresses.reject! { |pa| pa.id == address_id } end |
#update(contact, address_id, options) ⇒ Object
11 12 13 14 15 16 17 |
# File 'lib/ppl/service/postal_address.rb', line 11 def update(contact, address_id, ) address = contact.postal_addresses.find { |p| p.id == address_id } update_postal_address(contact, address, ) if [:new_id] move(contact, address_id, [:new_id]) end end |