summaryrefslogtreecommitdiffstats
path: root/lib/rss/maker.rb
diff options
context:
space:
mode:
authorkou <kou@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-03-17 10:13:25 +0000
committerkou <kou@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-03-17 10:13:25 +0000
commitc3adb681b3e5281044d5bebd91851fd9afea0b8a (patch)
tree847090e856c9901ab2cc19251c179b9b0985e65b /lib/rss/maker.rb
parent8c9c2f26929b0f077188546492d38dddaa966b9a (diff)
downloadruby-c3adb681b3e5281044d5bebd91851fd9afea0b8a.tar.gz
ruby-c3adb681b3e5281044d5bebd91851fd9afea0b8a.tar.xz
ruby-c3adb681b3e5281044d5bebd91851fd9afea0b8a.zip
* lib/rss, test/rss:
- supported Atom. - bumped version 0.1.6 to 0.1.7. * sample/rss/convert.rb: added new sample. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@12087 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/rss/maker.rb')
-rw-r--r--lib/rss/maker.rb19
1 files changed, 12 insertions, 7 deletions
diff --git a/lib/rss/maker.rb b/lib/rss/maker.rb
index 9ed799ac7..a47b55b67 100644
--- a/lib/rss/maker.rb
+++ b/lib/rss/maker.rb
@@ -1,14 +1,14 @@
require "rss/rss"
module RSS
-
module Maker
-
MAKERS = {}
-
+
class << self
def make(version, &block)
- maker(version).make(&block)
+ m = maker(version)
+ raise UnsupportedMakerVersionError.new(version) if m.nil?
+ m.make(&block)
end
def maker(version)
@@ -19,16 +19,21 @@ module RSS
MAKERS[version] = maker
end
- def filename_to_version(filename)
- File.basename(filename, ".*")
+ def versions
+ MAKERS.keys.uniq.sort
+ end
+
+ def makers
+ MAKERS.values.uniq
end
end
end
-
end
require "rss/maker/1.0"
require "rss/maker/2.0"
+require "rss/maker/feed"
+require "rss/maker/entry"
require "rss/maker/content"
require "rss/maker/dublincore"
require "rss/maker/syndication"