|
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 |
nullAllowedThis 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 |
parentThe parent of this resolver, which is never null. |
private java.util.Map<java.lang.String,Resolver> |
resolversThe cached Resolvers mapped with a variable name. |
private IType |
typeThe cached IType of the value to resolve. |
private ITypeDeclaration |
typeDeclarationThe 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 nulljava.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 object
final void addChild(java.lang.String variableName,
Resolver resolver)
Resolver.variableName - The key used to cache the given Resolverresolver - 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 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.
IManagedType, if it could be resolved; null otherwisepublic IMapping getMapping()
IMapping for the wrapped field.IMapping or null if none existspublic Resolver getParent()
Resolver.Resolverfinal 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.ITypefinal ITypeRepository getTypeRepository()
ITypespublic 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 | ||||||||