You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by dj...@apache.org on 2008/12/04 09:42:19 UTC
svn commit: r723243 [2/2] -
/geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/
Modified: geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/PredicateOperand.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/PredicateOperand.java?rev=723243&r1=723242&r2=723243&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/PredicateOperand.java (original)
+++ geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/PredicateOperand.java Thu Dec 4 00:42:18 2008
@@ -27,567 +27,115 @@
import java.util.Calendar;
import java.util.Date;
-/**
- * Interface for constructing where-clause and having-clause conditions.
- * Instances of PredicateOperand are used in constructing predicates passed to
- * the where or having methods.
- */
public interface PredicateOperand {
- /**
- * Create a predicate for testing equality with the specified argument.
- *
- * @param arg -
- * PredicateOperand instance or parameter
- * @return conditional predicate
- */
+
Predicate equal(PredicateOperand arg);
- /**
- * Create a predicate for testing equality with the specified argument.
- *
- * @param cls -
- * entity class
- * @return conditional predicate
- */
Predicate equal(Class cls);
- /**
- * Create a predicate for testing equality with the specified argument.
- *
- * @param arg -
- * numeric
- * @return conditional predicate
- */
Predicate equal(Number arg);
- /**
- * Create a predicate for testing equality with the specified argument.
- *
- * @param arg -
- * string value
- * @return conditional predicate
- */
Predicate equal(String arg);
- /**
- * Create a predicate for testing equality with the specified argument.
- *
- * @param arg -
- * boolean value
- * @return conditional predicate
- */
Predicate equal(boolean arg);
- /**
- * Create a predicate for testing equality with the specified argument.
- *
- * @param arg -
- * date
- * @return conditional predicate
- */
Predicate equal(Date arg);
- /**
- * Create a predicate for testing equality with the specified argument.
- *
- * @param arg -
- * calendar
- * @return conditional predicate
- */
Predicate equal(Calendar arg);
- /**
- * Create a predicate for testing equality with the specified argument.
- *
- * @param e -
- * enum
- * @return conditional predicate
- */
Predicate equal(Enum<?> e);
- /**
- * Create a predicate for testing inequality with the specified argument.
- *
- * @param arg -
- * PredicateOperand instance or parameter
- * @return conditional predicate
- */
Predicate notEqual(PredicateOperand arg);
- /**
- * Create a predicate for testing inequality with the specified argument.
- *
- * @param cls -
- * entity class
- * @return conditional predicate
- */
Predicate notEqual(Class cls);
- /**
- * Create a predicate for testing inequality with the specified argument.
- *
- * @param arg -
- * numberic value
- * @return conditional predicate
- */
Predicate notEqual(Number arg);
- /**
- * Create a predicate for testing inequality with the specified argument.
- *
- * @param arg -
- * string value
- * @return conditional predicate
- */
Predicate notEqual(String arg);
- /**
- * Create a predicate for testing inequality with the specified argument.
- *
- * @param arg -
- * boolean value
- * @return conditional predicate
- */
Predicate notEqual(boolean arg);
- /**
- * Create a predicate for testing inequality with the specified argument.
- *
- * @param arg -
- * date
- * @return conditional predicate
- */
Predicate notEqual(Date arg);
- /**
- * Create a predicate for testing inequality with the specified argument.
- *
- * @param arg -
- * calendar
- * @return conditional predicate
- */
Predicate notEqual(Calendar arg);
- /**
- * Create a predicate for testing inequality with the specified argument.
- *
- * @param e -
- * enum
- * @return conditional predicate
- */
Predicate notEqual(Enum<?> e);
- /**
- * Create a predicate for testing whether the PredicateOperand is greater
- * than the argument.
- *
- * @param arg -
- * PredicateOperand instance or parameter
- * @return conditional predicate
- */
Predicate greaterThan(PredicateOperand arg);
- /**
- * Create a predicate for testing whether the PredicateOperand is greater
- * than the argument.
- *
- * @param arg -
- * numeric
- * @return conditional predicate
- */
Predicate greaterThan(Number arg);
- /**
- * Create a predicate for testing whether the PredicateOperand is greater
- * than the argument.
- *
- * @param arg -
- * string
- * @return conditional predicate
- */
Predicate greaterThan(String arg);
- /**
- * Create a predicate for testing whether the PredicateOperand is greater
- * than the argument.
- *
- * @param arg -
- * date
- * @return conditional predicate
- */
Predicate greaterThan(Date arg);
- /**
- * Create a predicate for testing whether the PredicateOperand is greater
- * than the argument.
- *
- * @param arg -
- * calendar
- * @return conditional predicate
- */
Predicate greaterThan(Calendar arg);
- /**
- * Create a predicate for testing whether the PredicateOperand is greater
- * than or equal to the argument.
- *
- * @param arg -
- * PredicateOperand instance or parameter
- * @return conditional predicate
- */
Predicate greaterEqual(PredicateOperand arg);
- /**
- * Create a predicate for testing whether the PredicateOperand is greater
- * than or equal to the argument.
- *
- * @param arg -
- * numeric
- * @return conditional predicate
- */
Predicate greaterEqual(Number arg);
- /**
- * Create a predicate for testing whether the PredicateOperand is greater
- * than or equal to the argument.
- *
- * @param arg -
- * string
- * @return conditional predicate
- */
Predicate greaterEqual(String arg);
- /**
- * Create a predicate for testing whether the PredicateOperand is greater
- * than or equal to the argument.
- *
- * @param arg -
- * date
- * @return conditional predicate
- */
Predicate greaterEqual(Date arg);
- /**
- * Create a predicate for testing whether the PredicateOperand is greater
- * than or equal to the argument.
- *
- * @param arg -
- * calendar
- * @return conditional predicate
- */
Predicate greaterEqual(Calendar arg);
- /**
- * Create a predicate for testing whether the PredicateOperand is less than
- * the argument.
- *
- * @param arg -
- * PredicateOperand instance or parameter
- * @return conditional predicate
- */
Predicate lessThan(PredicateOperand arg);
- /**
- * Create a predicate for testing whether the PredicateOperand is less than
- * the argument.
- *
- * @param arg -
- * numeric
- * @return conditional predicate
- */
Predicate lessThan(Number arg);
- /**
- * Create a predicate for testing whether the PredicateOperand is less than
- * the argument.
- *
- * @param arg -
- * string
- * @return conditional predicate
- */
Predicate lessThan(String arg);
- /**
- * Create a predicate for testing whether the PredicateOperand is less than
- * the argument.
- *
- * @param arg -
- * date
- * @return conditional predicate
- */
Predicate lessThan(Date arg);
- /**
- * Create a predicate for testing whether the PredicateOperand is less than
- * the argument.
- *
- * @param arg -
- * calendar
- * @return conditional predicate
- */
Predicate lessThan(Calendar arg);
- /**
- * Create a predicate for testing whether the PredicateOperand is less than
- * or equal to the argument.
- *
- * @param arg -
- * PredicateOperand instance or parameter
- * @return conditional predicate
- */
Predicate lessEqual(PredicateOperand arg);
- /**
- * Create a predicate for testing whether the PredicateOperand is less than
- * or equal to the argument.
- *
- * @param arg -
- * numeric
- * @return conditional predicate
- */
Predicate lessEqual(Number arg);
- /**
- * Create a predicate for testing whether the PredicateOperand is less than
- * or equal to the argument.
- *
- * @param arg -
- * string
- * @return conditional predicate
- */
Predicate lessEqual(String arg);
- /**
- * Create a predicate for testing whether the PredicateOperand is less than
- * or equal to the argument.
- *
- * @param arg -
- * date
- * @return conditional predicate
- */
Predicate lessEqual(Date arg);
- /**
- * Create a predicate for testing whether the PredicateOperand is less than
- * or equal to the argument.
- *
- * @param arg -
- * calendar
- * @return conditional predicate
- */
Predicate lessEqual(Calendar arg);
- /**
- * Create a predicate for testing whether the PredicateOperand lies between
- * (inclusive) the two arguments.
- *
- * @param arg1 -
- * PredicateOperand instance or parameter
- * @param arg2 -
- * PredicateOperand instance or parameter
- * @return conditional predicate
- */
Predicate between(PredicateOperand arg1, PredicateOperand arg2);
- /**
- * Create a predicate for testing whether the PredicateOperand lies between
- * (inclusive) the two arguments.
- *
- * @param arg1 -
- * PredicateOperand instance or parameter
- * @param arg2 -
- * numeric
- * @return conditional predicate
- */
Predicate between(PredicateOperand arg1, Number arg2);
- /**
- * Create a predicate for testing whether the PredicateOperand lies between
- * (inclusive) the two arguments.
- *
- * @param arg1 -
- * numeric
- * @param arg2 -
- * PredicateOperand instance or parameter
- * @return conditional predicate
- */
Predicate between(Number arg1, PredicateOperand arg2);
- /**
- * Create a predicate for testing whether the PredicateOperand lies between
- * (inclusive) the two arguments.
- *
- * @param arg1 -
- * numeric
- * @param arg2 -
- * numeric
- * @return conditional predicate
- */
Predicate between(Number arg1, Number arg2);
- /**
- * Create a predicate for testing whether the PredicateOperand lies between
- * (inclusive) the two arguments.
- *
- * @param arg1 -
- * PredicateOperand instance or parameter
- * @param arg2 -
- * string
- * @return conditional predicate
- */
Predicate between(PredicateOperand arg1, String arg2);
- /**
- * Create a predicate for testing whether the PredicateOperand lies between
- * (inclusive) the two arguments.
- *
- * @param arg1 -
- * string
- * @param arg2 -
- * PredicateOperand instance or parameter
- * @return conditional predicate
- */
Predicate between(String arg1, PredicateOperand arg2);
- /**
- * Create a predicate for testing whether the PredicateOperand lies between
- * (inclusive) the two arguments.
- *
- * @param arg1 -
- * string
- * @param arg2 -
- * string
- * @return conditional predicate
- */
Predicate between(String arg1, String arg2);
- /**
- * Create a predicate for testing whether the PredicateOperand lies between
- * (inclusive) the two arguments.
- *
- * @param arg1 -
- * PredicateOperand instance or parameter
- * @param arg2 -
- * date
- * @return conditional predicate
- */
Predicate between(PredicateOperand arg1, Date arg2);
- /**
- * Create a predicate for testing whether the PredicateOperand lies between
- * (inclusive) the two arguments.
- *
- * @param arg1 -
- * date
- * @param arg2 -
- * PredicateOperand instance or parameter
- * @return conditional predicate
- */
Predicate between(Date arg1, PredicateOperand arg2);
- /**
- * Create a predicate for testing whether the PredicateOperand lies between
- * (inclusive) the two arguments.
- *
- * @param arg1 -
- * date
- * @param arg2 -
- * date
- * @return conditional predicate
- */
Predicate between(Date arg1, Date arg2);
- /**
- * Create a predicate for testing whether the PredicateOperand lies between
- * (inclusive) the two arguments.
- *
- * @param arg1 -
- * PredicateOperand instance or parameter
- * @param arg2 -
- * calendar
- * @return conditional predicate
- */
Predicate between(PredicateOperand arg1, Calendar arg2);
- /**
- * Create a predicate for testing whether the PredicateOperand lies between
- * (inclusive) the two arguments.
- *
- * @param arg1 -
- * calendar
- * @param arg2 -
- * PredicateOperand instance or parameter
- * @return conditional predicate
- */
Predicate between(Calendar arg1, PredicateOperand arg2);
- /**
- * Create a predicate for testing whether the PredicateOperand lies between
- * (inclusive) the two arguments.
- *
- * @param arg1 -
- * calendar
- * @param arg2 -
- * calendar
- * @return conditional predicate
- */
Predicate between(Calendar arg1, Calendar arg2);
- /**
- * Create a predicate for testing whether the PredicateOperand satisfies the
- * given pattern.
- *
- * @param pattern
- * @return conditional predicate
- */
Predicate like(PredicateOperand pattern);
- /**
- * Create a predicate for testing whether the PredicateOperand satisfies the
- * given pattern.
- *
- * @param pattern
- * @param escapeChar
- * @return conditional predicate
- */
Predicate like(PredicateOperand pattern, PredicateOperand escapeChar);
- /**
- * Create a predicate for testing whether the PredicateOperand satisfies the
- * given pattern.
- *
- * @param pattern
- * @param escapeChar
- * @return conditional predicate
- */
Predicate like(PredicateOperand pattern, char escapeChar);
- /**
- * Create a predicate for testing whether the PredicateOperand satisfies the
- * given pattern.
- *
- * @param pattern
- * @return conditional predicate
- */
Predicate like(String pattern);
- /**
- * Create a predicate for testing whether the PredicateOperand satisfies the
- * given pattern.
- *
- * @param pattern
- * @param escapeChar
- * @return conditional predicate
- */
Predicate like(String pattern, PredicateOperand escapeChar);
- /**
- * Create a predicate for testing whether the PredicateOperand satisfies the
- * given pattern.
- *
- * @param pattern
- * @param escapeChar
- * @return conditional predicate
- */
Predicate like(String pattern, char escapeChar);
}
Modified: geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/Query.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/Query.java?rev=723243&r1=723242&r2=723243&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/Query.java (original)
+++ geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/Query.java Thu Dec 4 00:42:18 2008
@@ -31,284 +31,57 @@
import java.util.Set;
/**
- * Interface used to control query execution.
- *
* @version $Rev$ $Date$
*/
public interface Query {
- /**
- * Execute a SELECT query and return the query results
- * as a List.
- *
- * @return a list of the results
- * @throws IllegalStateException if called for a Java
- * Persistence query language UPDATE or DELETE statement
- * @throws QueryTimeoutException if the query execution exceeds
- * the query timeout value set
- * @throws TransactionRequiredException if a lock mode has
- * been set and there is no transaction
- * @throws PessimisticLockException if pessimistic locking
- * fails and the transaction is rolled back
- * @throws LockTimeoutException if pessimistic locking
- * fails and only the statement is rolled back
- */
public List getResultList();
- /**
- * Execute a SELECT query that returns a single result.
- *
- * @return the result
- * @throws NoResultException if there is no result
- * @throws NonUniqueResultException if more than one result
- * @throws IllegalStateException if called for a Java
- * Persistence query language UPDATE or DELETE statement
- * @throws QueryTimeoutException if the query execution exceeds
- * the query timeout value set
- * @throws TransactionRequiredException if a lock mode has
- * been set and there is no transaction
- * @throws PessimisticLockException if pessimistic locking
- * fails and the transaction is rolled back
- * @throws LockTimeoutException if pessimistic locking
- * fails and only the statement is rolled back
- */
public Object getSingleResult();
- /**
- * Execute an update or delete statement.
- *
- * @return the number of entities updated or deleted
- * @throws IllegalStateException if called for a Java
- * Persistence query language SELECT statement or for
- * a criteria query
- * @throws TransactionRequiredException if there is
- * no transaction
- * @throws QueryTimeoutException if the statement execution
- * exceeds the query timeout value set
- */
public int executeUpdate();
- /**
- * Set the maximum number of results to retrieve.
- *
- * @param maxResult
- * @return the same query instance
- * @throws IllegalArgumentException if argument is negative
- */
public Query setMaxResults(int maxResult);
- /**
- * The maximum number of results the query object was set to
- * retrieve. Returns Integer.MAX_VALUE if setMaxResults was not
- * applied to the query object.
- *
- * @return maximum number of results
- */
public int getMaxResults();
- /**
- * Set the position of the first result to retrieve.
- *
- * @param start position of the first result, numbered from 0
- * @return the same query instance
- * @throws IllegalArgumentException if argument is negative
- */
public Query setFirstResult(int startPosition);
- /**
- * The position of the first result the query object was set to
- * retrieve. Returns 0 if setFirstResult was not applied to the
- * query object.
- *
- * @return position of first result
- */
public int getFirstResult();
- /**
- * Set a query hint.
- * If a vendor-specific hint is not recognized, it is silently
- * ignored.
- * Portable applications should not rely on the standard timeout
- * hint. Depending on the database in use and the locking
- * mechanisms used by the provider, the hint may or may not
- * be observed.
- *
- * @param hintName
- * @param value
- * @return the same query instance
- * <p/>
- * * @throws IllegalArgumentException if the second argument is not
- * valid for the implementation
- */
public Query setHint(String hintName, Object value);
- /**
- * Get the hints and associated values that are in effect for
- * the query instance.
- *
- * @return query hints
- */
public Map<String, Object> getHints();
- /**
- * Get the names of the hints that are supported for query
- * objects. These hints correspond to hints that may be passed
- * to the methods of the Query interface that take hints as
- * arguments or used with the NamedQuery and NamedNativeQuery
- * annotations. These include all standard query hints as well as
- * vendor-specific hints supported by the provider. These hints
- * may or may not currently be in effect.
- *
- * @return hints
- */
public Set<String> getSupportedHints();
- /**
- * Bind an argument to a named parameter.
- *
- * @param name the parameter name
- * @param value
- * @return the same query instance
- * @throws IllegalArgumentException if parameter name does not
- * correspond to parameter in query string
- * or argument is of incorrect type
- */
public Query setParameter(String name, Object value);
- /**
- * Bind an instance of java.util.Date to a named parameter.
- *
- * @param name
- * @param value
- * @param temporalType
- * @return the same query instance
- * @throws IllegalArgumentException if parameter name does not
- * correspond to parameter in query string
- */
public Query setParameter(String name, Date value,
TemporalType temporalType);
- /**
- * Bind an instance of java.util.Calendar to a named parameter.
- *
- * @param name
- * @param value
- * @param temporalType
- * @return the same query instance
- * @throws IllegalArgumentException if parameter name does not
- * correspond to parameter in query string
- */
public Query setParameter(String name, Calendar value,
TemporalType temporalType);
- /**
- * Bind an argument to a positional parameter.
- *
- * @param position
- * @param value
- * @return the same query instance
- * @throws IllegalArgumentException if position does not
- * correspond to positional parameter of query
- * or argument is of incorrect type
- */
public Query setParameter(int position, Object value);
- /**
- * Bind an instance of java.util.Date to a positional parameter.
- *
- * @param position
- * @param value
- * @param temporalType
- * @return the same query instance
- * @throws IllegalArgumentException if position does not
- * correspond to positional parameter of query
- */
public Query setParameter(int position, Date value,
TemporalType temporalType);
- /**
- * Bind an instance of java.util.Calendar to a positional
- * parameter.
- *
- * @param position
- * @param value
- * @param temporalType
- * @return the same query instance
- * @throws IllegalArgumentException if position does not
- * correspond to positional parameter of query
- */
public Query setParameter(int position, Calendar value,
TemporalType temporalType);
- /**
- * Get the parameters names and associated values of the
- * parameters that are bound for the query instance.
- * Returns empty map if no parameters have been bound
- * or if the query does not use named parameters.
- *
- * @return named parameters
- */
public Map<String, Object> getNamedParameters();
- /**
- * Get the values of the positional parameters
- * that are bound for the query instance.
- * Positional positions are listed in order of position.
- * Returns empty list if no parameters have been bound
- * or if the query does not use positional parameters.
- *
- * @return positional parameters
- */
public List getPositionalParameters();
- /**
- * Set the flush mode type to be used for the query execution.
- * The flush mode type applies to the query regardless of the
- * flush mode type in use for the entity manager.
- *
- * @param flushMode
- */
public Query setFlushMode(FlushModeType flushMode);
- /**
- * The flush mode in effect for the query execution. If a flush
- * mode has not been set for the query object, returns the flush
- * mode in effect for the entity manager.
- *
- * @return flush mode
- */
public FlushModeType getFlushMode();
- /**
- * Set the lock mode type to be used for the query execution.
- *
- * @param lockMode
- * @throws IllegalStateException if not a Java Persistence
- * query language SELECT query or Criteria API query
- */
public Query setLockMode(LockModeType lockMode);
- /**
- * Get the current lock mode for the query.
- *
- * @return lock mode
- * @throws IllegalStateException if not a Java Persistence
- * query language SELECT query or Criteria API query
- */
public LockModeType getLockMode();
- /**
- * Return an object of the specified type to allow access to the
- * provider-specific API. If the provider's Query implementation
- * does not support the specified class, the PersistenceException
- * is thrown.
- *
- * @param cls the class of the object to be returned. This is
- * normally either the underlying Query implementation class
- * or an interface that it implements.
- * @return an instance of the specified class
- * @throws PersistenceException if the provider does not support
- * the call.
- */
public <T> T unwrap(Class<T> cls);
}
Modified: geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/QueryBuilder.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/QueryBuilder.java?rev=723243&r1=723242&r2=723243&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/QueryBuilder.java (original)
+++ geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/QueryBuilder.java Thu Dec 4 00:42:18 2008
@@ -24,39 +24,11 @@
//
package javax.persistence;
-/**
- * Factory interface for query definition objects
- */
public interface QueryBuilder {
- /**
- * Create an uninitialized query definition object.
- *
- * @return query definition instance
- */
+
QueryDefinition createQueryDefinition();
- /**
- * Create a query definition object with the given root. The root must be an
- * entity class.
- *
- * @param cls -
- * an entity class
- * @return root domain object
- */
DomainObject createQueryDefinition(Class root);
- /**
- * Create a query definition object whose root is derived from a domain
- * object of the containing query. Provides support for correlated
- * subqueries. Joins against the resulting domain object do not affect the
- * query domain of the containing query. The path expression must correspond
- * to an entity class. The path expression must not be a domain object of
- * the containing query.
- *
- * @param path -
- * path expression corresponding to the domain object used to
- * derive the subquery root.
- * @return the subquery DomainObject
- */
DomainObject createSubqueryDefinition(PathExpression path);
}
Modified: geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/QueryDefinition.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/QueryDefinition.java?rev=723243&r1=723242&r2=723243&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/QueryDefinition.java (original)
+++ geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/QueryDefinition.java Thu Dec 4 00:42:18 2008
@@ -28,534 +28,105 @@
import java.util.Date;
import java.util.List;
-/**
- * Interface for construction of query definitions
- */
public interface QueryDefinition extends Subquery {
- /**
- * Add a query root corresponding to the given entity, forming a cartesian
- * product with any existing roots. The domain object that is returned is
- * bound as a component of the given query. The argument must be an entity
- * class.
- *
- * @param cls -
- * an entity class
- * @return DomainObject corresponding to the specified entity class.
- */
+
DomainObject addRoot(Class cls);
- /**
- * Add a root derived from a domain object of the containing query
- * definition to a query definition used as a subquery. Provides support for
- * correlated subqueries. Joins against the resulting domain object do not
- * affect the query domain of the containing query. The path expression must
- * correspond to an entity class. The path expression must not be a domain
- * object of the containing query.
- *
- * @param path -
- * path expression corresponding to the domain object used to
- * derive the subquery root.
- * @return the subquery DomainObject
- */
DomainObject addSubqueryRoot(PathExpression path);
- /**
- * Specify the objects / values to be returned. Replaces the previous select
- * list, if any. If no select items are specified and there is only one
- * query root, the root entity is assumed to be the result.
- *
- * @param selectItems -
- * one or more SelectItem instances
- * @return the modified query definition instance
- */
QueryDefinition select(SelectItem... selectItems);
- /**
- * Specify the objects / values to be returned. Replaces the previous select
- * list, if any. If no select items are specified and there is only one
- * query root, the root entity is assumed to be the result.
- *
- * @param selectItemList -
- * a list containing one or more SelectItem instances
- * @return the modified query definition instance
- */
QueryDefinition select(List<SelectItem> selectItemList);
- /**
- * Specify the objects / values to be returned. Duplicate results will be
- * eliminated. Replaces the previous select list, if any. If no select items
- * are specified and there is only one query root, the root entity is
- * assumed to be the result.
- *
- * @param selectItems -
- * one or more SelectItem instances
- * @return the modified query definition instance
- */
QueryDefinition selectDistinct(SelectItem... selectItems);
- /**
- * Specify the objects / values to be returned. Duplicate results will be
- * eliminated. Replaces the previous select list, if any. If no select items
- * are specified, and there is only one query root, the root entity is
- * assumed to be the result. is assumed to be the result.
- *
- * @param selectItemList -
- * a list containing one or more SelectItem instances
- * @return the modified query definition instance
- */
QueryDefinition selectDistinct(List<SelectItem> selectItemList);
- /**
- * Modifies the query definition to restrict the result of the query
- * according to the specified predicate. Replaces the previously added
- * restriction(s), if any.
- *
- * @param predicate -
- * a simple or compound conditional predicate
- * @return the modified QueryDefinition instance
- */
QueryDefinition where(Predicate predicate);
- /**
- * Specify the items of the select list that are used in ordering the query
- * results. Replaces the previous order-by list, if any.
- *
- * @param orderByItems -
- * one or more OrderByItem instances
- * @return the modified QueryDefinition instance
- */
QueryDefinition orderBy(OrderByItem... orderByItems);
- /**
- * Specify the items of the select list that are used in ordering the query
- * results. Replaces the previous order-by list, if any.
- *
- * @param orderByItemList -
- * a list containing one or more OrderByItem instances
- * @return the modified QueryDefinition instance
- */
QueryDefinition orderBy(List<OrderByItem> orderByItemList);
- /**
- * Specify the items that are used to form groups over the query results.
- * Replaces the previous group-by list, if any.
- *
- * @param pathExprs
- * @return the modified QueryDefinition instance
- */
QueryDefinition groupBy(PathExpression... pathExprs);
- /**
- * Specify the items that are used to form groups over the query results.
- * Replaces the previous group-by list, if any.
- *
- * @param pathExprList
- * @return the modified QueryDefinition instance
- */
QueryDefinition groupBy(List<PathExpression> pathExprList);
- /**
- * Specify the restrictions over the groups of a query. Replaces the
- * previous having restriction(s), if any.
- *
- * @param predicate
- * @return the modified QueryDefinition Instance
- */
QueryDefinition having(Predicate predicate);
- /**
- * Specify that a constructor for the given class is to be applied to the
- * corresponding query results after the query is executed. The class must
- * have a constructor that accepts the Java argument types corresponding to
- * the given select items.
- *
- * @param cls -
- * a class with the correponding constructor
- * @param args -
- * select items that correspond to result types that are valid as
- * arguments to the constructor
- * @result SelectItem instance representing the constructor
- */
SelectItem newInstance(Class cls, SelectItem... args);
- /**
- * Use the query definition instance as a subquery in an exists predicate.
- *
- * @return the resulting predicate
- */
Predicate exists();
- /**
- * Use the query definition object in a subquery in an all expression.
- *
- * @return the resulting Subquery
- */
Subquery all();
- /**
- * Use the query definition object in a subquery in an any expression.
- *
- * @return the resulting Subquery
- */
Subquery any();
- /**
- * Use the query definition object in a subquery in a some expression.
- *
- * @return the resulting Subquery
- */
Subquery some();
- /**
- * Create an empty general case expression. A general case expression is of
- * the form:
- * <p/>
- * generalCase() .when(conditional-predicate).then(scalar-expression)
- * .when(conditional-predicate).then(scalar-expression) ...
- * .elseCase(scalar-expression)
- *
- * @return empty general case expression
- */
CaseExpression generalCase();
- /**
- * Create a simple case expression with the given case operand. A simple
- * case expression is of the form:
- * <p/>
- * simpleCase(case-operand) .when(scalar-expression).then(scalar-expression)
- * .when(scalar-expression).then(scalar-expression) ...
- * .elseCase(scalar-expression)
- *
- * @param caseOperand -
- * expression used for testing against the when scalar
- * expressions
- * @return case expression with the given case operand
- */
CaseExpression simpleCase(Expression caseOperand);
- /**
- * Create a simple case expression with the given case operand. A simple
- * case expression is of the form:
- * <p/>
- * simpleCase(case-operand) .when(scalar-expression).then(scalar-expression)
- * .when(scalar-expression).then(scalar-expression) ...
- * .elseCase(scalar-expression)
- *
- * @param caseOperand -
- * numeric value used for testing against the when scalar
- * expressions
- * @return case expression with the given case operand
- */
CaseExpression simpleCase(Number caseOperand);
- /**
- * Create a simple case expression with the given case operand. A simple
- * case expression is of the form:
- * <p/>
- * simpleCase(case-operand) .when(scalar-expression).then(scalar-expression)
- * .when(scalar-expression).then(scalar-expression) ...
- * .elseCase(scalar-expression)
- *
- * @param caseOperand -
- * value used for testing against the when scalar expressions
- * @return case expression with the given case operand
- */
CaseExpression simpleCase(String caseOperand);
- /**
- * Create a simple case expression with the given case operand. A simple
- * case expression is of the form:
- * <p/>
- * simpleCase(case-operand) .when(scalar-expression).then(scalar-expression)
- * .when(scalar-expression).then(scalar-expression) ...
- * .elseCase(scalar-expression)
- *
- * @param caseOperand -
- * value used for testing against the when scalar expressions
- * @return case expression with the given case operand
- */
CaseExpression simpleCase(Date caseOperand);
- /**
- * Create a simple case expression with the given case operand. A simple
- * case expression is of the form:
- * <p/>
- * simpleCase(case-operand) .when(scalar-expression).then(scalar-expression)
- * .when(scalar-expression).then(scalar-expression) ...
- * .elseCase(scalar-expression)
- *
- * @param caseOperand -
- * value used for testing against the when scalar expressions
- * @return case expression with the given case operand
- */
CaseExpression simpleCase(Calendar caseOperand);
- /**
- * Create a simple case expression with the given case operand. A simple
- * case expression is of the form:
- * <p/>
- * simpleCase(case-operand) .when(scalar-expression).then(scalar-expression)
- * .when(scalar-expression).then(scalar-expression) ...
- * .elseCase(scalar-expression)
- *
- * @param caseOperand -
- * value used for testing against the when scalar expressions
- * @return case expression with the given case operand
- */
CaseExpression simpleCase(Class caseOperand);
- /**
- * Create a simple case expression with the given case operand. A simple
- * case expression is of the form:
- * <p/>
- * simpleCase(case-operand) .when(scalar-expression).then(scalar-expression)
- * .when(scalar-expression).then(scalar-expression) ...
- * .elseCase(scalar-expression)
- *
- * @param caseOperand -
- * value used for testing against the when scalar expressions
- * @return case expression with the given case operand
- */
CaseExpression simpleCase(Enum<?> caseOperand);
- /**
- * coalesce This is equivalent to a case expression that returns null if all
- * its arguments evaluate to null, and the value of its first non-null
- * argument otherwise.
- *
- * @param exp -
- * expressions to be used for testing against null
- * @return Expression corresponding to the given coalesce expression
- */
Expression coalesce(Expression... exp);
- /**
- * coalesce This is equivalent to a case expression that returns null if all
- * its arguments evaluate to null, and the value of its first non-null
- * argument otherwise.
- *
- * @param exp -
- * expressions to be used for testing against null
- * @return Expression corresponding to the given coalesce expression
- */
Expression coalesce(String... exp);
- /**
- * coalesce This is equivalent to a case expression that returns null if all
- * its arguments evaluate to null, and the value of its first non-null
- * argument otherwise.
- *
- * @param exp -
- * expressions to be used for testing against null
- * @return Expression corresponding to the given coalesce expression
- */
Expression coalesce(Date... exp);
- /**
- * coalesce This is equivalent to a case expression that returns null if all
- * its arguments evaluate to null, and the value of its first non-null
- * argument otherwise.
- *
- * @param exp -
- * expressions to be used for testing against null
- * @return Expression corresponding to the given coalesce expression
- */
Expression coalesce(Calendar... exp);
- /**
- * nullif This is equivalent to a case expression that tests whether its
- * arguments are equal, returning null if they are and the value of the
- * first expression if they are not.
- *
- * @param exp1
- * @param exp2
- * @return Expression corresponding to the given nullif expression
- */
Expression nullif(Expression exp1, Expression exp2);
- /**
- * nullif This is equivalent to a case expression that tests whether its
- * arguments are equal, returning null if they are and the value of the
- * first expression if they are not.
- *
- * @param arg1
- * @param arg2
- * @return Expression corresponding to the given nullif expression
- */
Expression nullif(Number arg1, Number arg2);
- /**
- * nullif This is equivalent to a case expression that tests whether its
- * arguments are equal, returning null if they are and the value of the
- * first expression if they are not.
- *
- * @param arg1
- * @param arg2 Criteria API Java Persistence 2.0, Public Review Draft
- * Criteria API Interfaces 10/31/08 158 JSR-317 Public Review
- * Draft Sun Microsystems, Inc.
- * @return Expression corresponding to the given nullif expression
- */
Expression nullif(String arg1, String arg2);
- /**
- * nullif This is equivalent to a case expression that tests whether its
- * arguments are equal, returning null if they are and the value of the
- * first expression if they are not.
- *
- * @param arg1
- * @param arg2
- * @return Expression corresponding to the given nullif expression
- */
Expression nullif(Date arg1, Date arg2);
- /**
- * nullif This is equivalent to a case expression that tests whether its
- * arguments are equal, returning null if they are and the value of the
- * first expression if they are not.
- *
- * @param arg1
- * @param arg2
- * @return Expression corresponding to the given nullif expression
- */
Expression nullif(Calendar arg1, Calendar arg2);
- /**
- * nullif This is equivalent to a case expression that tests whether its
- * arguments are equal, returning null if they are and the value of the
- * first expression if they are not.
- *
- * @param arg1
- * @param arg2
- * @return Expression corresponding to the given nullif expression
- */
Expression nullif(Class arg1, Class arg2);
- /**
- * nullif This is equivalent to a case expression that tests whether its
- * arguments are equal, returning null if they are and the value of the
- * first expression if they are not.
- *
- * @param arg1
- * @param arg2
- * @return Expression corresponding to the given nullif expression
- */
Expression nullif(Enum<?> arg1, Enum<?> arg2);
- /**
- * Create a predicate value from the given boolean.
- *
- * @param b boolean value
- * @return a true or false predicate
- */
Predicate predicate(boolean b);
- /**
- * Create an Expression corresponding to the current time on the database
- * server at the time of query execution.
- *
- * @return the corresponding Expression
- */
Expression currentTime();
- /**
- * Create an Expression corresponding to the current date on the database
- * server at the time of query execution.
- *
- * @return the corresponding Expression
- */
Expression currentDate();
- /**
- * Create an Expression corresponding to the current timestamp on the
- * database server at the time of query execution.
- *
- * @return the corresponding Expression
- */
Expression currentTimestamp();
- /**
- * Create an Expression corresponding to a String value.
- *
- * @param s -
- * string value
- * @return the corresponding Expression literal
- */
Expression literal(String s);
- /**
- * Create an Expression corresponding to a numeric value.
- *
- * @param n -
- * numeric value
- * @return the corresponding Expression literal
- */
Expression literal(Number n);
- /**
- * Create an Expression corresponding to a boolean value.
- *
- * @param b -
- * boolean value
- * @return the corresponding Expression literal
- */
Expression literal(boolean b);
- /**
- * Create an Expression corresponding to a Calendar value.
- *
- * @param c -
- * Calendar value
- * @return the corresponding Expression literal
- */
Expression literal(Calendar c);
- /**
- * Create an Expression corresponding to a Date value.
- *
- * @param d -
- * Date value
- * @return the corresponding Expression literal
- */
Expression literal(Date d);
- /**
- * Create an Expression corresponding to a character value.
- *
- * @param character value
- * @return the corresponding Expression literal
- */
Expression literal(char c);
- /**
- * Create an Expression corresponding to an entity class.
- *
- * @param cls -
- * entity class
- * @return the corresponding Expression literal
- */
Expression literal(Class cls);
- /**
- * Create an Expression corresponding to an enum.
- *
- * @param e -
- * enum
- * @return the corresponding Expression literal
- */
Expression literal(Enum<?> e);
- /**
- * Create an Expression corresponding to a null value.
- *
- * @return the corresponding Expression literal
- */
Expression nullLiteral();
- /**
- * Specify use of a parameter of the given name.
- *
- * @param parameter name
- * @return an Expression corresponding to a named parameter
- */
Expression param(String name);
-}
\ No newline at end of file
+}
Modified: geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/SelectItem.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/SelectItem.java?rev=723243&r1=723242&r2=723243&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/SelectItem.java (original)
+++ geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/SelectItem.java Thu Dec 4 00:42:18 2008
@@ -24,27 +24,9 @@
//
package javax.persistence;
-/**
- * SelectItem instances are used in specifying the query's select list.
- * <p/>
- * The methods of this interface are used to define arguments that can be passed
- * to the orderBy method for use in ordering selected items of the query result.
- */
public interface SelectItem extends OrderByItem {
- /**
- * Return an OrderByItem referencing the SelectItem and specifying ascending
- * ordering. The SelectItem must correspond to an orderable value.
- *
- * @return order-by item
- */
+
OrderByItem asc();
- /**
- * Return an OrderByItem referencing the SelectItem and specifying
- * descending ordering. The SelectItem must correspond to an orderable
- * value.
- *
- * @return order-by item
- */
OrderByItem desc();
}
Modified: geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/Subquery.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/Subquery.java?rev=723243&r1=723242&r2=723243&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/Subquery.java (original)
+++ geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/Subquery.java Thu Dec 4 00:42:18 2008
@@ -24,8 +24,5 @@
//
package javax.persistence;
-/**
- * Instances of this interface can be used as subqueries.
- */
public interface Subquery extends PredicateOperand {
}
Modified: geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/TrimSpec.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/TrimSpec.java?rev=723243&r1=723242&r2=723243&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/TrimSpec.java (original)
+++ geronimo/specs/trunk/geronimo-jpa_2.0_spec/src/main/java/javax/persistence/TrimSpec.java Thu Dec 4 00:42:18 2008
@@ -24,9 +24,6 @@
//
package javax.persistence;
-/**
- * Used to specify the trimming of strings
- */
public enum TrimSpec {
LEADING, TRAILING, BOTH
}