public class NewInvocationNode extends MethodCallNode
Modifier and Type | Field and Description |
---|---|
private boolean |
delimitedIdentifier |
private boolean |
isBuiltinVTI |
private boolean |
singleInstantiation |
actualMethodReturnType, internalCall, javaClassName, method, methodName, methodParameterTypes, methodParms, routineInfo, signature
forCallStatement, jsqlType
AUTOINCREMENT_CREATE_MODIFY, AUTOINCREMENT_INC_INDEX, AUTOINCREMENT_IS_AUTOINCREMENT_INDEX, AUTOINCREMENT_START_INDEX, isPrivilegeCollectionRequired
Constructor and Description |
---|
NewInvocationNode() |
Modifier and Type | Method and Description |
---|---|
protected boolean |
assignableTo(java.lang.String toClassName)
Is this class assignable to the specified class?
|
JavaValueNode |
bindExpression(FromList fromList,
SubqueryList subqueryList,
java.util.List aggregateVector)
Bind this expression.
|
boolean |
categorize(JBitSet referencedTabs,
boolean simplePredsOnly)
Categorize this predicate.
|
protected java.lang.reflect.Member |
findPublicMethod(java.lang.String methodName,
boolean staticMethod)
Is this class have a public method with the specified signiture
This is useful for the VTI interface where we want to see
if the class has the option static method for returning the
ResultSetMetaData.
|
void |
generateExpression(ExpressionClassBuilder acb,
MethodBuilder mb)
Do code generation for this method call
|
void |
init(java.lang.Object javaClassName,
java.lang.Object params,
java.lang.Object delimitedIdentifier)
Initializer for a NewInvocationNode.
|
void |
init(java.lang.Object vtiTableFuncName,
java.lang.Object tableDescriptor,
java.lang.Object params,
java.lang.Object delimitedIdentifier)
Initialize a query tree node.
|
boolean |
isBuiltinVTI()
Report whether this node represents a builtin VTI.
|
(package private) void |
setSingleInstantiation()
Mark this node as only needing to
to a single instantiation.
|
acceptChildren, addParms, areParametersQueryInvariant, bindParameters, generateOneParameter, generateParameters, getCorrelationTables, getDataType, getFirstVarargIdx, getIsParam, getJavaClassName, getMethodName, getMethodParameterClasses, getMethodParms, getObjectSignature, getObjectTypeName, getOrderableVariantType, getParameterTypeName, getPrimitiveSignature, getResolvedMethod, getRoutineArgIdx, getRoutineArgIdx, getRoutineInfo, hasVarargs, init, isVararg, preprocess, printSubNodes, remapColumnReferencesToExpressions, resolveMethodCall, setNullParameterInfo, someParametersAreNull, stripOneArrayLevel, throwNoMethodFound, toString
castToPrimitive, checkReliability, generate, generateReceiver, generateReceiver, getCollationType, getConstantValueAsObject, getJavaTypeName, getJSQLType, getPrimitiveTypeName, getReceiverExpression, isPrimitiveType, mapToTypeID, markForCallStatement, markReturnValueDiscarded, mustCastToPrimitive, returnValueDiscarded, returnValueToSQLDomain, setCollationType, setJavaTypeName, valueReturnedToSQLDomain
accept, bindOffsetFetch, bindRowMultiSet, bindUserCatalogType, bindUserType, checkReliability, checkReliability, convertDefaultNode, createTypeDependency, debugFlush, debugPrint, disablePrivilegeCollection, formatNodeString, foundString, generateAuthorizeCheck, getBeginOffset, getClassFactory, getCompilerContext, getContextManager, getCursorInfo, getDataDictionary, getDependencyManager, getEndOffset, getExecutionFactory, getGenericConstantActionFactory, getIntProperty, getLanguageConnectionContext, getNodeFactory, getNodeType, getNullNode, getParameterTypes, getSchemaDescriptor, getSchemaDescriptor, getStatementType, getTableDescriptor, getTypeCompiler, init, init, init, init, init, init, init, init, init, init, init, isAtomic, isInstanceOf, isPrivilegeCollectionRequired, isSessionSchema, isSessionSchema, makeConstantAction, makeTableName, makeTableName, nodeHeader, orReliability, parseStatement, printLabel, referencesSessionSchema, resolveTableToSynonym, setBeginOffset, setContextManager, setEndOffset, setNodeType, setRefActionInfo, stackPrint, treePrint, treePrint, verifyClassExist
private boolean singleInstantiation
private boolean delimitedIdentifier
private boolean isBuiltinVTI
public void init(java.lang.Object javaClassName, java.lang.Object params, java.lang.Object delimitedIdentifier) throws StandardException
init
in interface Node
init
in class QueryTreeNode
StandardException
- Thrown on errorpublic void init(java.lang.Object vtiTableFuncName, java.lang.Object tableDescriptor, java.lang.Object params, java.lang.Object delimitedIdentifier) throws StandardException
QueryTreeNode
init
in interface Node
init
in class QueryTreeNode
StandardException
- Thrown on errorpublic boolean isBuiltinVTI()
void setSingleInstantiation()
public JavaValueNode bindExpression(FromList fromList, SubqueryList subqueryList, java.util.List aggregateVector) throws StandardException
bindExpression
in class JavaValueNode
fromList
- The FROM list for the query this
expression is in, for binding columns.subqueryList
- The subquery list being built as we find SubqueryNodesaggregateVector
- The aggregate vector being built as we find AggregateNodesStandardException
- Thrown on errorValueNode.bindExpression(org.apache.derby.impl.sql.compile.FromList, org.apache.derby.impl.sql.compile.SubqueryList, java.util.List)
public boolean categorize(JBitSet referencedTabs, boolean simplePredsOnly) throws StandardException
categorize
in class MethodCallNode
referencedTabs
- JBitSet with bit map of referenced FromTablessimplePredsOnly
- Whether or not to consider method
calls, field references and conditional nodes
when building bit mapStandardException
- Thrown on errorValueNode.categorize(org.apache.derby.iapi.util.JBitSet, boolean)
protected boolean assignableTo(java.lang.String toClassName) throws StandardException
toClassName
- The java class name we want to assign toStandardException
- Thrown on errorprotected java.lang.reflect.Member findPublicMethod(java.lang.String methodName, boolean staticMethod) throws StandardException
methodName
- The method name we are looking forstaticMethod
- Whether or not the method we are looking for is staticStandardException
- Thrown on errorpublic void generateExpression(ExpressionClassBuilder acb, MethodBuilder mb) throws StandardException
generateExpression
in class JavaValueNode
acb
- The ExpressionClassBuilder for the class we're generatingmb
- The method the expression will go intoStandardException
- Thrown on errorApache Derby V10.10 Internals - Copyright © 2004,2013 The Apache Software Foundation. All Rights Reserved.