Package org.xmldb.api.sdk
Class SimpleCollection
java.lang.Object
org.xmldb.api.sdk.SimpleConfigurable
org.xmldb.api.sdk.SimpleCollection
- All Implemented Interfaces:
Collection,Configurable
- Direct Known Subclasses:
CollectionImpl
SimpleCollection provides an easy starting point for implementing the
Collection interface. It provides a default Service management functionality
but all other functionality must be implemented by the extending class.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()Releases all resources consumed by theCollection.createId()Creates a new unique ID within the context of theCollectioncreateResource(String id, String type) Creates a new emptyResourcewith the provided id.getChildCollection(String name) Default behaviour for a non-hierarchical implementationintDefault behaviour for a non-hierarchical implementationgetName()Returns the name associated with the Configurable object.Default behaviour for a non-hierarchical implementationgetResource(String id) Retrieves aResourcefrom the database.intReturns the number of resources currently stored in this collection or 0 if the collection is empty.getService(String name, String version) Get a Service instance based on the name and version.Service[]Returns the list of Services supported by this Collection.booleanisOpen()Returns true if theCollectionis open false otherwise.String[]Default behaviour for a non-hierarchical implementationString[]Returns a list of the ids for all resources stored in the collection.voidregisterService(Service service) Registers a new Service with this Collection.voidremoveResource(Resource res) Removes theResourcefrom the database.voidstoreResource(Resource res) Stores the provided resource into the database.Methods inherited from class org.xmldb.api.sdk.SimpleConfigurable
getProperty, setPropertyMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.xmldb.api.base.Configurable
getProperty, setProperty
-
Constructor Details
-
SimpleCollection
public SimpleCollection()
-
-
Method Details
-
getName
Returns the name associated with the Configurable object.- Specified by:
getNamein interfaceCollection- Returns:
- the name of the object.
- Throws:
XMLDBException- with expected error codes.
ErrorCodes.VENDOR_ERRORfor any vendor specific errors that occur.
-
getServices
Returns the list of Services supported by this Collection.- Specified by:
getServicesin interfaceCollection- Returns:
- A list of supported Services
- Throws:
XMLDBException- with expected error codes.
ErrorCodes.VENDOR_ERRORfor any vendor specific errors that occur.
ErrorCodes.COLLECTION_CLOSEDif theclosemethod has been called on theCollection
-
getService
Get a Service instance based on the name and version.- Specified by:
getServicein interfaceCollection- Parameters:
name- The Service instance to retrieveversion- The version of the service to retrieve.- Returns:
- The Service instance or null if no service was found.
- Throws:
XMLDBException- with expected error codes.
ErrorCodes.VENDOR_ERRORfor any vendor specific errors that occur.
ErrorCodes.COLLECTION_CLOSEDif theclosemethod has been called on theCollection
-
registerService
Registers a new Service with this Collection.- Parameters:
service- Description of Parameter- Throws:
XMLDBException
-
getParentCollection
Default behaviour for a non-hierarchical implementation- Specified by:
getParentCollectionin interfaceCollection- Returns:
- the parent
Collectioninstance. - Throws:
XMLDBException- with expected error codes.
ErrorCodes.VENDOR_ERRORfor any vendor specific errors that occur.
ErrorCodes.COLLECTION_CLOSEDif theclosemethod has been called on theCollection
-
getChildCollectionCount
Default behaviour for a non-hierarchical implementation- Specified by:
getChildCollectionCountin interfaceCollection- Returns:
- the number of child collections.
- Throws:
XMLDBException- with expected error codes.
ErrorCodes.VENDOR_ERRORfor any vendor specific errors that occur.
ErrorCodes.COLLECTION_CLOSEDif theclosemethod has been called on theCollection
-
listChildCollections
Default behaviour for a non-hierarchical implementation- Specified by:
listChildCollectionsin interfaceCollection- Returns:
- an array containing collection names for all child collections.
- Throws:
XMLDBException- with expected error codes.
ErrorCodes.VENDOR_ERRORfor any vendor specific errors that occur.
ErrorCodes.COLLECTION_CLOSEDif theclosemethod has been called on theCollection
-
getChildCollection
Default behaviour for a non-hierarchical implementation- Specified by:
getChildCollectionin interfaceCollection- Parameters:
name- the name of the child collection to retrieve.- Returns:
- the requested child collection or null if it couldn't be found.
- Throws:
XMLDBException- with expected error codes.
ErrorCodes.VENDOR_ERRORfor any vendor specific errors that occur.
ErrorCodes.COLLECTION_CLOSEDif theclosemethod has been called on theCollection
-
getResourceCount
Returns the number of resources currently stored in this collection or 0 if the collection is empty.- Specified by:
getResourceCountin interfaceCollection- Returns:
- the number of resource in the collection.
- Throws:
XMLDBException- with expected error codes.
ErrorCodes.VENDOR_ERRORfor any vendor specific errors that occur.
-
listResources
Returns a list of the ids for all resources stored in the collection.- Specified by:
listResourcesin interfaceCollection- Returns:
- a string array containing the names for all
Resources in the collection. - Throws:
XMLDBException- with expected error codes.
ErrorCodes.VENDOR_ERRORfor any vendor specific errors that occur.
-
createResource
Creates a new emptyResourcewith the provided id. The type ofResourcereturned is determined by thetypeparameter. The XML:DB API currently defines "XMLResource" and "BinaryResource" as valid resource types. Theidprovided must be unique within the scope of the collection. Ifidis null or its value is empty then an id is generated by callingcreateId(). TheResourcecreated is not stored to the database untilstoreResource()is called.- Specified by:
createResourcein interfaceCollection- Parameters:
id- the unique id to associate with the createdResource.type- theResourcetype to create.- Returns:
- an empty
Resourceinstance. - Throws:
XMLDBException- with expected error codes.
ErrorCodes.VENDOR_ERRORfor any vendor specific errors that occur.
ErrorCodes.UNKNOWN_RESOURCE_TYPEif thetypeparameter is not a knownResourcetype.
-
removeResource
Removes theResourcefrom the database.- Specified by:
removeResourcein interfaceCollection- Parameters:
res- the resource to remove.- Throws:
XMLDBException- with expected error codes.
ErrorCodes.VENDOR_ERRORfor any vendor specific errors that occur.
ErrorCodes.INVALID_RESOURCEif theResourceis not valid.
ErrorCodes.NO_SUCH_RESOURCEif theResourceis not known to thisCollection.
-
storeResource
Stores the provided resource into the database. If the resource does not already exist it will be created. If it does already exist it will be updated.- Specified by:
storeResourcein interfaceCollection- Parameters:
res- the resource to store in the database.- Throws:
XMLDBException- with expected error codes.
ErrorCodes.VENDOR_ERRORfor any vendor specific errors that occur.
ErrorCodes.INVALID_RESOURCEif theResourceis not valid.
-
getResource
Retrieves aResourcefrom the database. If theResourcecould not be located a null value will be returned.- Specified by:
getResourcein interfaceCollection- Parameters:
id- the unique id for the requested resource.- Returns:
- The retrieved
Resourceinstance. - Throws:
XMLDBException- with expected error codes.
ErrorCodes.VENDOR_ERRORfor any vendor specific errors that occur.
-
createId
Creates a new unique ID within the context of theCollection- Specified by:
createIdin interfaceCollection- Returns:
- the created id as a string.
- Throws:
XMLDBException- with expected error codes.
ErrorCodes.VENDOR_ERRORfor any vendor specific errors that occur.
-
isOpen
Description copied from interface:CollectionReturns true if theCollectionis open false otherwise. Calling theclosemethod onCollectionwill result inisOpenreturning false. It is not safe to useCollectioninstances that have been closed.- Specified by:
isOpenin interfaceCollection- Returns:
- true if the
Collectionis open, false otherwise. - Throws:
XMLDBException- with expected error codes.
ErrorCodes.VENDOR_ERRORfor any vendor specific errors that occur.
-
close
Releases all resources consumed by theCollection. Theclosemethod must always be called when use of aCollectionis complete.- Specified by:
closein interfaceCollection- Throws:
XMLDBException- with expected error codes.
ErrorCodes.VENDOR_ERRORfor any vendor specific errors that occur.
-