Class: Ppl::Service::EmailAddress

Inherits:
Object
  • Object
show all
Defined in:
lib/ppl/service/email_address.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#storage=(value) ⇒ Object (writeonly)

Sets the attribute storage

Parameters:

  • value

    the value to set the attribute storage to.



4
5
6
# File 'lib/ppl/service/email_address.rb', line 4

def storage=(value)
  @storage = value
end

Instance Method Details

#add(contact, address, options) ⇒ Object



6
7
8
9
10
11
# File 'lib/ppl/service/email_address.rb', line 6

def add(contact, address, options)
  email_address = Ppl::Entity::EmailAddress.new(address)
  contact.email_addresses << email_address
  update_email_address(contact, email_address, options)
  @storage.save_contact(contact)
end

#remove(contact, address) ⇒ Object



19
20
21
22
23
24
# File 'lib/ppl/service/email_address.rb', line 19

def remove(contact, address)
  contact.email_addresses.select! do |email_address|
    email_address.address != address
  end
  @storage.save_contact(contact)
end

#update(contact, address, options) ⇒ Object



13
14
15
16
17
# File 'lib/ppl/service/email_address.rb', line 13

def update(contact, address, options)
  email_address = contact.email_addresses.find { |e| e.address == address }
  update_email_address(contact, email_address, options)
  @storage.save_contact(contact)
end