| java.lang.Object org.apache.derby.iapi.sql.compile.NodeFactory org.apache.derby.impl.sql.compile.NodeFactoryImpl
NodeFactoryImpl | public class NodeFactoryImpl extends NodeFactory implements ModuleControl,ModuleSupportable(Code) | | This class is a factory for QueryTreeNode nodes. It exists to provide
methods to generate new nodes without having to call new directly.
In the future, it may implement caching of nodes, as well, to avoid
memory management and garbage collection.
author: Jeff Lichtman |
Constructor Summary | |
public | NodeFactoryImpl() Every Module needs a public niladic constructor. |
Method Summary | |
public void | boot(boolean create, Properties startParams) | public boolean | canSupport(Properties startParams) | public Boolean | doJoinOrderOptimization() | public QueryTreeNode | getCreateAliasNode(Object aliasName, Object targetName, Object aliasSpecificInfo, char aliasType, Boolean delimitedIdentifier, ContextManager cm) Get one of the several types of create alias nodes. | public QueryTreeNode | getNode(int nodeType, ContextManager cm) | public ResultSetNode | mapTableAsVTI(TableDescriptor td, String vtiClass, String correlationName, ResultColumnList resultColumns, Properties tableProperties, ContextManager cm) Return a node that represents invocation of the virtual table
for the given table descriptor using the passed in vti class name.
Currently only handles no argument vtis corresponding to a subset
of the diagnostic tables. | protected String | nodeName(int nodeType) | public void | stop() |
NodeFactoryImpl | public NodeFactoryImpl()(Code) | | Every Module needs a public niladic constructor. It just does.
|
getCreateAliasNode | public QueryTreeNode getCreateAliasNode(Object aliasName, Object targetName, Object aliasSpecificInfo, char aliasType, Boolean delimitedIdentifier, ContextManager cm) throws StandardException(Code) | | Get one of the several types of create alias nodes. Carved out of parser
so this could be used by ALTER PUBLICATION.
Parameters: aliasName - The name of the alias Parameters: targetName - The full path/method name Parameters: aliasSpecificInfo - The full path of the target method name,if any Parameters: aliasType - The type of alias to create Parameters: delimitedIdentifier - Whether or not to treat the class nameas a delimited identifier if trying toresolve it as a class alias. Parameters: cm - A ContextManager A CreateAliasNode matching the given parameters exception: StandardException - Thrown on error |
mapTableAsVTI | public ResultSetNode mapTableAsVTI(TableDescriptor td, String vtiClass, String correlationName, ResultColumnList resultColumns, Properties tableProperties, ContextManager cm) throws StandardException(Code) | | Return a node that represents invocation of the virtual table
for the given table descriptor using the passed in vti class name.
Currently only handles no argument vtis corresponding to a subset
of the diagnostic tables. (e.g. lock_table).
The node returned is a FROM_VTI node with a passed in NEW_INVOCATION_NODE
representing the class, with no arguments.
Other attributes of the original FROM_TABLE node (such as resultColumns)
are passed into the FROM_VTI node.
|
nodeName | protected String nodeName(int nodeType) throws StandardException(Code) | | Translate a node type from C_NodeTypes to a class name
Parameters: nodeType - A node type identifier from C_NodeTypes exception: StandardException - Thrown on error |
Fields inherited from org.apache.derby.iapi.sql.compile.NodeFactory | final public static String MODULE(Code)(Java Doc)
|
Methods inherited from org.apache.derby.iapi.sql.compile.NodeFactory | abstract public Boolean doJoinOrderOptimization()(Code)(Java Doc) abstract public QueryTreeNode getCreateAliasNode(Object aliasName, Object targetName, Object aliasSpecificInfo, char aliasType, Boolean delimitedIdentifier, ContextManager cm) throws StandardException(Code)(Java Doc) abstract public QueryTreeNode getNode(int nodeType, ContextManager cm) throws StandardException(Code)(Java Doc) final public QueryTreeNode getNode(int nodeType, Object arg1, ContextManager cm) throws StandardException(Code)(Java Doc) final public QueryTreeNode getNode(int nodeType, Object arg1, Object arg2, ContextManager cm) throws StandardException(Code)(Java Doc) final public QueryTreeNode getNode(int nodeType, Object arg1, Object arg2, Object arg3, ContextManager cm) throws StandardException(Code)(Java Doc) public QueryTreeNode getNode(int nodeType, Object arg1, Object arg2, Object arg3, Object arg4, ContextManager cm) throws StandardException(Code)(Java Doc) public QueryTreeNode getNode(int nodeType, Object arg1, Object arg2, Object arg3, Object arg4, Object arg5, ContextManager cm) throws StandardException(Code)(Java Doc) final public QueryTreeNode getNode(int nodeType, Object arg1, Object arg2, Object arg3, Object arg4, Object arg5, Object arg6, ContextManager cm) throws StandardException(Code)(Java Doc) final public QueryTreeNode getNode(int nodeType, Object arg1, Object arg2, Object arg3, Object arg4, Object arg5, Object arg6, Object arg7, ContextManager cm) throws StandardException(Code)(Java Doc) final public QueryTreeNode getNode(int nodeType, Object arg1, Object arg2, Object arg3, Object arg4, Object arg5, Object arg6, Object arg7, Object arg8, ContextManager cm) throws StandardException(Code)(Java Doc) final public QueryTreeNode getNode(int nodeType, Object arg1, Object arg2, Object arg3, Object arg4, Object arg5, Object arg6, Object arg7, Object arg8, Object arg9, ContextManager cm) throws StandardException(Code)(Java Doc) final public QueryTreeNode getNode(int nodeType, Object arg1, Object arg2, Object arg3, Object arg4, Object arg5, Object arg6, Object arg7, Object arg8, Object arg9, Object arg10, ContextManager cm) throws StandardException(Code)(Java Doc) final public QueryTreeNode getNode(int nodeType, Object arg1, Object arg2, Object arg3, Object arg4, Object arg5, Object arg6, Object arg7, Object arg8, Object arg9, Object arg10, Object arg11, ContextManager cm) throws StandardException(Code)(Java Doc) final public QueryTreeNode getNode(int nodeType, Object arg1, Object arg2, Object arg3, Object arg4, Object arg5, Object arg6, Object arg7, Object arg8, Object arg9, Object arg10, Object arg11, Object arg12, ContextManager cm) throws StandardException(Code)(Java Doc) final public QueryTreeNode getNode(int nodeType, Object arg1, Object arg2, Object arg3, Object arg4, Object arg5, Object arg6, Object arg7, Object arg8, Object arg9, Object arg10, Object arg11, Object arg12, Object arg13, ContextManager cm) throws StandardException(Code)(Java Doc) final public QueryTreeNode getNode(int nodeType, Object arg1, Object arg2, Object arg3, Object arg4, Object arg5, Object arg6, Object arg7, Object arg8, Object arg9, Object arg10, Object arg11, Object arg12, Object arg13, Object arg14, ContextManager cm) throws StandardException(Code)(Java Doc) abstract public ResultSetNode mapTableAsVTI(TableDescriptor td, String vtiClass, String correlationName, ResultColumnList resultColumns, Properties tableProperties, ContextManager cm) throws StandardException(Code)(Java Doc)
|
|
|