|
EclipseLink 2.4.2, build 'v20130514-5956486' API Reference | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.eclipse.persistence.jpa.jpql.Resolver
org.eclipse.persistence.jpa.jpql.FromSubqueryResolver
public class FromSubqueryResolver
This Resolver
wraps a subquery that is used as the "root" object in a query's declaration.
Example:
SELECT e.firstName
FROM Employee e, (SELECT count(e2), e2.firstName FROM Employee e2) e3
WHERE e.firstName = e3.firstName
Nested Class Summary | |
---|---|
protected class |
FromSubqueryResolver.VirtualManagedType
This IManagedType represents a virtual managed type where its content will be derived
from the subquery. |
protected class |
FromSubqueryResolver.VirtualMapping
This virtual IMapping wraps one of the select items. |
protected class |
FromSubqueryResolver.VirtualMappingBuilder
This visitor will traverse the SELECT clause and create virtual mappings
for the state field path expressions and any expression aliased with a result variable. |
Constructor Summary | |
---|---|
FromSubqueryResolver(Resolver parent,
JPQLQueryContext queryContext,
SimpleSelectStatement subquery)
Creates a new FromSubqueryResolver . |
Method Summary | |
---|---|
void |
accept(ResolverVisitor visitor)
Visits this Resolver by the given visitor . |
protected IType |
buildType()
Resolves the IType of the property handled by this Resolver . |
protected ITypeDeclaration |
buildTypeDeclaration()
Resolves the ITypeDeclaration of the property handled by this Resolver . |
IManagedType |
getManagedType()
Returns the IManagedType associated with the field handled by this Resolver . |
Methods inherited from class org.eclipse.persistence.jpa.jpql.Resolver |
---|
addChild, checkParent, getChild, getMapping, getParent, getParentManagedType, getParentMapping, getParentType, getParentTypeDeclaration, getProvider, getQuery, getType, getType, getType, getTypeDeclaration, getTypeHelper, getTypeRepository, isNullAllowed, setNullAllowed |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public FromSubqueryResolver(Resolver parent, JPQLQueryContext queryContext, SimpleSelectStatement subquery)
FromSubqueryResolver
.
parent
- The parent of this resolver, which is never null
queryContext
- The context used to query information about the application metadata and
cached informationsubquery
-
java.lang.NullPointerException
- If the parent is null
Method Detail |
---|
public void accept(ResolverVisitor visitor)
Resolver
by the given visitor
.
accept
in class Resolver
visitor
- The visitor
to visit this objectprotected IType buildType()
IType
of the property handled by this Resolver
.
buildType
in class Resolver
IType
that was resolved by this Resolver
or the IType
for IType.UNRESOLVABLE_TYPE
if it could not be resolvedprotected ITypeDeclaration buildTypeDeclaration()
ITypeDeclaration
of the property handled by this Resolver
.
buildTypeDeclaration
in class Resolver
ITypeDeclaration
that was resolved by this Resolver
or the
ITypeDeclaration
for IType.UNRESOLVABLE_TYPE
if it could not be resolvedpublic 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 Resolver
IManagedType
, if it could be resolved; null
otherwise
|
EclipseLink 2.4.2, build 'v20130514-5956486' API Reference | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |