Class: AudioFeedManager::FeedRepository

Inherits:
Object
  • Object
show all
Defined in:
lib/audio_feed_manager/feed_repository.rb

Instance Method Summary collapse

Instance Method Details

#add(feed) ⇒ Object



9
10
11
# File 'lib/audio_feed_manager/feed_repository.rb', line 9

def add(feed)
  new_model_creator.create(feed, directory: feeds_directory, prefix: feeds_prefix)
end

#fetch(id) ⇒ Object



19
20
21
22
23
24
# File 'lib/audio_feed_manager/feed_repository.rb', line 19

def fetch(id)
  attrs = storage.read(id)
  Feed.new(attrs)
rescue FileNotFound
  raise FeedNotFound.for_id(id)
end

#listObject



13
14
15
16
17
# File 'lib/audio_feed_manager/feed_repository.rb', line 13

def list
  names = directory_lister.list(feeds_directory)
  ids = names.map{|name| "#{feeds_prefix}/#{name}"}
  ids.map {|id| fetch(id)}
end