Class | RSS::Maker::Atom::Entry::Items::Item |
In: |
lib/rss/maker/entry.rb
|
Parent: | ItemBase |
Guid | = | Feed::Items::Item::Guid |
Enclosure | = | Feed::Items::Item::Enclosure |
Source | = | Feed::Items::Item::Source |
Categories | = | Feed::Items::Item::Categories |
Authors | = | Feed::Items::Item::Authors |
Contributors | = | Feed::Items::Item::Contributors |
Links | = | Feed::Items::Item::Links |
Rights | = | Feed::Items::Item::Rights |
Description | = | Feed::Items::Item::Description |
Title | = | Feed::Items::Item::Title |
Content | = | Feed::Items::Item::Content |
# File lib/rss/maker/entry.rb, line 67 67: def to_feed(entry) 68: set_default_values do 69: setup_values(entry) 70: entry.dc_dates.clear 71: setup_other_elements(entry) 72: unless have_required_values? 73: raise NotSetError.new("maker.item", not_set_required_variables) 74: end 75: end 76: end
# File lib/rss/maker/entry.rb, line 102 102: def _set_default_values(&block) 103: keep = { 104: :authors => authors.to_a.dup, 105: :contributors => contributors.to_a.dup, 106: :categories => categories.to_a.dup, 107: :id => id, 108: :links => links.to_a.dup, 109: :rights => @rights, 110: :title => @title, 111: :updated => updated, 112: } 113: authors.replace(@maker.channel.authors) if keep[:authors].empty? 114: if keep[:contributors].empty? 115: contributors.replace(@maker.channel.contributors) 116: end 117: if keep[:categories].empty? 118: categories.replace(@maker.channel.categories) 119: end 120: self.id ||= link || @maker.channel.id 121: links.replace(@maker.channel.links) if keep[:links].empty? 122: unless keep[:rights].variable_is_set? 123: @maker.channel.rights {|r| @rights = r} 124: end 125: unless keep[:title].variable_is_set? 126: @maker.channel.title {|t| @title = t} 127: end 128: self.updated ||= @maker.channel.updated 129: super(&block) 130: ensure 131: authors.replace(keep[:authors]) 132: contributors.replace(keep[:contributors]) 133: categories.replace(keep[:categories]) 134: links.replace(keep[:links]) 135: self.id = keep[:id] 136: @rights = keep[:rights] 137: @title = keep[:title] 138: self.updated = keep[:prev_updated] 139: end
# File lib/rss/maker/entry.rb, line 91 91: def not_set_required_variables 92: set_default_values do 93: vars = super 94: if authors.all? {|author| !author.have_required_values?} 95: vars << "author" 96: end 97: vars << "title" unless title {|t| t.have_required_values?} 98: vars 99: end 100: end
# File lib/rss/maker/entry.rb, line 87 87: def variable_is_set? 88: super or !authors.empty? 89: end