|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.google.gdata.data.AbstractExtension
com.google.gdata.data.ExtensionPoint
public class ExtensionPoint
Base class for GData data types that support hosting extensions.
For example, a calendar <atom:entry>
supports hosting
<gd:when>
.
The set of accepted extensions is defined within ExtensionManifest
.
Nested Class Summary | |
---|---|
class |
ExtensionPoint.CumulativeBlobHandler
Parser class for cumulative XML blobs. |
class |
ExtensionPoint.ExtensionHandler
ElementHandler implementation for handlers associated with an ExtensionPoint class. |
Constructor Summary | |
---|---|
ExtensionPoint()
Simple constructor to create a new (empty) ExtensionPoint. |
Method Summary | ||
---|---|---|
void |
addExtension(Extension ext)
Adds an extension object. |
|
void |
addRepeatingExtension(Extension ext)
Adds a repeating extension object. |
|
void |
declareExtensions(ExtensionProfile extProfile)
Declares the set of expected Extension types for an ExtensionPoint within the target extension profile. |
|
XmlBlob |
generateCumulativeXmlBlob(ExtensionProfile extProfile)
Generates an XML blob containing all recognized and unrecognized extensions. |
|
|
getExtension(java.lang.Class<T> extensionClass)
Retrieves a non-repeating extension or null if not present. |
|
java.util.Collection<Extension> |
getExtensions()
Returns an unmodifiable collection of non-repeating extensions in this ExtensionPoint. |
|
XmlParser.ElementHandler |
getHandler(ExtensionProfile p,
java.lang.String namespace,
java.lang.String localName,
org.xml.sax.Attributes attrs)
The default implementation uses the AttributesHandler to handle
parsing the extension. |
|
|
getRepeatingExtension(java.lang.Class<T> extensionClass)
Retrieves a repeating extension list (an empty list if not present). |
|
java.util.Collection<java.util.List<Extension>> |
getRepeatingExtensions()
Returns an unmodifiable collection of lists of repeating extensions in this ExtensionPoint. |
|
XmlBlob |
getXmlBlob()
Retrieves the XML blob containing arbitrary (unrecognized) extensions. |
|
|
hasExtension(java.lang.Class<T> extensionClass)
Returns whether the non-repeating extension is present. |
|
|
hasRepeatingExtension(java.lang.Class<T> extensionClass)
Returns whether the repeating extension is present. |
|
void |
parseCumulativeXmlBlob(XmlBlob blob,
ExtensionProfile extProfile,
java.lang.Class<? extends ExtensionPoint> extendedClass)
Reverses generateCumulativeXmlBlob(ExtensionProfile) . |
|
void |
removeExtension(java.lang.Class<? extends Extension> extensionClass)
Removes an extension object based on its class. |
|
void |
removeExtension(Extension ext)
Removes an extension object. |
|
void |
removeRepeatingExtension(Extension ext)
Removes a repeating extension object. |
|
void |
setExtension(Extension ext)
Sets an extension object. |
|
void |
setXmlBlob(XmlBlob xmlBlob)
Sets the XML blob containing arbitrary (unrecognized) extensions. |
|
void |
visit(ExtensionVisitor ev,
ExtensionPoint parent)
Visits the tree of extension data associated with this extension point instance using the specified ExtensionVisitor , starting at this
extension point. |
Methods inherited from class com.google.gdata.data.AbstractExtension |
---|
disableStrictValidation, enableStrictValidation, generate, getExtensionLocalName, getExtensionNamespace, isImmutable, isStrictValidation, setImmutable |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ExtensionPoint()
Method Detail |
---|
public void declareExtensions(ExtensionProfile extProfile)
extProfile
- the ExtensionProfile to initialize.public final <T extends Extension> boolean hasExtension(java.lang.Class<T> extensionClass)
public final <T extends Extension> boolean hasRepeatingExtension(java.lang.Class<T> extensionClass)
public <T extends Extension> T getExtension(java.lang.Class<T> extensionClass)
null
if not present.
public java.util.Collection<Extension> getExtensions()
public <T extends Extension> java.util.List<T> getRepeatingExtension(java.lang.Class<T> extensionClass)
public java.util.Collection<java.util.List<Extension>> getRepeatingExtensions()
public void addExtension(Extension ext)
public void setExtension(Extension ext)
public void addRepeatingExtension(Extension ext)
public void removeExtension(Extension ext)
public void removeExtension(java.lang.Class<? extends Extension> extensionClass)
public void removeRepeatingExtension(Extension ext)
public void visit(ExtensionVisitor ev, ExtensionPoint parent) throws ExtensionVisitor.StoppedException
ExtensionVisitor
, starting at this
extension point.
ev
- the extension visitor instance to use.parent
- the parent of this extension point (or null
if no
parent or unspecified.
ExtensionVisitor.StoppedException
public XmlBlob getXmlBlob()
public void setXmlBlob(XmlBlob xmlBlob)
public XmlBlob generateCumulativeXmlBlob(ExtensionProfile extProfile) throws java.io.IOException
java.io.IOException
public void parseCumulativeXmlBlob(XmlBlob blob, ExtensionProfile extProfile, java.lang.Class<? extends ExtensionPoint> extendedClass) throws java.io.IOException, ParseException
generateCumulativeXmlBlob(ExtensionProfile)
. This
operation overwrites the current contents of this extension point.
java.io.IOException
ParseException
public XmlParser.ElementHandler getHandler(ExtensionProfile p, java.lang.String namespace, java.lang.String localName, org.xml.sax.Attributes attrs) throws ParseException
AbstractExtension
AttributesHandler
to handle
parsing the extension.
getHandler
in interface Extension
getHandler
in class AbstractExtension
p
- extension profilenamespace
- extension namespacelocalName
- tag name, without the namespace prefixattrs
- tag attributes
ParseException
- when an unexpected tag or badly-formatted
XML is detected
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |