org.apache.abdera.model
Interface Source

All Superinterfaces:
Base, java.lang.Cloneable, Element, ExtensibleElement, java.io.Serializable
All Known Subinterfaces:
Feed

public interface Source
extends ExtensibleElement

Per RFC4287:

  If an atom:entry is copied from one feed into another feed, then the
  source atom:feed's metadata (all child elements of atom:feed other
  than the atom:entry elements) MAY be preserved within the copied
  entry by adding an atom:source child element, if it is not already
  present in the entry, and including some or all of the source feed's
  Metadata elements as the atom:source element's children.  Such
  metadata SHOULD be preserved if the source atom:feed contains any of
  the child elements atom:author, atom:contributor, atom:rights, or
  atom:category and those child elements are not present in the source
  atom:entry.

  atomSource =
     element atom:source {
        atomCommonAttributes,
        (atomAuthor*
         & atomCategory*
         & atomContributor*
         & atomGenerator?
         & atomIcon?
         & atomId?
         & atomLink*
         & atomLogo?
         & atomRights?
         & atomSubtitle?
         & atomTitle?
         & atomUpdated?
         & extensionElement*)
     }

  The atom:source element is designed to allow the aggregation of
  entries from different feeds while retaining information about an
  entry's source feed.  For this reason, Atom Processors that are
  performing such aggregation SHOULD include at least the required
  feed-level Metadata elements (atom:id, atom:title, and atom:updated)
  in the atom:source element.
 


Method Summary
 void addAuthor(Person person)
          Adds an individual author to the entry
 Person addAuthor(java.lang.String name)
          Adds an author
 Person addAuthor(java.lang.String name, java.lang.String email, java.lang.String uri)
          Adds an author
 void addCategory(Category category)
          Adds an individual category to the entry
 Category addCategory(java.lang.String term)
          Adds a category to the feed
 Category addCategory(java.lang.String scheme, java.lang.String term, java.lang.String label)
          Adds a category to the feed
 void addContributor(Person person)
          Adds an individual contributor to this entry
 Person addContributor(java.lang.String name)
          Adds an author
 Person addContributor(java.lang.String name, java.lang.String email, java.lang.String uri)
          Adds a contributor
 void addLink(Link link)
          Adds an individual link to the entry
 Link addLink(java.lang.String href)
           
 Link addLink(java.lang.String href, java.lang.String rel)
           
 Link addLink(java.lang.String href, java.lang.String rel, java.lang.String type, java.lang.String title, java.lang.String hreflang, long length)
           
 Link getAlternateLink()
          Returns this entries first alternate link
 Person getAuthor()
          Returns the first author listed for the entry
 java.util.List<Person> getAuthors()
          Returns the complete set of authors listed for the entry
 java.util.List<Category> getCategories()
          Lists the complete set of categories listed for the entry
 java.util.List<Category> getCategories(java.lang.String scheme)
          Lists the complete set of categories using the specified scheme
 java.util.List<Person> getContributors()
          Lists the complete set of contributors for this entry
 Generator getGenerator()
          RFC4287: The "atom:generator" element's content identifies the agent used to generate a feed, for debugging and other purposes.
 java.net.URI getIcon()
          RFC4287: The "atom:icon" element's content is an IRI reference [RFC3987] that identifies an image that provides iconic visual identification for a feed...
 IRI getIconElement()
          RFC4287: The "atom:icon" element's content is an IRI reference [RFC3987] that identifies an image that provides iconic visual identification for a feed...
 java.net.URI getId()
          Returns the universally unique identifier for this feed
 IRI getIdElement()
          RFC4287: The "atom:id" element conveys a permanent, universally unique identifier for an entry or feed.
 Link getLink(java.lang.String rel)
          Returns the first link with the specified rel attribute value
 java.util.List<Link> getLinks()
          Lists the complete set of links for this entry
 java.util.List<Link> getLinks(java.lang.String rel)
          Lists the complete set of links using the specified rel attribute value
 java.net.URI getLogo()
          RFC4287: The "atom:logo" element's content is an IRI reference [RFC3987] that identifies an image that provides visual identification for a feed.
 IRI getLogoElement()
          RFC4287: The "atom:logo" element's content is an IRI reference [RFC3987] that identifies an image that provides visual identification for a feed.
 java.lang.String getRights()
          Returns the text of atom:rights
 Text getRightsElement()
          The rights element is typically used to convey a human readable copyright (e.g.
 Text.Type getRightsType()
          Returns the type of atom:rights
 Link getSelfLink()
          Returns the first link using the rel attribute value "self"
 java.lang.String getSubtitle()
          Returns the text value of atom:subtitle
 Text getSubtitleElement()
          RFC4287: The "atom:subtitle" element is a Text construct that conveys a human-readable description or subtitle for a feed.
 Text.Type getSubtitleType()
          Returns the atom:subtitle type
 java.lang.String getTitle()
          Returns the text of atom:title
 Text getTitleElement()
          RFC4287: The "atom:title" element is a Text construct that conveys a human-readable title for an entry or feed.
 Text.Type getTitleType()
          Returns the type of atom:title
 java.util.Date getUpdated()
           
 DateTime getUpdatedElement()
          RFC4287: The "atom:updated" element is a Date construct indicating the most recent instant in time when an entry or feed was modified in a way the publisher considers significant.
 java.lang.String getUpdatedString()
           
 void setGenerator(Generator generator)
          RFC4287: The "atom:generator" element's content identifies the agent used to generate a feed, for debugging and other purposes.
 Generator setGenerator(java.lang.String uri, java.lang.String version, java.lang.String value)
          RFC4287: The "atom:generator" element's content identifies the agent used to generate a feed, for debugging and other purposes.
 IRI setIcon(java.lang.String iri)
          RFC4287: The "atom:icon" element's content is an IRI reference [RFC3987] that identifies an image that provides iconic visual identification for a feed...
 void setIconElement(IRI iri)
          RFC4287: The "atom:icon" element's content is an IRI reference [RFC3987] that identifies an image that provides iconic visual identification for a feed...
 IRI setId(java.lang.String id)
          Sets the universally unique identifier for this feed
 IRI setId(java.lang.String id, boolean normalize)
          Sets the universally unique identifier for this feed
 void setIdElement(IRI id)
          RFC4287: The "atom:id" element conveys a permanent, universally unique identifier for an entry or feed.
 IRI setLogo(java.lang.String iri)
          RFC4287: The "atom:logo" element's content is an IRI reference [RFC3987] that identifies an image that provides visual identification for a feed.
 void setLogoElement(IRI iri)
          RFC4287: The "atom:logo" element's content is an IRI reference [RFC3987] that identifies an image that provides visual identification for a feed.
 Text setRights(Div value)
          Sets the value of the rights as @type="xhtml"
 Text setRights(java.lang.String value)
          Sets the value of the rights as @type="text"
 Text setRights(java.lang.String value, Text.Type type)
          Sets the value of the rights
 Text setRightsAsHtml(java.lang.String value)
          Sets the value of the rights as @type="html"
 Text setRightsAsXhtml(java.lang.String value)
          Sets the value of the rights as @type="xhtml"
 void setRightsElement(Text text)
          The rights element is typically used to convey a human readable copyright (e.g.
 Text setSubtitle(Div value)
          Sets the value of the subtitle as @type="xhtml"
 Text setSubtitle(java.lang.String value)
          Sets the value of the subtitle as @type="text"
 Text setSubtitle(java.lang.String value, Text.Type type)
          Sets the value of the subtitle
 Text setSubtitleAsHtml(java.lang.String value)
          Sets the value of the subtitle as @type="html"
 Text setSubtitleAsXhtml(java.lang.String value)
          Sets the value of the subtitle as @type="xhtml"
 void setSubtitleElement(Text text)
          RFC4287: The "atom:subtitle" element is a Text construct that conveys a human-readable description or subtitle for a feed.
 Text setTitle(Div value)
          Sets the value of the title as @type="xhtml"
 Text setTitle(java.lang.String value)
          Sets the value of the title as @type="text"
 Text setTitle(java.lang.String value, Text.Type type)
          Sets the value of the title
 Text setTitleAsHtml(java.lang.String value)
          Sets the value of the title as @type="html"
 Text setTitleAsXhtml(java.lang.String value)
          Sets the value of the title as @type="xhtml"
 void setTitleElement(Text text)
          RFC4287: The "atom:title" element is a Text construct that conveys a human-readable title for an entry or feed.
 DateTime setUpdated(java.util.Date value)
           
 DateTime setUpdated(java.lang.String value)
           
 void setUpdatedElement(DateTime dateTime)
          RFC4287: The "atom:updated" element is a Date construct indicating the most recent instant in time when an entry or feed was modified in a way the publisher considers significant.
 
Methods inherited from interface org.apache.abdera.model.ExtensibleElement
addExtension, addExtension, addExtension, addSimpleExtension, addSimpleExtension, getExtension, getExtension, getExtensions, getExtensions, getExtensions, getSimpleExtension, getSimpleExtension
 
Methods inherited from interface org.apache.abdera.model.Element
discard, getAttributes, getAttributeValue, getAttributeValue, getBaseUri, getDocument, getExtensionAttributes, getFirstChild, getFirstChild, getLanguage, getNextSibling, getNextSibling, getParentElement, getPreviousSibling, getPreviousSibling, getQName, getResolvedBaseUri, getText, removeAttribute, setAttributeValue, setAttributeValue, setBaseUri, setBaseUri, setLanguage, setParentElement, setText
 
Methods inherited from interface org.apache.abdera.model.Base
clone, getFactory, writeTo, writeTo
 

Method Detail

getAuthor

Person getAuthor()
Returns the first author listed for the entry


getAuthors

java.util.List<Person> getAuthors()
Returns the complete set of authors listed for the entry


addAuthor

void addAuthor(Person person)
Adds an individual author to the entry


addAuthor

Person addAuthor(java.lang.String name)
Adds an author


addAuthor

Person addAuthor(java.lang.String name,
                 java.lang.String email,
                 java.lang.String uri)
                 throws java.net.URISyntaxException
Adds an author

Throws:
java.net.URISyntaxException

getCategories

java.util.List<Category> getCategories()
Lists the complete set of categories listed for the entry


getCategories

java.util.List<Category> getCategories(java.lang.String scheme)
                                       throws java.net.URISyntaxException
Lists the complete set of categories using the specified scheme

Throws:
java.net.URISyntaxException

addCategory

void addCategory(Category category)
Adds an individual category to the entry


addCategory

Category addCategory(java.lang.String term)
Adds a category to the feed


addCategory

Category addCategory(java.lang.String scheme,
                     java.lang.String term,
                     java.lang.String label)
                     throws java.net.URISyntaxException
Adds a category to the feed

Throws:
java.net.URISyntaxException

getContributors

java.util.List<Person> getContributors()
Lists the complete set of contributors for this entry


addContributor

void addContributor(Person person)
Adds an individual contributor to this entry


addContributor

Person addContributor(java.lang.String name)
Adds an author


addContributor

Person addContributor(java.lang.String name,
                      java.lang.String email,
                      java.lang.String uri)
                      throws java.net.URISyntaxException
Adds a contributor

Throws:
java.net.URISyntaxException

getGenerator

Generator getGenerator()
RFC4287: The "atom:generator" element's content identifies the agent used to generate a feed, for debugging and other purposes.


setGenerator

void setGenerator(Generator generator)
RFC4287: The "atom:generator" element's content identifies the agent used to generate a feed, for debugging and other purposes.


setGenerator

Generator setGenerator(java.lang.String uri,
                       java.lang.String version,
                       java.lang.String value)
                       throws java.net.URISyntaxException
RFC4287: The "atom:generator" element's content identifies the agent used to generate a feed, for debugging and other purposes.

Throws:
java.net.URISyntaxException

getIconElement

IRI getIconElement()
RFC4287: The "atom:icon" element's content is an IRI reference [RFC3987] that identifies an image that provides iconic visual identification for a feed... The image SHOULD have an aspect ratio of one (horizontal) to one (vertical) and SHOULD be suitable for presentation at a small size.


setIconElement

void setIconElement(IRI iri)
RFC4287: The "atom:icon" element's content is an IRI reference [RFC3987] that identifies an image that provides iconic visual identification for a feed... The image SHOULD have an aspect ratio of one (horizontal) to one (vertical) and SHOULD be suitable for presentation at a small size.


setIcon

IRI setIcon(java.lang.String iri)
            throws java.net.URISyntaxException
RFC4287: The "atom:icon" element's content is an IRI reference [RFC3987] that identifies an image that provides iconic visual identification for a feed... The image SHOULD have an aspect ratio of one (horizontal) to one (vertical) and SHOULD be suitable for presentation at a small size.

Throws:
java.net.URISyntaxException

getIcon

java.net.URI getIcon()
                     throws java.net.URISyntaxException
RFC4287: The "atom:icon" element's content is an IRI reference [RFC3987] that identifies an image that provides iconic visual identification for a feed... The image SHOULD have an aspect ratio of one (horizontal) to one (vertical) and SHOULD be suitable for presentation at a small size.

Throws:
java.net.URISyntaxException

getIdElement

IRI getIdElement()
RFC4287: The "atom:id" element conveys a permanent, universally unique identifier for an entry or feed.


setIdElement

void setIdElement(IRI id)
RFC4287: The "atom:id" element conveys a permanent, universally unique identifier for an entry or feed.


getId

java.net.URI getId()
                   throws java.net.URISyntaxException
Returns the universally unique identifier for this feed

Throws:
java.net.URISyntaxException

setId

IRI setId(java.lang.String id)
          throws java.net.URISyntaxException
Sets the universally unique identifier for this feed

Throws:
java.net.URISyntaxException

setId

IRI setId(java.lang.String id,
          boolean normalize)
          throws java.net.URISyntaxException
Sets the universally unique identifier for this feed

Throws:
java.net.URISyntaxException

getLinks

java.util.List<Link> getLinks()
Lists the complete set of links for this entry


getLinks

java.util.List<Link> getLinks(java.lang.String rel)
Lists the complete set of links using the specified rel attribute value


addLink

void addLink(Link link)
Adds an individual link to the entry


addLink

Link addLink(java.lang.String href)
             throws java.net.URISyntaxException
Throws:
java.net.URISyntaxException

addLink

Link addLink(java.lang.String href,
             java.lang.String rel)
             throws java.net.URISyntaxException
Throws:
java.net.URISyntaxException

addLink

Link addLink(java.lang.String href,
             java.lang.String rel,
             java.lang.String type,
             java.lang.String title,
             java.lang.String hreflang,
             long length)
             throws java.net.URISyntaxException,
                    javax.activation.MimeTypeParseException
Throws:
java.net.URISyntaxException
javax.activation.MimeTypeParseException

getLogoElement

IRI getLogoElement()
RFC4287: The "atom:logo" element's content is an IRI reference [RFC3987] that identifies an image that provides visual identification for a feed. The image SHOULD have an aspect ratio of 2 (horizontal) to 1 (vertical).


setLogoElement

void setLogoElement(IRI iri)
RFC4287: The "atom:logo" element's content is an IRI reference [RFC3987] that identifies an image that provides visual identification for a feed. The image SHOULD have an aspect ratio of 2 (horizontal) to 1 (vertical).


setLogo

IRI setLogo(java.lang.String iri)
            throws java.net.URISyntaxException
RFC4287: The "atom:logo" element's content is an IRI reference [RFC3987] that identifies an image that provides visual identification for a feed. The image SHOULD have an aspect ratio of 2 (horizontal) to 1 (vertical).

Throws:
java.net.URISyntaxException

getLogo

java.net.URI getLogo()
                     throws java.net.URISyntaxException
RFC4287: The "atom:logo" element's content is an IRI reference [RFC3987] that identifies an image that provides visual identification for a feed. The image SHOULD have an aspect ratio of 2 (horizontal) to 1 (vertical).

Throws:
java.net.URISyntaxException

getRightsElement

Text getRightsElement()

The rights element is typically used to convey a human readable copyright (e.g. "<atom:rights>Copyright (c), 2006</atom:rights>).

RFC4287: The "atom:rights" element is a Text construct that conveys information about rights held in and over an entry or feed.


setRightsElement

void setRightsElement(Text text)

The rights element is typically used to convey a human readable copyright (e.g. "<atom:rights>Copyright (c), 2006</atom:rights>).

RFC4287: The "atom:rights" element is a Text construct that conveys information about rights held in and over an entry or feed.


setRights

Text setRights(java.lang.String value)
Sets the value of the rights as @type="text"


setRightsAsHtml

Text setRightsAsHtml(java.lang.String value)
Sets the value of the rights as @type="html"


setRightsAsXhtml

Text setRightsAsXhtml(java.lang.String value)
Sets the value of the rights as @type="xhtml"


setRights

Text setRights(java.lang.String value,
               Text.Type type)
Sets the value of the rights


setRights

Text setRights(Div value)
Sets the value of the rights as @type="xhtml"


getRights

java.lang.String getRights()
Returns the text of atom:rights


getRightsType

Text.Type getRightsType()
Returns the type of atom:rights


getSubtitleElement

Text getSubtitleElement()
RFC4287: The "atom:subtitle" element is a Text construct that conveys a human-readable description or subtitle for a feed.


setSubtitleElement

void setSubtitleElement(Text text)
RFC4287: The "atom:subtitle" element is a Text construct that conveys a human-readable description or subtitle for a feed.


setSubtitle

Text setSubtitle(java.lang.String value)
Sets the value of the subtitle as @type="text"


setSubtitleAsHtml

Text setSubtitleAsHtml(java.lang.String value)
Sets the value of the subtitle as @type="html"


setSubtitleAsXhtml

Text setSubtitleAsXhtml(java.lang.String value)
Sets the value of the subtitle as @type="xhtml"


setSubtitle

Text setSubtitle(java.lang.String value,
                 Text.Type type)
Sets the value of the subtitle


setSubtitle

Text setSubtitle(Div value)
Sets the value of the subtitle as @type="xhtml"


getSubtitle

java.lang.String getSubtitle()
Returns the text value of atom:subtitle


getSubtitleType

Text.Type getSubtitleType()
Returns the atom:subtitle type


getTitleElement

Text getTitleElement()
RFC4287: The "atom:title" element is a Text construct that conveys a human-readable title for an entry or feed.


setTitleElement

void setTitleElement(Text text)
RFC4287: The "atom:title" element is a Text construct that conveys a human-readable title for an entry or feed.


setTitle

Text setTitle(java.lang.String value)
Sets the value of the title as @type="text"


setTitleAsHtml

Text setTitleAsHtml(java.lang.String value)
Sets the value of the title as @type="html"


setTitleAsXhtml

Text setTitleAsXhtml(java.lang.String value)
Sets the value of the title as @type="xhtml"


setTitle

Text setTitle(java.lang.String value,
              Text.Type type)
Sets the value of the title


setTitle

Text setTitle(Div value)
Sets the value of the title as @type="xhtml"


getTitle

java.lang.String getTitle()
Returns the text of atom:title


getTitleType

Text.Type getTitleType()
Returns the type of atom:title


getUpdatedElement

DateTime getUpdatedElement()
RFC4287: The "atom:updated" element is a Date construct indicating the most recent instant in time when an entry or feed was modified in a way the publisher considers significant. Therefore, not all modifications necessarily result in a changed atom:updated value.


setUpdatedElement

void setUpdatedElement(DateTime dateTime)
RFC4287: The "atom:updated" element is a Date construct indicating the most recent instant in time when an entry or feed was modified in a way the publisher considers significant. Therefore, not all modifications necessarily result in a changed atom:updated value.


getUpdatedString

java.lang.String getUpdatedString()

getUpdated

java.util.Date getUpdated()

setUpdated

DateTime setUpdated(java.util.Date value)

setUpdated

DateTime setUpdated(java.lang.String value)

getLink

Link getLink(java.lang.String rel)
Returns the first link with the specified rel attribute value


getSelfLink

Link getSelfLink()
Returns the first link using the rel attribute value "self"


getAlternateLink

Link getAlternateLink()
Returns this entries first alternate link