class TinyNews::Feeds

Public Class Methods

new() click to toggle source
# File lib/tinynews/feeds.rb, line 9
def initialize
  @sources = TinyNews.sources_from_home
end

Public Instance Methods

generate(source_symbol) click to toggle source
# File lib/tinynews/feeds.rb, line 13
def generate source_symbol
  feeds = []
  case source_symbol
  when :all
    @sources.keys.each do |symbol|
      feeds << generate_feed_object_for( symbol )
    end
  when *@sources.keys
    feeds << generate_feed_object_for( source_symbol )
  else
    source_unavailable source_symbol
  end
  feeds
end

Private Instance Methods

generate_feed_object_for(feed_symbol) click to toggle source
# File lib/tinynews/feeds.rb, line 34
def generate_feed_object_for feed_symbol
  source = @sources[feed_symbol]
  source == nil ? nil : Feed.new( source[:title], source[:url] )
end
source_unavailable(source_symbol) click to toggle source
# File lib/tinynews/feeds.rb, line 30
def source_unavailable source_symbol
  puts "Sorry, specified source: '#{source_symbol}' is unavailable"
end