Skip navigation links

Oracle Fusion Middleware Java API Reference for Oracle ADF Model
11g Release 1 (11.1.1.9.0)

E52932-01


oracle.jbo
Class AbstractCompileContext

java.lang.Object
  extended by groovy.lang.GroovyObjectSupport
      extended by groovy.lang.Binding
          extended by oracle.jbo.AbstractCompileContext

All Implemented Interfaces:
groovy.lang.GroovyObject, ExprCompileContext
Direct Known Subclasses:
EvaluateExprCompileContextImpl

public abstract class AbstractCompileContext
extends groovy.lang.Binding
implements ExprCompileContext

An abstract implementation of an ExprCompileContext. The abstract context implements a strategy patter for method and variable resolution that is based upon the strategy that is used at script execute time.

Many of the abstract methods defined by this class are designed to return information about the compile context source. This source object usually represents the BC4J owner of the script that is compiling. At execute time it is frequently implemented by an oracle.jbo.Row. At compile time it is exepcted that it will be represented by a BC4J def object or its DT equivalent.

Note that many of the typing methods deal with String types rather than the type classes. This is intentional. Type classes are not available in all compile contexts (DT).

Since:
release specific (what release of product did this appear in)

Constructor Summary
AbstractCompileContext()
           

 

Method Summary
abstract  boolean canTypeCheck()
          Returns whether this compile context can be used for type checking.
protected  java.lang.Class[] classesFor(java.lang.String[] types)
           
protected  java.lang.Class classFor(java.lang.String type)
           
 ExprCompileContext getEnclosingContext()
          Returns a compile context that should be used to resolve any types that that are defined by the enclosing variable/property/method.
 org.codehaus.groovy.control.ErrorCollector getErrorCollector()
          Returns the error collector that was used during type checking.
abstract  ExprDef getExprDef()
          Return the definition of the expressio that is compiling.
 ExprTrustSupplier getExprTrustSupplier()
          Return the security policiy that is associated with this context.
abstract  java.lang.String getGlobalOperationReturnType(java.lang.String name, java.lang.String... argtypes)
          Return the type of the given global operations.
 java.lang.String getMethodReturnType(java.lang.String receiver, java.lang.String name, java.lang.String... argtypes)
          Return the return type of the given method.
abstract  java.lang.String getNewValueType()
          In validator contexts this returns the type of the new attribute or row.
abstract  java.lang.String getOldValueType()
          In validator contexts this returns the type of the new attribute or row.
 java.lang.String getPropertyType(java.lang.String objectType, java.lang.String name)
          Return the type of the given property.
protected  java.lang.String getReturnType(java.lang.Class receiver, java.lang.String name, java.lang.Class... argtypes)
           
protected  java.lang.String getReturnType(java.lang.String receiverType, java.lang.String name, java.lang.String... argtypes)
          Get the return type of the specified method on the specified receiver type.
abstract  java.lang.String getSourceAttributeType(java.lang.String name)
          Return the source attribute type.
abstract  java.lang.String getSourceMethodReturnType(java.lang.String name, java.lang.String... argtypes)
          Return the return type of a source method.
abstract  java.lang.String getSourceOperationReturnType(java.lang.String name, java.lang.String... argtypes)
          Return the return type of a source operation.
abstract  java.lang.String getSourcePropertyType(java.lang.String name)
          Return the source property type.
abstract  java.lang.String getSourceType()
          Return the source type of the current compile context.
 java.lang.String getVariableType(java.lang.String name)
          Return the type of the given variable.
protected  boolean isAssignableFrom(java.lang.Class intrf, java.lang.String type)
          Determines if the specified interface class is assignable from the type.
 boolean isRowAttribute(java.lang.String name)
          Returns whether the variable resolves to an row attribute.
 void setErrorCollector(org.codehaus.groovy.control.ErrorCollector errorCollector)
           

 

Methods inherited from class groovy.lang.Binding
getProperty, getVariable, getVariables, hasVariable, setProperty, setVariable

 

Methods inherited from class groovy.lang.GroovyObjectSupport
getMetaClass, invokeMethod, setMetaClass

 

Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

 

Constructor Detail

AbstractCompileContext

public AbstractCompileContext()

Method Detail

getExprDef

public abstract ExprDef getExprDef()
Description copied from interface: ExprCompileContext
Return the definition of the expressio that is compiling.
Specified by:
getExprDef in interface ExprCompileContext

canTypeCheck

public abstract boolean canTypeCheck()
Description copied from interface: ExprCompileContext
Returns whether this compile context can be used for type checking.
Specified by:
canTypeCheck in interface ExprCompileContext

getPropertyType

public java.lang.String getPropertyType(java.lang.String objectType,
                                        java.lang.String name)
Description copied from interface: ExprCompileContext
Return the type of the given property.

Invoked by the type checker if it cannot resolve the specifid property.

Specified by:
getPropertyType in interface ExprCompileContext

getVariableType

public java.lang.String getVariableType(java.lang.String name)
Description copied from interface: ExprCompileContext
Return the type of the given variable.

Invoked by the type checker if it cannot resolve the specified variable.

Specified by:
getVariableType in interface ExprCompileContext

isRowAttribute

public boolean isRowAttribute(java.lang.String name)
Description copied from interface: ExprCompileContext
Returns whether the variable resolves to an row attribute.

Invoked by the type checker to perform additional validation of attribute variables.

Specified by:
isRowAttribute in interface ExprCompileContext

getMethodReturnType

public java.lang.String getMethodReturnType(java.lang.String receiver,
                                            java.lang.String name,
                                            java.lang.String... argtypes)
Description copied from interface: ExprCompileContext
Return the return type of the given method.

Invoked by the type checker if it cannot resolve the specified method.

Specified by:
getMethodReturnType in interface ExprCompileContext

getGlobalOperationReturnType

public abstract java.lang.String getGlobalOperationReturnType(java.lang.String name,
                                                              java.lang.String... argtypes)
Description copied from interface: ExprCompileContext
Return the type of the given global operations.
Specified by:
getGlobalOperationReturnType in interface ExprCompileContext

getSourceType

public abstract java.lang.String getSourceType()
Return the source type of the current compile context.

getSourceAttributeType

public abstract java.lang.String getSourceAttributeType(java.lang.String name)
Return the source attribute type. Many sources like a ViewObject definition may define named attributes. This returns the type of a named attribute.

getSourcePropertyType

public abstract java.lang.String getSourcePropertyType(java.lang.String name)
Return the source property type. This is usually a bean property of the source.

getSourceMethodReturnType

public abstract java.lang.String getSourceMethodReturnType(java.lang.String name,
                                                           java.lang.String... argtypes)
Return the return type of a source method. Many sources may also define custom interfaces (like a row class). This returns the return type of a source's custom interface.

getSourceOperationReturnType

public abstract java.lang.String getSourceOperationReturnType(java.lang.String name,
                                                              java.lang.String... argtypes)
Return the return type of a source operation. Many sources may declare object functions (operations). The returns the return type of a source's operation.

getNewValueType

public abstract java.lang.String getNewValueType()
In validator contexts this returns the type of the new attribute or row.

getOldValueType

public abstract java.lang.String getOldValueType()
In validator contexts this returns the type of the new attribute or row.

getExprTrustSupplier

public ExprTrustSupplier getExprTrustSupplier()
Description copied from interface: ExprCompileContext
Return the security policiy that is associated with this context.
Specified by:
getExprTrustSupplier in interface ExprCompileContext

getEnclosingContext

public ExprCompileContext getEnclosingContext()
Description copied from interface: ExprCompileContext
Returns a compile context that should be used to resolve any types that that are defined by the enclosing variable/property/method.

This will be invoked once by the type checker after it resolves an unbound variable/property/method. This method may be used to pass a compile context back to the compile context that will be later used to evaluate any other types in the enclosing context.

Specified by:
getEnclosingContext in interface ExprCompileContext

getErrorCollector

public org.codehaus.groovy.control.ErrorCollector getErrorCollector()
Description copied from interface: ExprCompileContext
Returns the error collector that was used during type checking. This is set by the type checker and will not be available until after the type checking phase is complete.

Applications may use the ErrorCollector to get a list of errors/warnings that were discovered during type checking.

Specified by:
getErrorCollector in interface ExprCompileContext

setErrorCollector

public void setErrorCollector(org.codehaus.groovy.control.ErrorCollector errorCollector)
Specified by:
setErrorCollector in interface ExprCompileContext

getReturnType

protected java.lang.String getReturnType(java.lang.String receiverType,
                                         java.lang.String name,
                                         java.lang.String... argtypes)
Get the return type of the specified method on the specified receiver type.

The default implementation uses the groovy MOP to find the method on the receiver class. Concrete implementations may override this method if the receiver class is not available.

Parameters:
receiverType - the type of the Object that will receive the method invocation
name - the name of the method that will be invoked
argtypes - the types of arguments that will be passed

getReturnType

protected java.lang.String getReturnType(java.lang.Class receiver,
                                         java.lang.String name,
                                         java.lang.Class... argtypes)

isAssignableFrom

protected boolean isAssignableFrom(java.lang.Class intrf,
                                   java.lang.String type)
Determines if the specified interface class is assignable from the type.

The assignable rules should be java.lang.Class. The default implementation looks up the Class to determine if it is assignable. Concrete implementations that may not have the type Class available may override this to perform there own checking.

Parameters:
intrf - the interface to check for
type - the type to be checked

classFor

protected java.lang.Class classFor(java.lang.String type)

classesFor

protected java.lang.Class[] classesFor(java.lang.String[] types)

Skip navigation links

Oracle Fusion Middleware Java API Reference for Oracle ADF Model
11g Release 1 (11.1.1.9.0)

E52932-01


Copyright © 1997, 2015, Oracle. All rights reserved.