net.sf.jaxme
Interface PM

All Known Implementing Classes:
PMImpl

public interface PM

The persistence manager (or PM for short) is responsible for reading objects from the database or storing them into the database.

Author:
Jochen Wiedmann

Method Summary
 java.lang.Object create()
          Creates a new, empty element.
 void delete(Element element)
          Deletes the given document from the database.
 JAXBContextImpl getFactory()
          Returns the factory.
 QName getQName()
          Returns the fully qualified name of the document type handled by this manager.
 void init(JAXBContextImpl pFactory, java.lang.Class pElementInterface, QName pQName)
          Initializes the PM.
 void insert(Element element)
          Inserts the given document into the database.
 void select(Observer pObserver, java.lang.String pQuery)
          Reads documents matching the given query.
 void select(Observer pObserver, java.lang.String pQuery, PMParams pPlaceHolderArgs)
          Reads documents matching the given query.
 java.util.Iterator select(java.lang.String pQuery)
          Returns an iterator to all documents matching the given query.
 java.util.Iterator select(java.lang.String pQuery, PMParams pPlaceHolderArgs)
          Returns an iterator to all documents matching the given query.
 void update(Element element)
          Updates the given document in the database.
 

Method Detail

init

public void init(JAXBContextImpl pFactory,
                 java.lang.Class pElementInterface,
                 QName pQName)
          throws JAXBException

Initializes the PM. Called from the JAXBContextImpl upon initialization.

Throws:
JAXBException

getFactory

public JAXBContextImpl getFactory()

Returns the factory.


getQName

public QName getQName()

Returns the fully qualified name of the document type handled by this manager.


select

public void select(Observer pObserver,
                   java.lang.String pQuery)
            throws JAXBException

Reads documents matching the given query. For any document matching, the Observer's notify method is executed with the matching document as an argument.

Parameters:
pObserver - This Observer is notified for any matching document. The document is added as an argument.
pQuery - The query to perform.
Throws:
JAXBException

select

public void select(Observer pObserver,
                   java.lang.String pQuery,
                   PMParams pPlaceHolderArgs)
            throws JAXBException

Reads documents matching the given query. For any document matching, the Observer's notify method is executed with the matching document as an argument.

The query may contain placeholders. If it does, you have to supply an instance of PMParams with the placeholder values. Example:

   manager.select("Name = ? and Id = ?",
                  new PMParams().addString("Someone").addInt(4));
 

Parameters:
pObserver - This Observer is notified for any matching document. The document is added as an argument.
pQuery - The query to perform. May contain placeholders.
pPlaceHolderArgs - An array of objects or null, if the query doesn't contain any placeholders.
Throws:
JAXBException

select

public java.util.Iterator select(java.lang.String pQuery)
                          throws JAXBException

Returns an iterator to all documents matching the given query.

Parameters:
pQuery - The query to perform.
Throws:
JAXBException

select

public java.util.Iterator select(java.lang.String pQuery,
                                 PMParams pPlaceHolderArgs)
                          throws JAXBException

Returns an iterator to all documents matching the given query. The query may contain placeholders. If it does, you have to supply an instance of PMParams with the placeholder values. Example:

   manager.select("Name = ? and Id = ?",
                  new PMParams().addString("Someone").addInt(4));
 

Parameters:
pQuery - The query to perform. May contain placeholders.
pPlaceHolderArgs - An array of objects or null, if the query doesn't contain any placeholders.
Throws:
JAXBException

insert

public void insert(Element element)
            throws JAXBException

Inserts the given document into the database.

Throws:
JAXBException

update

public void update(Element element)
            throws JAXBException

Updates the given document in the database.

Throws:
JAXBException

delete

public void delete(Element element)
            throws JAXBException

Deletes the given document from the database.

Throws:
JAXBException

create

public java.lang.Object create()
                        throws JAXBException

Creates a new, empty element.

Throws:
JAXBException