User's Manual

Chapter 9. Persistence Tutorial 67
SessionManager http://rhea.redhat.com/doc/waf/6.0/api/com/arsdigita/persistence/\ Session-
Manager.html.
This class is responsible for initializing the Session class. Users of persistence will use
it to get a pointer to the Session class through SessionManager.getSession()
(http://rhea.redhat.com/doc/waf/6.0/api/com/arsdigita/persistence/\
SessionManager.html#getSession()).
Session — http://rhea.redhat.com/doc/waf/6.0/api/com/arsdigita/persistence/Session.html
All persistence operations take place within the context of a session. The Session object contains
methods for creating and retrieving data objects, data queries, and data operations.
DataObject http://rhea.redhat.com/doc/waf/6.0/api/com/arsdigita/persistence/DataObject.html
This interface defines the public methods for Data Objects; see Data Object.
Data Objects are normally accessed through the use of DomainObjects
(http://rhea.redhat.com/doc/waf/6.0/api/com/arsdigita/domain/DomainObject.html).
OID — http://rhea.redhat.com/doc/waf/6.0/api/com/arsdigita/persistence/OID.html
This class represents a unique identifier for a given Data Object. It typically holds the information in
the object key (Object Key) of the object type. For the WAF Object type, the OID is the combination
of the "acs object type" (e.g., com.arsdigita.User) and the "object id". This is typically used to
retrieve specific objects from the database.
DataQuery — http://rhea.redhat.com/doc/waf/6.0/api/com/arsdigita/persistence/DataQuery.html
This class represents an interface for retrieving arbitrary information from the database. It is the
Java equivalent of the PDL data query described in Section 9.4.1 Data Queries.
DataOperation http://rhea.redhat.com/doc/waf/6.0/api/com/arsdigita/persistence/\ DataOper-
ation.html
This class represents an interface for executing arbitrary DML within the database. It is the Java
equivalent of the PDL data operation described in Section 9.4.2 Data Operations.
DataCollection http://rhea.redhat.com/doc/waf/6.0/api/com/arsdigita/persistence/\ DataCol-
lection.html
This class is used to represent a collection of data objects. DataCollections can be used to
efficiently iterate over a large set of DataObjects and access the values of their properties. These
can be filtered in a manner similar to DataQueries.
DataAssociation — http://rhea.redhat.com/doc/waf/6.0/api/com/arsdigita/persistence/\ DataAs-
sociation.html
This class is similar to the Java Collection interface, in that it provides
methods that act on the entire set of associations, such as add(DataObject
object) (http://rhea.redhat.com/doc/waf/6.0/api/com/arsdigita/persistence/\
DataAssociation.html#add(com.arsdigita.persistence.DataObject)), and
methods that return other objects to access the associations, such as
cursor()(http://rhea.redhat.com/doc/waf/6.0/api/com/arsdigita/persistence/\
DataAssociation.html#cursor()).
DataAssociationCursor http://rhea.redhat.com/doc/waf/6.0/api/com/arsdigita/persistence/\
DataAssociationCursor.html
Like a Java Iterator, this is used to loop over a set of associations. Developers can also add Filters
to DataAssociationCursors, thereby restricting the objects returned to the desired subset.
Filter — http://rhea.redhat.com/doc/waf/6.0/api/com/arsdigita/persistence/Filter.html
This class is used to filter the results of associations and collections. For instance, if a developer
only wants the associated objects with a name starting with "l" then a filter is used.