|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface Query
Equivalent to Query
but working with Content
objects.
Date: Apr 4, 2005 Time: 11:02:35 AM
Field Summary | |
---|---|
static String |
SQL
|
static String |
XPATH
|
Method Summary | |
---|---|
QueryResult |
execute()
Description inherited from javax.jcr.query.Query#execute() Executes this query and returns a . |
String |
getLanguage()
Description inherited from javax.jcr.query.Query#getLanguage() Returns the language set for this query. |
String |
getStatement()
Description inherited from javax.jcr.query.Query#getStatement() Returns the statement set for this query. |
String |
getStoredQueryPath()
Description inherited from javax.jcr.query.Query#getStoredQueryPath() If this is a Query object that has been stored using storeAsNode(java.lang.String) (regardless of
whether it has been save d yet) or retrieved using QueryManager.getQuery(javax.jcr.Node) ), then this
method returns the path of the nt:query node that stores the query. |
void |
setLimit(long limit)
Restrict the result size of subsequent execute() invocations to the given
number of objects. |
javax.jcr.Node |
storeAsNode(String s)
Description inherited from javax.jcr.query.Query#storeAsNode() Creates a node representing this Query in content. |
Field Detail |
---|
static final String XPATH
static final String SQL
Method Detail |
---|
QueryResult execute() throws javax.jcr.RepositoryException
QueryResult
.
QueryResult
javax.jcr.RepositoryException
- if an error occursvoid setLimit(long limit)
execute()
invocations to the given
number of objects.Use this method if the query result can be large, but you are interested only in the first few objects. This will avoid the rest of the result objects to be instantiated, resulting in a huge performance gain for large results and small limit numbers.
The performance gain may be defeated if your query returns a lot of nodes
of the "wrong" nodetype, resulting in QueryResult.getContent(String)
to
iterate often before the limit is reached. So make sure your query yields only nodes with the
required nodetype.
limit
- the maximum result size, initial value is Long.MAX_VALUE
String getStatement()
String getLanguage()
QueryManager.getSupportedQueryLanguages()
.
String getStoredQueryPath() throws javax.jcr.ItemNotFoundException, javax.jcr.RepositoryException
Query
object that has been stored using storeAsNode(java.lang.String)
(regardless of
whether it has been save
d yet) or retrieved using QueryManager.getQuery(javax.jcr.Node)
), then this
method returns the path of the nt:query
node that stores the query. If this is a transient query
(that is, a Query
object created with QueryManager.createQuery(java.lang.String, java.lang.String)
but not yet stored) then
this method throws an ItemNotFoundException
.
javax.jcr.ItemNotFoundException
- if this query is not a stored query.
javax.jcr.RepositoryException
- if another error occurs.javax.jcr.Node storeAsNode(String s) throws javax.jcr.ItemExistsException, javax.jcr.PathNotFoundException, javax.jcr.version.VersionException, javax.jcr.nodetype.ConstraintViolationException, javax.jcr.lock.LockException, javax.jcr.UnsupportedRepositoryOperationException, javax.jcr.RepositoryException
Query
in content. In a level 1 repository this method throws
an UnsupportedRepositoryOperationException
. In a level 2 repository it creates a node of
type nt:query
at absPath
and returns that node. In order to persist the newly
created node, a save
must be performed that includes the parent of this new node within
its scope. In other words, either a Session.save
or an Item.save
on the parent or
higher-degree ancestor of absPath
must be performed. An ItemExistsException
will be thrown either immediately (by this method), or on save
, if an item at the specified path
already exists and same-name siblings are not allowed. Implementations may differ on when this validation is
performed. A PathNotFoundException
will be thrown either immediately , or on
save
, if the specified path implies intermediary nodes that do not exist. Implementations may
differ on when this validation is performed. A ConstraintViolationException
will be thrown
either immediately or on save
, if adding the node would violate a node type or
implementation-specific constraintor if an attempt is made to add a node as the child of a property.
Implementations may differ on when this validation is performed. A VersionException
will be
thrown either immediately (by this method), or on save
, if the node to which the new child is
being added is versionable and checked-in or is non-versionable but its nearest versionable ancestor is
checked-in. Implementations may differ on when this validation is performed. A LockException
will be thrown either immediately (by this method), or on save
, if a lock prevents the addition
of the node. Implementations may differ on when this validation is performed.
javax.jcr.ItemExistsException
- if an item at the specified path already exists, same-name siblings are not allowed
and this implementation performs this validation immediately instead of waiting until save
.
javax.jcr.PathNotFoundException
- if the specified path implies intermediary Node
s that do not exist
or the last element of relPath
has an index, and this implementation performs this validation
immediately instead of waiting until save
.
javax.jcr.nodetype.ConstraintViolationException
- if a node type or implementation-specific constraint is violated or if an
attempt is made to add a node as the child of a property and this implementation performs this validation
immediately instead of waiting until save
.
javax.jcr.version.VersionException
- if the node to which the new child is being added is versionable and checked-in or is
non-versionable but its nearest versionable ancestor is checked-in and this implementation performs this
validation immediately instead of waiting until save
.
javax.jcr.lock.LockException
- if a lock prevents the addition of the node and this implementation performs this
validation immediately instead of waiting until save
.
javax.jcr.UnsupportedRepositoryOperationException
- in a level 1 implementation.
javax.jcr.RepositoryException
- if another error occurs or if the relPath
provided has an index on its
final element.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |