Google Data APIs Client Library (1.41.1)



com.google.gdata.data
Class BaseFeed<F extends BaseFeed,E extends BaseEntry>

java.lang.Object
  extended by com.google.gdata.data.AbstractExtension
      extended by com.google.gdata.data.ExtensionPoint
          extended by com.google.gdata.data.Source
              extended by com.google.gdata.data.BaseFeed<F,E>
Type Parameters:
F - feed type associated with bound subtype
E - entry type associated with bound subtype
All Implemented Interfaces:
Extension, IAtom, IFeed, Kind.Adaptable, Kind.Adaptor
Direct Known Subclasses:
AbPageVariationFeed, AccountFeed, AclFeed, ActivityFeed, AttendeeFeed, BaseEventFeed, BaseHealthFeed, BlogCommentFeed, BlogFeed, BlogPostFeed, CalendarFeed, CaptionTrackFeed, CellFeed, ChannelFeed, CodeSearchFeed, CollectionFeed, CombinationFeed, CommentFeed, ComplaintFeed, ContactFeed, ContactFeed, ContactGroupFeed, CrawlIssuesFeed, DataFeed, DocumentExportFeed, EmailListFeed, EmailListRecipientFeed, ExperimentFeed, FavoriteFeed, FeatureFeed, Feed, FriendFeed, GenericFeed, GoogleBaseFeed, IssueCommentsFeed, IssuesFeed, KeywordsFeed, ListFeed, MailItemFeed, MediaFeed, MessageFeed, MessagesFeed, MetadataFeed, NicknameFeed, PlaylistFeed, PlaylistLinkFeed, PortfolioFeed, PositionFeed, PostCommentFeed, ProfileFeed, RatingFeed, RecordFeed, RevisionFeed, RevisionFeed, SectionFeed, SidewikiEntryFeed, SidewikiUserFeed, SiteFeed, SitemapsFeed, SitesFeed, SpreadsheetFeed, SubscriptionFeed, TableFeed, TransactionFeed, UserEventFeed, UserFeed, UserProfileFeed, VariationFeed, VersionFeed, VideoMessageFeed, VolumeFeed, WorksheetFeed

public abstract class BaseFeed<F extends BaseFeed,E extends BaseEntry>
extends Source
implements Kind.Adaptable, Kind.Adaptor, IFeed

The BaseFeed class is an abstract base class that represents a generic GData feed object, based primarily on the data model for an <atom:feed> element. It is extended to represent OpenSearch RSS channel elements, and also supports generalized extensibility using a defined ExtensionProfile and/or by stored extended data as an XmlBlob.

The BaseFeedClass is a generic class that is parameterized by the type of Entry that will be contained within the feed. The base class contains all the necessary parsing and generation code for feed extension data, but can be subclassed to create subtypes that contain convenience APIs for accessing extension elements and entries.

An instance can be initialized by parsing an Atom 1.0 feed from a Reader or by directly initializing its component elements. It can generate an XML representation of the feed to an XmlWriter in either Atom 1.0 or RSS 2.0 format.

Here is the Relax-NG schema that represents an Atom 1.0 feed:

 AtomFeed =
  element atom:feed {
    atomCommonAttributes,
    (atomAuthor*
     atomCategory*
     atomContributor*
     atomGenerator?
     atomIcon?
     atomId
     atomLink*
     atomLogo?
     atomRights?
     atomSubtitle?
     atomTitle
     atomUpdated
     extensionElement*),
     atomEntry*
   }
 
Because the Feed schema differs from the Source schema only by the presence of the entries, the Feed class derives its base property model and parsing/generation implementations from the Source class.

The BaseFeed class implements the Kind.Adaptable interface, meaning it is possible to create new Kind.Adaptor subtypes that defines a custom extension model (and associated convenience APIs) for a BaseFeed subtypes that use Atom/RSS extensions to extend the content model for a particular type of data.

An Kind.Adaptor subclass of BaseFeed should do the following:


Nested Class Summary
 class BaseFeed.FeedHandler
          <atom:feed> parser.
protected static class BaseFeed.FeedState
          The FeedState class provides a simple structure that encapsulates the attributes of an Atom feed that should be shared with a shallow copy if the feed is adapted to a more specific BaseFeed Kind.Adaptor subtypes.
 
Nested classes/interfaces inherited from class com.google.gdata.data.Source
Source.SourceHandler, Source.SourceState
 
Nested classes/interfaces inherited from class com.google.gdata.data.ExtensionPoint
ExtensionPoint.CumulativeBlobHandler, ExtensionPoint.ExtensionHandler
 
Nested classes/interfaces inherited from class com.google.gdata.data.AbstractExtension
AbstractExtension.AttributesHandler
 
Field Summary
protected  java.util.List<E> entries
          Feed entries.
protected  java.lang.Class<? extends E> entryClass
          Class used to construct new entry instance, initialized at construction.
protected  BaseFeed.FeedState feedState
          Basic state for this feed.
 
Fields inherited from class com.google.gdata.data.Source
srcState
 
Fields inherited from class com.google.gdata.data.ExtensionPoint
xmlBlob
 
Fields inherited from class com.google.gdata.data.AbstractExtension
localName, namespace
 
Constructor Summary
protected BaseFeed(java.lang.Class<? extends E> entryClass)
          Copy constructor that initializes a new BaseFeed instance to have identical contents to another instance, using a shared reference to the same BaseFeed.FeedState.
protected BaseFeed(java.lang.Class<? extends E> entryClass, BaseFeed<?,?> sourceFeed)
          Copy constructor that initializes a new BaseFeed instance to have identical contents to another instance, using a shared reference to the same BaseFeed.FeedState.
 
Method Summary
 void addAdaptor(Kind.Adaptor adaptor)
          Associates a new Kind.Adaptor with this Adaptable instance.
 E createEntry()
          Creates a new entry for the feed.
 void declareExtensions(ExtensionProfile extProfile)
          Declares the set of expected Extension types for an ExtensionPoint within the target extension profile.
 void generate(com.google.gdata.util.common.xml.XmlWriter w, ExtensionProfile p)
          Generates an XML representation for the extension.
 void generateAtom(com.google.gdata.util.common.xml.XmlWriter w, ExtensionProfile extProfile)
          Generates XML in the Atom format.
 void generateFeedEnd(com.google.gdata.util.common.xml.XmlWriter w)
          Closes everything that was opened by generateFeedStart(com.google.gdata.data.ExtensionProfile, com.google.gdata.util.common.xml.XmlWriter, java.util.Collection).
 void generateFeedStart(ExtensionProfile extProfile, com.google.gdata.util.common.xml.XmlWriter w, java.util.Collection<com.google.gdata.util.common.xml.XmlNamespace> namespaces)
          Generates everything that's in the feed up to and not including the entries.
 void generateRss(com.google.gdata.util.common.xml.XmlWriter w, ExtensionProfile extProfile)
          Generates XML in the RSS format.
 BaseFeed<?,?> getAdaptedFeed()
          Locates and returns the most specific Kind.Adaptor feed subtype for this feed.
<A extends Kind.Adaptor>
A
getAdaptor(java.lang.Class<A> adaptorClass)
          Returns a Kind.Adaptor instance associated with this Adaptable instance of the specified type, or {code null} if none is available..
 java.util.Collection<Kind.Adaptor> getAdaptors()
          Returns the collection of Kind.Adaptor instances associated with the this Adaptable instance.
 boolean getCanPost()
          Gets the property that indicates if it is possible to post new entries to the feed.
 java.util.List<E> getEntries()
          Returns the list of entries in this feed
<T extends BaseEntry>
java.util.List<T>
getEntries(java.lang.Class<T> returnClass)
          Gets a list of entries of a particular kind.
 Link getEntryPostLink()
          Returns the entry post link for the feed.
 java.lang.String getEtag()
          Returns the current entity tag value for this feed.
 Link getFeedBatchLink()
          Returns the link that provides the URI that can be used to batch operations to query, insert, update and delete entries on this feed.
 XmlParser.ElementHandler getHandler(ExtensionProfile p, java.lang.String namespace, java.lang.String localName, org.xml.sax.Attributes attrs)
          The default implementation uses the AbstractExtension.AttributesHandler to handle parsing the extension.
 int getItemsPerPage()
          Gets the number of items that will be returned per page for paged feeds.
 java.lang.String getKind()
          Returns the current gd:kind attribute value for this feed.
 Link getNextLink()
          Returns the link that provides the URI of next page in a paged feed.
 Link getPreviousLink()
          Returns the link that provides the URI of previous page in a paged feed.
 java.lang.String getSelectedFields()
          Returns the current fields selection for this partial feed.
 F getSelf()
          Returns the current representation of the feed by requesting it from the associated service using the feed's self link.
 Link getSelfLink()
          Returns the self link for the feed.
 Service getService()
          Returns that GData Service instance associated with this feed.
 int getStartIndex()
          Gets the starting index of the contained entries for paged feeds.
 int getTotalResults()
          Gets the total number of results associated with this feed.
 java.lang.String getVersionId()
          Returns the entity version for this feed.
