Module: NewsStand

Defined in:
lib/news_stand.rb,
lib/news_stand/memory.rb,
lib/news_stand/version.rb,
lib/news_stand/validator.rb

Defined Under Namespace

Classes: InvalidAdapter, Memory, UnknownAdapter, Validator

Constant Summary collapse

VERSION =
"0.1.1"

Class Method Summary collapse

Class Method Details

.adapter_for(service) ⇒ Object

Raises:



14
15
16
17
# File 'lib/news_stand.rb', line 14

def self.adapter_for(service)
  raise UnknownAdapter unless adapters.keys.include?(service)
  adapters[service]
end

.adaptersObject



19
20
21
# File 'lib/news_stand.rb', line 19

def self.adapters
  @adapters ||= {}
end

.is_valid_adapter?(adapter) ⇒ Boolean

Returns:

  • (Boolean)


10
11
12
# File 'lib/news_stand.rb', line 10

def self.is_valid_adapter?(adapter)
  Validator.new(adapter).valid?
end

.register(service, adapter) ⇒ Object

Raises:



5
6
7
8
# File 'lib/news_stand.rb', line 5

def self.register(service, adapter)
  raise InvalidAdapter unless is_valid_adapter?(adapter)
  adapters[service] = adapter
end

.resetObject



23
24
25
# File 'lib/news_stand.rb', line 23

def self.reset
  @adapters = {}
end