Class: AddressBook
- Inherits:
-
Object
show all
- Defined in:
- lib/address_book/base.rb,
lib/address_book/gmail.rb,
lib/address_book/mailru.rb,
lib/address_book/yandex.rb,
lib/address_book/rambler.rb,
lib/address_book/version.rb
Defined Under Namespace
Classes: AuthenticationError, Base, Gmail, MailRu, Rambler, ServiceNotFound, Yandex
Constant Summary
collapse
- VERSION =
"0.1.1"
Class Attribute Summary collapse
Class Method Summary
collapse
Class Attribute Details
.domains ⇒ Object
Returns the value of attribute domains.
6
7
8
|
# File 'lib/address_book/base.rb', line 6
def domains
@domains
end
|
Class Method Details
.export(login, password) ⇒ Object
19
20
21
22
23
24
25
26
27
|
# File 'lib/address_book/base.rb', line 19
def export(login, password)
domain = extract_domain login
service = domains[domain]
if service
service.new(login, password).contacts
else
raise ServiceNotFound, "No service registered for #{domain.inspect} domain"
end
end
|
.extract_domain(login) ⇒ Object
15
16
17
|
# File 'lib/address_book/base.rb', line 15
def extract_domain(login)
login.split("@").last
end
|
.register_service(list, klass) ⇒ Object
8
9
10
11
12
13
|
# File 'lib/address_book/base.rb', line 8
def register_service(list, klass)
self.domains ||= {}
Array(list).each do |domain|
self.domains[domain] = klass
end
end
|