method
append_features
v2_1_10 -
Show latest stable
- Class:
RSS::Maker::DublinCoreModel
append_features(klass)public
No documentation available.
# File lib/rss/maker/dublincore.rb, line 7
def self.append_features(klass)
super
::RSS::DublinCoreModel::ELEMENT_NAME_INFOS.each do |name, plural_name|
plural_name ||= "#{name}s"
full_name = "#{RSS::DC_PREFIX}_#{name}"
full_plural_name = "#{RSS::DC_PREFIX}_#{plural_name}"
plural_klass_name = "DublinCore#{Utils.to_class_name(plural_name)}"
klass.def_classed_elements(full_name, "value", plural_klass_name,
full_plural_name, name)
klass.module_eval( def new_#{full_name}(value=nil) _#{full_name} = #{full_plural_name}.new_#{name} _#{full_name}.value = value if block_given? yield _#{full_name} else _#{full_name} end end, __FILE__, __LINE__ + 1)
end
klass.module_eval( # For backward compatibility alias #{DC_PREFIX}_rightses #{DC_PREFIX}_rights_list, __FILE__, __LINE__ + 1)
end