Class: RSS::Maker::Atom::Entry::Items::Item
Relationships & Source Files | |
Super Chains via Extension / Inclusion / Inheritance | |
Class Chain:
self,
ItemBase
|
|
Instance Chain:
self,
ItemBase
|
|
Inherits: |
ItemBase
|
Defined in: | lib/rss/maker/entry.rb |
Constant Summary
-
Authors =
# File 'lib/rss/maker/entry.rb', line 145Feed::Items::Item::Authors
-
Categories =
# File 'lib/rss/maker/entry.rb', line 144Feed::Items::Item::Categories
-
Content =
# File 'lib/rss/maker/entry.rb', line 151Feed::Items::Item::Content
-
Contributors =
# File 'lib/rss/maker/entry.rb', line 146Feed::Items::Item::Contributors
-
Description =
# File 'lib/rss/maker/entry.rb', line 149Feed::Items::Item::Description
-
Enclosure =
# File 'lib/rss/maker/entry.rb', line 142Feed::Items::Item::Enclosure
-
Guid =
# File 'lib/rss/maker/entry.rb', line 141Feed::Items::Item::Guid
-
Links =
# File 'lib/rss/maker/entry.rb', line 147Feed::Items::Item::Links
-
Rights =
# File 'lib/rss/maker/entry.rb', line 148Feed::Items::Item::Rights
-
Source =
# File 'lib/rss/maker/entry.rb', line 143Feed::Items::Item::Source
-
Title =
# File 'lib/rss/maker/entry.rb', line 150Feed::Items::Item::Title
Instance Attribute Summary
- #variable_is_set? ⇒ Boolean readonly private
Instance Method Summary
- #to_feed(entry)
- #_set_default_values private
- #not_set_required_variables private
- #required_variable_names private
- #variables private
Instance Attribute Details
#variable_is_set? ⇒ Boolean
(readonly, private)
[ GitHub ]
# File 'lib/rss/maker/entry.rb', line 87
def variable_is_set? super or ! .empty? end
Instance Method Details
#_set_default_values (private)
[ GitHub ]# File 'lib/rss/maker/entry.rb', line 102
def _set_default_values keep = { : => .to_a.dup, :contributors => contributors.to_a.dup, :categories => categories.to_a.dup, :id => id, :links => links.to_a.dup, :rights => @rights, :title => @title, :updated => updated, } .replace(@maker.channel. ) if keep[: ].empty? if keep[:contributors].empty? contributors.replace(@maker.channel.contributors) end if keep[:categories].empty? categories.replace(@maker.channel.categories) end self.id ||= link || @maker.channel.id links.replace(@maker.channel.links) if keep[:links].empty? unless keep[:rights].variable_is_set? @maker.channel.rights {|r| @rights = r} end unless keep[:title].variable_is_set? @maker.channel.title {|t| @title = t} end self.updated ||= @maker.channel.updated super ensure .replace(keep[: ]) contributors.replace(keep[:contributors]) categories.replace(keep[:categories]) links.replace(keep[:links]) self.id = keep[:id] @rights = keep[:rights] @title = keep[:title] self.updated = keep[:updated] end
#not_set_required_variables (private)
[ GitHub ]# File 'lib/rss/maker/entry.rb', line 91
def not_set_required_variables set_default_values do vars = super if .all? {|| ! .have_required_values?} vars << "author" end vars << "title" unless title {|t| t.have_required_values?} vars end end
#required_variable_names (private)
[ GitHub ]# File 'lib/rss/maker/entry.rb', line 79
def required_variable_names %w(id updated) end
#to_feed(entry)
[ GitHub ]# File 'lib/rss/maker/entry.rb', line 67
def to_feed(entry) set_default_values do setup_values(entry) entry.dc_dates.clear setup_other_elements(entry) unless have_required_values? raise NotSetError.new("maker.item", not_set_required_variables) end end end
#variables (private)
[ GitHub ]# File 'lib/rss/maker/entry.rb', line 83
def variables super + ["updated"] end