Module: RSS::Maker

Defined in:
lib/rss/maker.rb,
lib/rss/maker/0.9.rb,
lib/rss/maker/1.0.rb,
lib/rss/maker/2.0.rb,
lib/rss/maker/atom.rb,
lib/rss/maker/base.rb,
lib/rss/maker/feed.rb,
lib/rss/maker/entry.rb,
lib/rss/maker/image.rb,
lib/rss/maker/slash.rb,
lib/rss/maker/itunes.rb,
lib/rss/maker/content.rb,
lib/rss/maker/taxonomy.rb,
lib/rss/maker/trackback.rb,
lib/rss/maker/dublincore.rb,
lib/rss/maker/syndication.rb

Defined Under Namespace

Modules: Atom, AtomCategory, AtomGenerator, AtomLink, AtomLogo, AtomPersonConstructBase, AtomPersons, AtomTextConstruct, AtomTextConstructBase, ContentModel, DublinCoreModel, ITunesBaseModel, ITunesChannelModel, ITunesItemModel, ImageFaviconModel, ImageItemModel, SetupDefaultDate, SlashModel, SyndicationModel, TaxonomyTopicModel, TaxonomyTopicsModel, TrackBackModel Classes: Base, ChannelBase, ImageBase, ItemsBase, RSS09, RSS10, RSS20, RSSBase, TextinputBase, XMLStyleSheets

Constant Summary collapse

MAKERS =
{}

Class Method Summary collapse

Class Method Details

.add_maker(version, normalized_version, maker) ⇒ Object



18
19
20
# File 'lib/rss/maker.rb', line 18

def add_maker(version, normalized_version, maker)
  MAKERS[version] = {:maker => maker, :version => normalized_version}
end

.make(version, &block) ⇒ Object



8
9
10
11
12
# File 'lib/rss/maker.rb', line 8

def make(version, &block)
  m = maker(version)
  raise UnsupportedMakerVersionError.new(version) if m.nil?
  m[:maker].make(m[:version], &block)
end

.maker(version) ⇒ Object



14
15
16
# File 'lib/rss/maker.rb', line 14

def maker(version)
  MAKERS[version]
end

.makersObject



26
27
28
# File 'lib/rss/maker.rb', line 26

def makers
  MAKERS.values.collect {|info| info[:maker]}.uniq
end

.versionsObject



22
23
24
# File 'lib/rss/maker.rb', line 22

def versions
  MAKERS.keys.uniq.sort
end