Class: RSS::Atom::Feed
| Relationships & Source Files | |
| Namespace Children | |
| Classes: | |
| Super Chains via Extension / Inclusion / Inheritance | |
| Class Chain: | |
| Instance Chain: | |
| Inherits: | RSS::Element 
 | 
| Defined in: | lib/rss/atom.rb, lib/rss/dublincore/atom.rb | 
Overview
Defines the top-level element of an ::RSS::Atom Feed Document. It consists of a number of children Entry elements, and has the following attributes:
- 
author 
- 
categories 
- 
category 
- 
content 
- 
contributor 
- 
entries (aliased as items) 
- 
entry 
- 
generator 
- 
icon 
- 
id 
- 
link 
- 
logo 
- 
rights 
- 
subtitle 
- 
title 
- 
updated 
Reference: validator.w3.org/feed/docs/rfc4287.html#element.feed
Constant Summary
::RSS::Element - Inherited
  GET_ATTRIBUTES, HAVE_CHILDREN_ELEMENTS, INDENT, MODELS, MUST_CALL_VALIDATORS, NEED_INITIALIZE_VARIABLES, PLURAL_FORMS, TO_ELEMENT_METHODS
CommonModel - Included
  
  ::RSS::DublinCoreModel - Included
  
Class Attribute Summary
::RSS::Element - Inherited
Class Method Summary
- 
    
      .new(version = nil, encoding = nil, standalone = nil)  ⇒ Feed 
    
    constructor
    Creates a new ::RSS::Atomfeed.
::RSS::Element - Inherited
::RSS::Utils::InheritedReader - Extended
::RSS::BaseModel - Extended
::RSS::Utils - Included
| element_initialize_arguments? | This method is used inside of several different objects to determine if special behavior is needed in the constructor. | 
| get_file_and_line_from_caller | Returns an array of two elements: the filename where the calling method is located, and the line number where it is defined. | 
| h, | |
| html_escape | Takes a string  | 
| new_with_value_if_need | If  | 
| to_class_name | Given a  | 
Instance Attribute Summary
- 
    
      #have_author?  ⇒ Boolean 
    
    readonly
    Returns true if there are any authors for the feed or any of the Entrychild elements have an author.
- #have_required_elements? ⇒ Boolean readonly private
::RSS::RootElementMixin - Included
| #encoding, #feed_subtype, #feed_type, #feed_version, #output_encoding, #output_encoding=, #standalone, #version | 
::RSS::XMLStyleSheetMixin - Included
::RSS::Element - Inherited
Instance Method Summary
- #items
- #atom_validate(ignore_unknown_element, tags, uri) private
- #maker_target(maker) private
- #setup_maker_element(channel) private
- #setup_maker_elements(channel) private
DuplicateLinkChecker - Included
| #validate_duplicate_links | Checks if there are duplicate links with the same type and hreflang attributes that have an alternate (or empty) rel attribute. | 
::RSS::RootElementMixin - Included
| #feed_info, #initialize, #setup_maker, #to_atom, #to_feed, #to_rss, #to_xml, #maker_target, #ns_declarations, #same_feed_type?, #tag, #xmldecl | 
::RSS::XMLStyleSheetMixin - Included
::RSS::Element - Inherited
::RSS::SetupMaker - Included
| #setup_maker, #maker_target, #not_need_to_call_setup_maker_variables, #setup_maker_attributes, #setup_maker_element, #setup_maker_elements | 
::RSS::Utils - Included
| #element_initialize_arguments? | This method is used inside of several different objects to determine if special behavior is needed in the constructor. | 
| #get_file_and_line_from_caller | Returns an array of two elements: the filename where the calling method is located, and the line number where it is defined. | 
| #h, | |
| #html_escape | Takes a string  | 
| #new_with_value_if_need | If  | 
| #to_class_name | Given a  | 
Constructor Details
    .new(version = nil, encoding = nil, standalone = nil)  ⇒ Feed 
  
Creates a new ::RSS::Atom feed
# File 'lib/rss/atom.rb', line 313
def initialize(version=nil, encoding=nil, standalone=nil) super("1.0", version, encoding, standalone) @feed_type = "atom" @feed_subtype = "feed" end
Instance Attribute Details
    #have_author?  ⇒ Boolean  (readonly)
  
Returns true if there are any authors for the feed or any of the Feed::Entry child elements have an author
# File 'lib/rss/atom.rb', line 323
def .any? {|| !.to_s.empty?} or entries.any? {|entry| entry.(false)} end
    #have_required_elements?  ⇒ Boolean  (readonly, private)
  
  [ GitHub ]
# File 'lib/rss/atom.rb', line 336
def have_required_elements? super and end
Instance Method Details
#atom_validate(ignore_unknown_element, tags, uri) (private)
[ GitHub ]# File 'lib/rss/atom.rb', line 329
def atom_validate(ignore_unknown_element, , uri) unless raise MissingTagError.new("author", tag_name) end validate_duplicate_links(links) end
#items
[ GitHub ]# File 'lib/rss/atom.rb', line 319
alias_method :items, :entries
#maker_target(maker) (private)
[ GitHub ]# File 'lib/rss/atom.rb', line 340
def maker_target(maker) maker.channel end
#setup_maker_element(channel) (private)
[ GitHub ]# File 'lib/rss/atom.rb', line 344
def setup_maker_element(channel) prev_dc_dates = channel.dc_dates.to_a.dup super channel.about = id.content if id channel.dc_dates.replace(prev_dc_dates) end