Sha256: 65b5b0f0794bb530cf62a0ec5bc2f7a8af2139a2c4c0dd074db7cea818e6d2b8
Contents?: true
Size: 870 Bytes
Versions: 2
Compression:
Stored size: 870 Bytes
Contents
require 'tinynews/feed' require 'yaml' module TinyNews class Feeds def initialize sources_file = File.open('sources.yml', 'r').read @sources = YAML::load( sources_file ) end 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 def source_unavailable source_symbol puts "Sorry, specified source: '#{source_symbol}' is unavailable" end def generate_feed_object_for feed_symbol source = @sources[feed_symbol] source == nil ? nil : Feed.new( source[:title], source[:url] ) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
tinynews-1.0.1 | lib/tinynews/feeds.rb |
tinynews-1.0.0 | lib/tinynews/feeds.rb |