Class: RSS::Atom::Entry

Inherits:
Element show all
Includes:
CommonModel, DuplicateLinkChecker, DublinCoreModel, RootElementMixin
Defined in:
lib/rss/atom.rb,
lib/rss/dublincore/atom.rb

Overview

Defines a top-level Atom Entry element, used as the document element of a stand-alone Atom Entry Document. It has the following attributes:

  • author

  • category

  • categories

  • content

  • contributor

  • id

  • link

  • published

  • rights

  • source

  • summary

  • title

  • updated

Reference: validator.w3.org/feed/docs/rfc4287.html#element.entry]

Constant Summary

Constants included from DublinCoreModel

DublinCoreModel::DATE_ELEMENTS, DublinCoreModel::ELEMENTS, DublinCoreModel::ELEMENT_NAME_INFOS, DublinCoreModel::TEXT_ELEMENTS

Constants included from CommonModel

CommonModel::ELEMENTS, CommonModel::NSPOOL

Constants inherited from Element

Element::GET_ATTRIBUTES, Element::HAVE_CHILDREN_ELEMENTS, Element::INDENT, Element::MODELS, Element::MUST_CALL_VALIDATORS, Element::NEED_INITIALIZE_VARIABLES, Element::PLURAL_FORMS, Element::TO_ELEMENT_METHODS

Instance Attribute Summary

Attributes included from RootElementMixin

#encoding, #feed_subtype, #feed_type, #feed_version, #output_encoding, #standalone, #version

Attributes included from XMLStyleSheetMixin

#xml_stylesheets

Attributes inherited from Element

#do_validate, #parent

Instance Method Summary collapse

Methods included from BaseModel

#install_date_element, #install_have_child_element, #install_have_children_element, #install_text_element

Methods included from Utils

element_initialize_arguments?, get_file_and_line_from_caller, new_with_value_if_need, to_class_name

Methods included from BaseDublinCoreModel

#append_features

Methods included from DuplicateLinkChecker

#validate_duplicate_links

Methods included from CommonModel

append_features

Methods included from RootElementMixin

#feed_info, #to_atom, #to_feed, #to_rss, #to_xml

Methods inherited from Element

add_have_children_element, add_need_initialize_variable, add_plural_form, add_to_element_method, content_setup, #convert, #converter=, def_corresponded_attr_reader, def_corresponded_attr_writer, #full_name, get_attributes, have_children_elements, have_content?, #have_xml_content?, inherited, inherited_base, install_get_attribute, install_model, install_must_call_validator, install_ns, models, must_call_validators, #need_base64_encode?, need_initialize_variables, need_parent?, plural_forms, required_prefix, required_uri, #set_next_element, tag_name, #tag_name, to_element_methods, #to_s, #valid?, #validate, #validate_for_stream

Methods included from Utils::InheritedReader

#inherited_array_reader, #inherited_hash_reader, #inherited_reader

Constructor Details

#initialize(version = nil, encoding = nil, standalone = nil) ⇒ Entry

Creates a new Atom Entry element.



922
923
924
925
926
# File 'lib/rss/atom.rb', line 922

def initialize(version=nil, encoding=nil, standalone=nil)
  super("1.0", version, encoding, standalone)
  @feed_type = "atom"
  @feed_subtype = "entry"
end

Instance Method Details

#have_author?Boolean

Returns where there are any authors present or there is a source with an author.

Returns:

  • (Boolean)


941
942
943
944
# File 'lib/rss/atom.rb', line 941

def have_author?
  authors.any? {|author| !author.to_s.empty?} or
    (source and source.have_author?)
end

#itemsObject

Returns the Entry in an array.



929
930
931
# File 'lib/rss/atom.rb', line 929

def items
  [self]
end

#setup_maker(maker) ⇒ Object

Sets up the maker for constructing Entry elements.



934
935
936
937
# File 'lib/rss/atom.rb', line 934

def setup_maker(maker)
  maker = maker.maker if maker.respond_to?("maker")
  super(maker)
end