java.lang.Object
org.jboss.resteasy.plugins.providers.atom.CommonAttributes
org.jboss.resteasy.plugins.providers.atom.Entry

public class Entry extends CommonAttributes

Per RFC4287:

 The "atom:entry" element represents an individual entry, acting as a
 container for metadata and data associated with the entry.  This
 element can appear as a child of the atom:feed element, or it can
 appear as the document (i.e., top-level) element of a stand-alone
 Atom Entry Document.

 atomEntry =
    element atom:entry {
       atomCommonAttributes,
       (atomAuthor*
        & atomCategory*
        & atomContent?
        & atomContributor*
        & atomId
        & atomLink*
        & atomPublished?
        & atomRights?
        & atomSource?
        & atomSummary?
        & atomTitle
        & atomUpdated
        & extensionElement*)
    }

 This specification assigns no significance to the order of appearance
 of the child elements of atom:entry.

 The following child elements are defined by this specification (note
 that it requires the presence of some of these elements):

 o  atom:entry elements MUST contain one or more atom:author elements,
    unless the atom:entry contains an atom:source element that
    contains an atom:author element or, in an Atom Feed Document, the
    atom:feed element contains an atom:author element itself.
 o  atom:entry elements MAY contain any number of atom:category
    elements.
 o  atom:entry elements MUST NOT contain more than one atom:content
    element.
 o  atom:entry elements MAY contain any number of atom:contributor
    elements.
 o  atom:entry elements MUST contain exactly one atom:id element.
 o  atom:entry elements that contain no child atom:content element
    MUST contain at least one atom:link element with a rel attribute
    value of "alternate".
 o  atom:entry elements MUST NOT contain more than one atom:link
    element with a rel attribute value of "alternate" that has the
    same combination of type and hreflang attribute values.
 o  atom:entry elements MAY contain additional atom:link elements
    beyond those described above.
 o  atom:entry elements MUST NOT contain more than one atom:published
    element.
 o  atom:entry elements MUST NOT contain more than one atom:rights
    element.
 o  atom:entry elements MUST NOT contain more than one atom:source
    element.
 o  atom:entry elements MUST contain an atom:summary element in either
    of the following cases:
    *  the atom:entry contains an atom:content that has a "src"
       attribute (and is thus empty).
    *  the atom:entry contains content that is encoded in Base64;
       i.e., the "type" attribute of atom:content is a MIME media type
       [MIMEREG], but is not an XML media type [RFC3023], does not
       begin with "text/", and does not end with "/xml" or "+xml".
 o  atom:entry elements MUST NOT contain more than one atom:summary
    element.
 o  atom:entry elements MUST contain exactly one atom:title element.
 o  atom:entry elements MUST contain exactly one atom:updated element.
 
Version:
$Revision: 1 $
Author:
Bill Burke
  • Field Details

  • Constructor Details

    • Entry

      public Entry()
  • Method Details

    • setFinder

      protected void setFinder(JAXBContextFinder finder)
    • getId

      public URI getId()
    • setId

      public void setId(URI id)
    • getTitleElement

      public Text getTitleElement()
    • setTitleElement

      public void setTitleElement(Text title)
    • getTitle

      public String getTitle()
    • setTitle

      public void setTitle(String title)
    • getUpdated

      public Date getUpdated()
    • setUpdated

      public void setUpdated(Date updated)
    • getLinkByRel

      public Link getLinkByRel(String name)
    • getLinks

      public List<Link> getLinks()
    • getContent

      public Content getContent()
    • setContent

      public void setContent(Content content)
    • getAuthors

      public List<Person> getAuthors()
    • getCategories

      public List<Category> getCategories()
    • getContributors

      public List<Person> getContributors()
    • getPublished

      public Date getPublished()
    • setPublished

      public void setPublished(Date published)
    • getRightsElement

      public Text getRightsElement()
    • setRightsElement

      public void setRightsElement(Text rights)
    • getRights

      public String getRights()
    • setRights

      public void setRights(String rights)
    • getSource

      public Source getSource()
    • setSource

      public void setSource(Source source)
    • getSummaryElement

      public Text getSummaryElement()
    • setSummaryElement

      public void setSummaryElement(Text summary)
    • getSummary

      public String getSummary()
    • setSummary

      public void setSummary(String summary)
    • getAnyOtherElement

      public Element getAnyOtherElement()
      Get content as an XML Element if the content is XML. Otherwise, this will just return null.
      Returns:
      Element
    • getAnyOther

      public List<Object> getAnyOther()
    • getAnyOtherJAXBObject

      public <T> T getAnyOtherJAXBObject(Class<T> clazz, Class... otherPossibleClasses) throws jakarta.xml.bind.JAXBException
      Extract the content as the provided JAXB annotated type.

      This method will use a cached JAXBContext used by the Resteasy JAXB providers or, if those are not existent, it will create a new JAXBContext from scratch using the class.

      Type Parameters:
      T - type
      Parameters:
      clazz - class type you are expecting
      otherPossibleClasses - Other classe you want to create the JAXBContext with
      Returns:
      null if there is no XML content
      Throws:
      jakarta.xml.bind.JAXBException - jaxb exception
    • getAnyOtherJAXBObject

      public Object getAnyOtherJAXBObject()
      Returns previous extracted jaxbobject from a call to getJAXBObject(Class<T> clazz) or value passed in through a previous setJAXBObject().
      Returns:
      object
    • setAnyOtherJAXBObject

      public void setAnyOtherJAXBObject(Object obj)