org.hibernate.hql.internal.ast.tree
Class AbstractRestrictableStatement

java.lang.Object
  extended by antlr.BaseAST
      extended by antlr.CommonAST
          extended by org.hibernate.hql.internal.ast.tree.Node
              extended by org.hibernate.hql.internal.ast.tree.SqlNode
                  extended by org.hibernate.hql.internal.ast.tree.HqlSqlWalkerNode
                      extended by org.hibernate.hql.internal.ast.tree.AbstractStatement
                          extended by org.hibernate.hql.internal.ast.tree.AbstractRestrictableStatement
All Implemented Interfaces:
antlr.collections.AST, Serializable, DisplayableNode, InitializeableNode, RestrictableStatement, Statement
Direct Known Subclasses:
DeleteStatement, QueryNode, UpdateStatement

public abstract class AbstractRestrictableStatement
extends AbstractStatement
implements RestrictableStatement

Convenience implementation of RestrictableStatement to centralize common functionality.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class antlr.BaseAST
down, right
 
Constructor Summary
AbstractRestrictableStatement()
           
 
Method Summary
 FromClause getFromClause()
          Retreives the from-clause in effect for this statement.
protected abstract  CoreMessageLogger getLog()
           
 antlr.collections.AST getWhereClause()
          Retreives the where-clause defining the restriction(s) in effect for this statement.
protected abstract  int getWhereClauseParentTokenType()
           
 boolean hasWhereClause()
          Does this statement tree currently contain a where clause?
protected  antlr.collections.AST locateWhereClause()
           
 
Methods inherited from class org.hibernate.hql.internal.ast.tree.AbstractStatement
getDisplayText
 
Methods inherited from class org.hibernate.hql.internal.ast.tree.HqlSqlWalkerNode
getAliasGenerator, getASTFactory, getSessionFactoryHelper, getWalker, initialize
 
Methods inherited from class org.hibernate.hql.internal.ast.tree.SqlNode
getDataType, getOriginalText, setDataType, setText
 
Methods inherited from class org.hibernate.hql.internal.ast.tree.Node
getColumn, getFilename, getLine, getRenderText, getTextLength, initialize, initialize
 
Methods inherited from class antlr.CommonAST
getText, getType, initialize, setType
 
Methods inherited from class antlr.BaseAST
addChild, decode, encode, equals, equalsList, equalsListPartial, equalsTree, equalsTreePartial, findAll, findAllPartial, getFirstChild, getNextSibling, getNumberOfChildren, getTokenNames, removeChildren, setFirstChild, setNextSibling, setVerboseStringConversion, toString, toStringList, toStringTree, xmlSerialize, xmlSerializeNode, xmlSerializeRootClose, xmlSerializeRootOpen
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.hibernate.hql.internal.ast.tree.Statement
getStatementType, getWalker, needsExecutor
 

Constructor Detail

AbstractRestrictableStatement

public AbstractRestrictableStatement()
Method Detail

getWhereClauseParentTokenType

protected abstract int getWhereClauseParentTokenType()

getLog

protected abstract CoreMessageLogger getLog()

getFromClause

public final FromClause getFromClause()
Description copied from interface: RestrictableStatement
Retreives the from-clause in effect for this statement.

Specified by:
getFromClause in interface RestrictableStatement
Returns:
The from-clause for this statement; could be null if the from-clause has not yet been parsed/generated.
See Also:
RestrictableStatement.getFromClause()

hasWhereClause

public final boolean hasWhereClause()
Description copied from interface: RestrictableStatement
Does this statement tree currently contain a where clause?

Specified by:
hasWhereClause in interface RestrictableStatement
Returns:
True if a where-clause is found in the statement tree and that where clause actually defines restrictions; false otherwise.
See Also:
RestrictableStatement.hasWhereClause()

getWhereClause

public final antlr.collections.AST getWhereClause()
Description copied from interface: RestrictableStatement
Retreives the where-clause defining the restriction(s) in effect for this statement.

Note that this will generate a where-clause if one was not found, so caution needs to taken prior to calling this that restrictions will actually exist in the resulting statement tree (otherwise "unexpected end of subtree" errors might occur during rendering).

Specified by:
getWhereClause in interface RestrictableStatement
Returns:
The where clause.
See Also:
RestrictableStatement.getWhereClause()

locateWhereClause

protected antlr.collections.AST locateWhereClause()


Copyright © 2001-2012 Red Hat, Inc. All Rights Reserved.