<T extends E>
T
insert(T newEntry)
          Inserts a new Entry into the feed, if the feed is currently associated with a Service.
 void parseAtom(ExtensionProfile extProfile, java.io.InputStream input)
          Parses XML in the Atom format.
 void parseAtom(ExtensionProfile extProfile, java.io.Reader reader)
          Parses XML in the Atom format.
 void parseAtom(ExtensionProfile extProfile, XmlEventSource source)
          Parses XML in the Atom format from a parser-defined content source.
static BaseFeed<?,?> readFeed(ParseSource source)
          Reads a feed representation from the provided ParseSource.
static
<F extends BaseFeed>
F
readFeed(ParseSource source, java.lang.Class<F> feedClass, ExtensionProfile extProfile)
          This method provides the base implementation of feed reading using either static or dynamic typing.
 void setCanPost(boolean v)
          Sets the property that indicates if it is possible to post new entries to the feed.
 void setEntries(java.util.List<E> entryList)
          Sets the list to use for storing the entry list
 void setEtag(java.lang.String v)
          Sets the current entity tag value for this feed.
 void setItemsPerPage(int v)
          Sets the number of items that will be returned per page for paged feeds.
 void setKind(java.lang.String v)
          Sets the current gd:kind attribute value for this feed.
 void setSelectedFields(java.lang.String fields)
          Sets the current fields selection for this partial feed.
 void setService(Service v)
          Sets that GData Service instance associated with this feed.
 void setStartIndex(int v)
          Sets the starting index of the contained entries for paged feeds.
 void setTotalResults(int v)
          Sets the total number of results associated with this feed.
 void setVersionId(java.lang.String v)
          Sets the entity version for this feed.
protected  void visitChildren(ExtensionVisitor ev)
          Called to visit all children of this extension point.
 
Methods inherited from class com.google.gdata.data.Source
addHtmlLink, addLink, addLink, generateInnerAtom, getAuthors, getCategories, getContributors, getGenerator, getHtmlLink, getIcon, getId, getLink, getLinks, getLinks, getLogo, getRights, getSubtitle, getTitle, getUpdated, removeLinks, removeLinks, setGenerator, setGenerator, setIcon, setId, setLogo, setRights, setSubtitle, setTitle, setUpdated
 
Methods inherited from class com.google.gdata.data.ExtensionPoint
addExtension, addExtension, addRepeatingExtension, addRepeatingExtension, checkRequiredExtensions, createExtensionInstance, generate, generateCumulativeXmlBlob, generateExtensions, generateStartElement, getExtension, getExtensionDescription, getExtensionHandler, getExtensions, getManifest, getRepeatingExtension, getRepeatingExtensions, getXmlBlob, hasExtension, hasRepeatingExtension, initializeArbitraryXml, parseCumulativeXmlBlob, removeExtension, removeExtension, removeRepeatingExtension, setExtension, setXmlBlob, visit, visitChild
 
Methods inherited from class com.google.gdata.data.AbstractExtension
consumeAttributes, disableStrictValidation, enableStrictValidation, eq, generateAttributes, getExtensionLocalName, getExtensionNamespace, isImmutable, isStrictValidation, putAttributes, sameClassAs, setImmutable, throwExceptionForMissingAttribute, throwExceptionIfImmutable, validate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.google.gdata.data.IFeed
getGenerator, getLogo, getSubtitle, setGenerator, setLogo
 
Methods inherited from interface com.google.gdata.data.IAtom
addLink, getAuthors, getCategories, getId, getLink, getLinks, getTitle, getUpdated, removeLinks, removeLinks, setId, setUpdated
 

Field Detail

feedState

protected BaseFeed.FeedState feedState
Basic state for this feed. May be shared across multiple adapted instances associated with the same logical feed.


entryClass

protected java.lang.Class<? extends E extends BaseEntry> entryClass
Class used to construct new entry instance, initialized at construction.


entries

protected java.util.List<E extends BaseEntry> entries
Feed entries.

Constructor Detail

BaseFeed

protected BaseFeed(java.lang.Class<? extends E> entryClass)
Copy constructor that initializes a new BaseFeed instance to have identical contents to another instance, using a shared reference to the same BaseFeed.FeedState. Kind.Adaptor subclasses of BaseFeed can use this constructor to create adaptor instances of an entry that share state with the original.

Parameters:
entryClass - Class used to construct new Entry instances for the Feed.

BaseFeed

protected BaseFeed(java.lang.Class<? extends E> entryClass,
                   BaseFeed<?,?> sourceFeed)
Copy constructor that initializes a new BaseFeed instance to have identical contents to another instance, using a shared reference to the same BaseFeed.FeedState. Kind.Adaptor subclasses of BaseFeed can use this constructor to create adaptor instances of a feed that share state with the original.

Method Detail

declareExtensions

public void declareExtensions(ExtensionProfile extProfile)
Declares the set of expected Extension types for an ExtensionPoint within the target extension profile. The base implementation does not declare any extensions, but can be overridden by specific types of ExtensionPoints that always contain a well-defined set of extensions.

The implementation of this method for BaseFeed will declare any extensions associated with the contained entry type.

Specified by:
declareExtensions in interface Kind.Adaptor
Overrides:
declareExtensions in class ExtensionPoint
Parameters:
extProfile - the ExtensionProfile to initialize.
See Also:
ExtensionProfile.addDeclarations(Kind.Adaptor)

getService

public Service getService()
Returns that GData Service instance associated with this feed.


setService

public void setService(Service v)
Sets that GData Service instance associated with this feed.

Specified by:
setService in interface IAtom

getCanPost

public boolean getCanPost()
Gets the property that indicates if it is possible to post new entries to the feed.

Specified by:
getCanPost in interface IFeed

setCanPost

public void setCanPost(boolean v)
Sets the property that indicates if it is possible to post new entries to the feed.

Specified by:
setCanPost in interface IFeed

setVersionId

public void setVersionId(java.lang.String v)
Sets the entity version for this feed. This value will be used to compute a weak etag for the feed. If null the last modified date is used to generate the etag.

Specified by:
setVersionId in interface IAtom

getVersionId

public java.lang.String getVersionId()
Returns the entity version for this feed.

Specified by:
getVersionId in interface IAtom

getEtag

public java.lang.String getEtag()
Returns the current entity tag value for this feed. A value of null indicates the value is unknown.

Specified by:
getEtag in interface IAtom

setEtag

public void setEtag(java.lang.String v)
Sets the current entity tag value for this feed. A value of null indicates the value is unknown.

Specified by:
setEtag in interface IAtom

getSelectedFields

public java.lang.String getSelectedFields()
Returns the current fields selection for this partial feed. A value of null indicates the feed is not a partial feed.


setSelectedFields

public void setSelectedFields(java.lang.String fields)
Sets the current fields selection for this partial feed. A value of null indicates the feed is not a partial feed.


getKind

public java.lang.String getKind()
Returns the current gd:kind attribute value for this feed. A value of null indicates the value is unknown.

Specified by:
getKind in interface IAtom

setKind

public void setKind(java.lang.String v)
Sets the current gd:kind attribute value for this feed. A value of null indicates the value is unknown.

Specified by:
setKind in interface IAtom

getTotalResults

public int getTotalResults()
Gets the total number of results associated with this feed. The value may be larger than the number of contained entries for paged feeds. A value of Query.UNDEFINED indicates the total size is undefined.

Specified by:
getTotalResults in interface IFeed

setTotalResults

public void setTotalResults(int v)
Sets the total number of results associated with this feed. The value may be larger than the number of contained entries for paged feeds. A value of Query.UNDEFINED indicates the total size is undefined.

Specified by:
setTotalResults in interface IFeed

getStartIndex

public int getStartIndex()
Gets the starting index of the contained entries for paged feeds. A value of Query.UNDEFINED indicates the start index is undefined.

Specified by:
getStartIndex in interface IFeed

setStartIndex

public void setStartIndex(int v)
Sets the starting index of the contained entries for paged feeds. A value of Query.UNDEFINED indicates the start index is undefined.

Specified by:
setStartIndex in interface IFeed

getItemsPerPage

public int getItemsPerPage()
Gets the number of items that will be returned per page for paged feeds. A value of Query.UNDEFINED indicates the page item count is undefined.

Specified by:
getItemsPerPage in interface IFeed

setItemsPerPage

public void setItemsPerPage(int v)
Sets the number of items that will be returned per page for paged feeds. A value of Query.UNDEFINED indicates the page item count is undefined.

Specified by:
setItemsPerPage in interface IFeed

getEntries

public java.util.List<E> getEntries()
Returns the list of entries in this feed

Specified by:
getEntries in interface IFeed

setEntries

public void setEntries(java.util.List<E> entryList)
Sets the list to use for storing the entry list


addAdaptor

public void addAdaptor(Kind.Adaptor adaptor)
Description copied from interface: Kind.Adaptable
Associates a new Kind.Adaptor with this Adaptable instance.

Specified by:
addAdaptor in interface Kind.Adaptable

getAdaptors

public java.util.Collection<Kind.Adaptor> getAdaptors()
Description copied from interface: Kind.Adaptable
Returns the collection of Kind.Adaptor instances associated with the this Adaptable instance.

Specified by:
getAdaptors in interface Kind.Adaptable

getAdaptor

public <A extends Kind.Adaptor> A getAdaptor(java.lang.Class<A> adaptorClass)
Description copied from interface: Kind.Adaptable
Returns a Kind.Adaptor instance associated with this Adaptable instance of the specified type, or {code null} if none is available..

Specified by:
getAdaptor in interface Kind.Adaptable

createEntry

public E createEntry()
Creates a new entry for the feed.

Specified by:
createEntry in interface IFeed

getEntryPostLink

public Link getEntryPostLink()
Returns the entry post link for the feed.

Specified by:
getEntryPostLink in interface IFeed

getSelfLink

public Link getSelfLink()
Returns the self link for the feed.

Specified by:
getSelfLink in interface IAtom

getNextLink

public Link getNextLink()
Returns the link that provides the URI of next page in a paged feed.

Specified by:
getNextLink in interface IFeed
Returns:
Link that provides the URI of next page in a paged feed or null for none.

getPreviousLink

public Link getPreviousLink()
Returns the link that provides the URI of previous page in a paged feed.

Specified by:
getPreviousLink in interface IFeed
Returns:
Link that provides the URI of previous page in a paged feed or null for none.

getFeedBatchLink

public Link getFeedBatchLink()
Returns the link that provides the URI that can be used to batch operations to query, insert, update and delete entries on this feed.

Specified by:
getFeedBatchLink in interface IFeed
Returns:
Link that provides the URI that can be used to batch operations to query, insert, update and delete entries on this feed or null for none.

getSelf

public F getSelf()
                           throws java.io.IOException,
                                  ServiceException
Returns the current representation of the feed by requesting it from the associated service using the feed's self link.

Returns:
the current state of the feed.
Throws:
java.io.IOException
ServiceException

insert

public <T extends E> T insert(T newEntry)
                   throws ServiceException,
                          java.io.IOException
Inserts a new Entry into the feed, if the feed is currently associated with a Service.

Returns:
the inserted Entry returned by the Service.
Throws:
ServiceException - If there is no associated GData service or the service is unable to perform the insertion.
java.lang.UnsupportedOperationException - If insert is not supported for the target feed.
java.io.IOException - If there is an error communicating with the GData service.

visitChildren

protected void visitChildren(ExtensionVisitor ev)
                      throws ExtensionVisitor.StoppedException
Description copied from class: ExtensionPoint
Called to visit all children of this extension point.

Overrides:
visitChildren in class ExtensionPoint
Parameters:
ev - the extension visitor.
Throws:
ExtensionVisitor.StoppedException

generate

public void generate(com.google.gdata.util.common.xml.XmlWriter w,
                     ExtensionProfile p)
              throws java.io.IOException
Description copied from interface: Extension
Generates an XML representation for the extension.

Specified by:
generate in interface Extension
Overrides:
generate in class AbstractExtension
Parameters:
w - XML writer
p - extension profile
Throws:
java.io.IOException

generateAtom

public void generateAtom(com.google.gdata.util.common.xml.XmlWriter w,
                         ExtensionProfile extProfile)
                  throws java.io.IOException
Generates XML in the Atom format.

Overrides:
generateAtom in class Source
Parameters:
w - Output writer.
extProfile - Extension profile.
Throws:
java.io.IOException

generateFeedEnd

public void generateFeedEnd(com.google.gdata.util.common.xml.XmlWriter w)
                     throws java.io.IOException
Closes everything that was opened by generateFeedStart(com.google.gdata.data.ExtensionProfile, com.google.gdata.util.common.xml.XmlWriter, java.util.Collection).

Parameters:
w -
Throws:
java.io.IOException

generateFeedStart

public void generateFeedStart(ExtensionProfile extProfile,
                              com.google.gdata.util.common.xml.XmlWriter w,
                              java.util.Collection<com.google.gdata.util.common.xml.XmlNamespace> namespaces)
                       throws java.io.IOException
Generates everything that's in the feed up to and not including the entries. The idea is to use generateFeedStart(), write the entries, and then call generateFeedEnd(com.google.gdata.util.common.xml.XmlWriter) to avoid having to add entries to a list and keep them in memory.

Parameters:
extProfile -
w -
namespaces - extra namespace declarations
Throws:
java.io.IOException

generateRss

public void generateRss(com.google.gdata.util.common.xml.XmlWriter w,
                        ExtensionProfile extProfile)
                 throws java.io.IOException
Generates XML in the RSS format.

Parameters:
w - Output writer.
extProfile - Extension profile.
Throws:
java.io.IOException

readFeed

public static BaseFeed<?,?> readFeed(ParseSource source)
                              throws java.io.IOException,
                                     ParseException,
                                     ServiceException
Reads a feed representation from the provided ParseSource. The return type of the feed will be determined using dynamic adaptation based upon any Kind category tag found in the input content. If no kind tag is found a Feed instance will be returned.

Throws:
java.io.IOException
ParseException
ServiceException

readFeed

public static <F extends BaseFeed> F readFeed(ParseSource source,
                                              java.lang.Class<F> feedClass,
                                              ExtensionProfile extProfile)
                                   throws java.io.IOException,
                                          ParseException,
                                          ServiceException
This method provides the base implementation of feed reading using either static or dynamic typing. If feedClass is non-null, the method is guaranteed to return an instance of this type, otherwise adaptation will be used to determine the type. The source object may be either an InputStream, Reader, or XmlParser.

Throws:
java.io.IOException
ParseException
ServiceException

parseAtom

public void parseAtom(ExtensionProfile extProfile,
                      java.io.InputStream input)
               throws java.io.IOException,
                      ParseException
Parses XML in the Atom format.

Overrides:
parseAtom in class Source
Parameters:
extProfile - Extension profile.
input - XML input stream.
Throws:
java.io.IOException
ParseException

parseAtom

public void parseAtom(ExtensionProfile extProfile,
                      java.io.Reader reader)
               throws java.io.IOException,
                      ParseException
Parses XML in the Atom format.

Overrides:
parseAtom in class Source
Parameters:
extProfile - Extension profile.
reader - XML Reader. The caller is responsible for ensuring that the character encoding is correct.
Throws:
java.io.IOException
ParseException

parseAtom

public void parseAtom(ExtensionProfile extProfile,
                      XmlEventSource source)
               throws java.io.IOException,
                      ParseException
Parses XML in the Atom format from a parser-defined content source.

Parameters:
extProfile - Extension profile.
source - XML source.
Throws:
java.io.IOException
ParseException

getHandler

public XmlParser.ElementHandler getHandler(ExtensionProfile p,
                                           java.lang.String namespace,
                                           java.lang.String localName,
                                           org.xml.sax.Attributes attrs)
                                    throws ParseException
Description copied from class: AbstractExtension
The default implementation uses the AbstractExtension.AttributesHandler to handle parsing the extension.

Specified by:
getHandler in interface Extension
Overrides:
getHandler in class ExtensionPoint
Parameters:
p - extension profile
namespace - extension namespace
localName - tag name, without the namespace prefix
attrs - tag attributes
Returns:
an element handler
Throws:
ParseException - when an unexpected tag or badly-formatted XML is detected

getAdaptedFeed

public BaseFeed<?,?> getAdaptedFeed()
                             throws Kind.AdaptorException
Locates and returns the most specific Kind.Adaptor feed subtype for this feed. If none can be found for the current class, null will be returned.

Throws:
Kind.AdaptorException

getEntries

public <T extends BaseEntry> java.util.List<T> getEntries(java.lang.Class<T> returnClass)
Gets a list of entries of a particular kind.