XML:DB API

org.xmldb.api.sdk.modules
Class SimpleXMLResource

java.lang.Object
  extended byorg.xmldb.api.sdk.modules.BaseResource
      extended byorg.xmldb.api.sdk.modules.SimpleXMLResource
All Implemented Interfaces:
Resource, XMLResource
Direct Known Subclasses:
XMLResourceImpl

public abstract class SimpleXMLResource
extends BaseResource
implements XMLResource

Provides access to XML resources stored in the database. An XMLResource can be accessed either as text XML or via the DOM or SAX APIs.

The default behavior for getContent and setContent is to work with XML data as text so these methods work on String content.


Field Summary
 
Fields inherited from interface org.xmldb.api.modules.XMLResource
RESOURCE_TYPE
 
Constructor Summary
SimpleXMLResource(Collection parent, java.lang.String id, java.lang.String documentID)
          Create a new XMLResource without any content.
SimpleXMLResource(Collection parent, java.lang.String id, java.lang.String documentID, java.lang.String content)
          Create a fully initialized XMLResource
 
Method Summary
 java.lang.Object getContent()
          Retrieves the content from the resource.
 org.w3c.dom.Node getContentAsDOM()
          Returns the content of the Resource as a DOM Node.
 void getContentAsSAX(org.xml.sax.ContentHandler handler)
          Allows you to use a ContentHandler to parse the XML data from the database for use in an application.
 java.lang.String getDocumentId()
          Returns the ID for the parent document of this resource.
 java.lang.String getResourceType()
          Returns the resource type for this Resource.
 boolean getSAXFeature(java.lang.String feature)
          Returns current setting of a SAX feature that will be used when this XMLResource is used to produce SAX events (through the getContentAsSAX() method)
 void setContent(java.lang.Object value)
          Sets the content for this resource.
 void setContentAsDOM(org.w3c.dom.Node content)
          Sets the content of the Resource using a DOM Node as the source.
 org.xml.sax.ContentHandler setContentAsSAX()
          Sets the content of the Resource using a SAX ContentHandler.
 void setSAXFeature(java.lang.String feature, boolean value)
          Sets a SAX feature that will be used when this XMLResource is used to produce SAX events (through the getContentAsSAX() method)
 
Methods inherited from class org.xmldb.api.sdk.modules.BaseResource
getId, getParentCollection
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.xmldb.api.base.Resource
getId, getParentCollection
 

Constructor Detail

SimpleXMLResource

public SimpleXMLResource(Collection parent,
                         java.lang.String id,
                         java.lang.String documentID)
Create a new XMLResource without any content.


SimpleXMLResource

public SimpleXMLResource(Collection parent,
                         java.lang.String id,
                         java.lang.String documentID,
                         java.lang.String content)
Create a fully initialized XMLResource

Method Detail

getDocumentId

public java.lang.String getDocumentId()
                               throws XMLDBException
Returns the ID for the parent document of this resource.

Specified by:
getDocumentId in interface XMLResource
Returns:
the id for the parent document of this Resource or null if there is no parent document for this Resource.
Throws:
XMLDBException - with expected error codes.
ErrorCodes.VENDOR_ERROR for any vendor specific errors that occur.

getResourceType

public java.lang.String getResourceType()
                                 throws XMLDBException
Returns the resource type for this Resource.

Specified by:
getResourceType in interface Resource
Returns:
the resource type for the Resource.
Throws:
XMLDBException - with expected error codes.
ErrorCodes.VENDOR_ERROR for any vendor specific errors that occur.

getContent

public java.lang.Object getContent()
                            throws XMLDBException
Retrieves the content from the resource. The type of the content varies depending what type of resource is being used.

Specified by:
getContent in interface Resource
Returns:
the content of the resource.
Throws:
XMLDBException - with expected error codes.
ErrorCodes.VENDOR_ERROR for any vendor specific errors that occur.

setContent

public void setContent(java.lang.Object value)
                throws XMLDBException
Sets the content for this resource. The type of content that can be set depends on the type of resource being used.

Specified by:
setContent in interface Resource
Parameters:
value - the content value to set for the resource.
Throws:
XMLDBException - with expected error codes.
ErrorCodes.VENDOR_ERROR for any vendor specific errors that occur.

getContentAsDOM

public org.w3c.dom.Node getContentAsDOM()
                                 throws XMLDBException
Returns the content of the Resource as a DOM Node.

Specified by:
getContentAsDOM in interface XMLResource
Returns:
The XML content as a DOM Node
Throws:
XMLDBException - with expected error codes.
ErrorCodes.VENDOR_ERROR for any vendor specific errors that occur.

setContentAsDOM

public void setContentAsDOM(org.w3c.dom.Node content)
                     throws XMLDBException
Sets the content of the Resource using a DOM Node as the source.

Specified by:
setContentAsDOM in interface XMLResource
Parameters:
content - The new content value
Throws:
XMLDBException - with expected error codes.
ErrorCodes.VENDOR_ERROR for any vendor specific errors that occur.
ErrorCodes.INVALID_RESOURCE if the content value provided is null.
ErrorCodes.WRONG_CONTENT_TYPE if the content provided in not a valid DOM Node.

getContentAsSAX

public void getContentAsSAX(org.xml.sax.ContentHandler handler)
                     throws XMLDBException
Allows you to use a ContentHandler to parse the XML data from the database for use in an application.

Specified by:
getContentAsSAX in interface XMLResource
Parameters:
handler - the SAX ContentHandler to use to handle the Resource content.
Throws:
XMLDBException - with expected error codes.
ErrorCodes.VENDOR_ERROR for any vendor specific errors that occur.
ErrorCodes.INVALID_RESOURCE if the ContentHandler provided is null.

setContentAsSAX

public org.xml.sax.ContentHandler setContentAsSAX()
                                           throws XMLDBException
Sets the content of the Resource using a SAX ContentHandler.

Specified by:
setContentAsSAX in interface XMLResource
Returns:
a SAX ContentHandler that can be used to add content into the Resource.
Throws:
XMLDBException - with expected error codes.
ErrorCodes.VENDOR_ERROR for any vendor specific errors that occur.

setSAXFeature

public void setSAXFeature(java.lang.String feature,
                          boolean value)
                   throws org.xml.sax.SAXNotRecognizedException,
                          org.xml.sax.SAXNotSupportedException
Sets a SAX feature that will be used when this XMLResource is used to produce SAX events (through the getContentAsSAX() method)

Specified by:
setSAXFeature in interface XMLResource
Parameters:
feature - Feature name. Standard SAX feature names are documented at http://sax.sourceforge.net/.
value - Set or unset feature
Throws:
org.xml.sax.SAXNotRecognizedException
org.xml.sax.SAXNotSupportedException

getSAXFeature

public boolean getSAXFeature(java.lang.String feature)
                      throws org.xml.sax.SAXNotRecognizedException,
                             org.xml.sax.SAXNotSupportedException
Returns current setting of a SAX feature that will be used when this XMLResource is used to produce SAX events (through the getContentAsSAX() method)

Specified by:
getSAXFeature in interface XMLResource
Parameters:
feature - Feature name. Standard SAX feature names are documented at http://sax.sourceforge.net/.
Returns:
whether the feature is set
Throws:
org.xml.sax.SAXNotRecognizedException
org.xml.sax.SAXNotSupportedException

XML:DB API

Copyright (C) XML:DB Initiative. All rights reserved.%lt;/font>