public class SubqueryEntityResolver extends Resolver
Resolver retrieves the type for an abstract schema name (entity name) if it can
be resolved otherwise a derived path will be assumed. This Resolver is used within a
subquery and it handles the following two cases.
The "root" object in the subquery is an unqualified derived path:
UPDATE Employee SET name = 'JPQL'
WHERE (SELECT a FROM addr a)
and
The "root" object in the subquery is an entity:
UPDATE Employee SET name = 'JPQL'
WHERE (SELECT a FROM Address a)| Constructor and Description |
|---|
SubqueryEntityResolver(Resolver parent,
JPQLQueryContext queryContext,
AbstractSchemaName abstractSchemaName)
Creates a new
DerivedPathResolver. |
| Modifier and Type | Method and Description |
|---|---|
void |
accept(ResolverVisitor visitor)
|
java.lang.String |
getAbstractSchemaName()
Returns the name of the entity to resolve.
|
IManagedType |
getManagedType()
Returns the
IManagedType associated with the field handled by this Resolver. |
IMapping |
getMapping()
Returns the
IMapping for the wrapped field. |
java.lang.String |
toString() |
getParent, getType, isNullAllowed, setNullAllowedpublic SubqueryEntityResolver(Resolver parent, JPQLQueryContext queryContext, AbstractSchemaName abstractSchemaName)
DerivedPathResolver.parent - The parent Resolver, which is never nullqueryContext - The JPQLQueryContext for the subqueryThe - AbstractSchemaName holding onto the the name of the entitypublic void accept(ResolverVisitor visitor)
public java.lang.String getAbstractSchemaName()
nullpublic IManagedType getManagedType()
IManagedType associated with the field handled by this Resolver.
If this Resolver does not handle a field that has a IManagedType, then
null should be returned.
For example: "SELECT e FROM Employee e", the Resolver for
e would be returning the IManagedType for Employee.
getManagedType in class ResolverIManagedType, if it could be resolved; null otherwisepublic IMapping getMapping()
IMapping for the wrapped field.getMapping in class ResolverIMapping or null if none existspublic java.lang.String toString()
toString in class java.lang.ObjectEclipseLink 2.4.2, "build v20130514-5956486" API Reference