|
Oracle Fusion Middleware Java API Reference for Oracle TopLink 11g Release 1 (11.1.1) E28847-01 |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object
org.eclipse.persistence.jpa.internal.jpql.Resolver
public abstract class Resolver
A Resolver
is responsible to resolve a property by retrieving either the managed type, the mapping, the type and the type declaration depending on the type of resolver.
Field Summary | |
---|---|
private boolean |
nullAllowed This is only applicable to 1:1 relationships, and allows the target of the relationship to be null if there is no corresponding relationship in the database. |
private Resolver |
parent The parent of this resolver, which is never null . |
private java.util.Map<java.lang.String,Resolver> |
resolvers The cached Resolvers mapped with a variable name. |
private IType |
type The cached IType of the value to resolve. |
private ITypeDeclaration |
typeDeclaration The cached ITypeDeclaration of the value to resolve. |
Constructor Summary | |
---|---|
Resolver(Resolver parent) Creates a new Resolver . |
Method Summary | |
---|---|
abstract void |
accept(ResolverVisitor visitor) Visits this Resolver by the given visitor . |
(package private) void |
addChild(java.lang.String variableName, Resolver resolver) Caches the given Resolver . |
(package private) IType |
buildType() Resolves the IType of the property handled by this Resolver . |
(package private) abstract ITypeDeclaration |
buildTypeDeclaration() Resolves the ITypeDeclaration of the property handled by this Resolver . |
(package private) void |
checkParent(Resolver parent) |
(package private) Resolver |
getChild(java.lang.String variableName) Retrieves the child of this Resolver that has the given variable name. |
IManagedType |
getManagedType() Returns the IManagedType associated with the field handled by this Resolver . |
IMapping |
getMapping() Returns the IMapping for the wrapped field. |
Resolver |
getParent() Returns the parent of this Resolver . |
(package private) IManagedType |
getParentManagedType() Returns the managed type of the parent resolver. |
(package private) IMapping |
getParentMapping() Returns the IMapping of the parent resolver. |
(package private) IType |
getParentType() Returns the type of the parent resolver. |
(package private) ITypeDeclaration |
getParentTypeDeclaration() Returns the type declaration of the parent resolver. |
(package private) IManagedTypeProvider |
getProvider() Returns the provider of managed types. |
(package private) IQuery |
getQuery() Returns the external form representing the JPQL query. |
IType |
getType() Returns the IType of the field handled by this Resolver . |
(package private) IType |
getType(java.lang.Class<?> type) Returns the IType of the given Java type. |
(package private) IType |
getType(java.lang.String typeName) Retrieves the external class for the given fully qualified class name. |
(package private) ITypeDeclaration |
getTypeDeclaration() Returns the ITypeDeclaration of the field handled by this Resolver . |
(package private) TypeHelper |
getTypeHelper() Returns a helper that gives access to the most common types . |
(package private) ITypeRepository |
getTypeRepository() Returns the type repository for the application. |
boolean |
isNullAllowed() Determines whether the Expression to be created, which wraps the attribute or query key name allows the target of the 1:1 relationship to be null if there is no corresponding relationship in the database. |
void |
setNullAllowed(boolean nullAllowed) Sets whether the Expression to be created, which wraps the attribute or query key name allows the target of the 1:1 relationship to be null if there is no corresponding relationship in the database. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private boolean nullAllowed
null
if there is no corresponding relationship in the database.private final Resolver parent
null
.private java.util.Map<java.lang.String,Resolver> resolvers
Resolvers
mapped with a variable name.private IType type
IType
of the value to resolve.private ITypeDeclaration typeDeclaration
ITypeDeclaration
of the value to resolve.Constructor Detail |
---|
Resolver(Resolver parent)
Resolver
.
parent
- The parent of this resolver, which is never null
java.lang.NullPointerException
- If the parent is null
Method Detail |
---|
public abstract void accept(ResolverVisitor visitor)
Resolver
by the given visitor
.visitor
- The visitor
to visit this objectfinal void addChild(java.lang.String variableName, Resolver resolver)
Resolver
.variableName
- The key used to cache the given Resolver
resolver
- The Resolver
to cacheIType buildType()
IType
of the property handled by this Resolver
.IType
that was resolved by this Resolver
or the IType
for IType.UNRESOLVABLE_TYPE
if it could not be resolvedabstract ITypeDeclaration buildTypeDeclaration()
ITypeDeclaration
of the property handled by this Resolver
.ITypeDeclaration
that was resolved by this Resolver
or the ITypeDeclaration
for IType.UNRESOLVABLE_TYPE
if it could not be resolvedvoid checkParent(Resolver parent)
final Resolver getChild(java.lang.String variableName)
Resolver
that has the given variable name.variableName
- The name of the property that was cachedResolver
mapped with the given property name; otherwise null
public 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.
IManagedType
, if it could be resolved; null
otherwisepublic IMapping getMapping()
IMapping
for the wrapped field.IMapping
or null
if none existspublic Resolver getParent()
Resolver
.Resolver
final IManagedType getParentManagedType()
final IMapping getParentMapping()
IMapping
of the parent resolver.IMapping
of the parent resolverfinal IType getParentType()
final ITypeDeclaration getParentTypeDeclaration()
final IManagedTypeProvider getProvider()
IQuery getQuery()
public final IType getType()
IType
of the field handled by this Resolver
.IType
that was resolved by this Resolver
or the IType
for IType.UNRESOLVABLE_TYPE
if it could not be resolvedfinal IType getType(java.lang.Class<?> type)
IType
of the given Java type.type
- The Java type for which its external form will be returnedIType
representing the given Java typefinal IType getType(java.lang.String typeName)
name
- The fully qualified class name of the class to retrievefinal ITypeDeclaration getTypeDeclaration()
ITypeDeclaration
of the field handled by this Resolver
.ITypeDeclaration
that was resolved by this Resolver
or the ITypeDeclaration
for IType.UNRESOLVABLE_TYPE
if it could not be resolvedfinal TypeHelper getTypeHelper()
types
.IType
final ITypeRepository getTypeRepository()
ITypes
public final boolean isNullAllowed()
Expression
to be created, which wraps the attribute or query key name allows the target of the 1:1 relationship to be null
if there is no corresponding relationship in the database.true
to allow null
if the corresponding relationship in the database does not exists; false
otherwisepublic void setNullAllowed(boolean nullAllowed)
Expression
to be created, which wraps the attribute or query key name allows the target of the 1:1 relationship to be null
if there is no corresponding relationship in the database.nullAllowed
- true
to allow null
if the corresponding relationship in the database does not exists; false
otherwise
|
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |