com.metamatrix.query.sql.proc
Class WhileStatement

java.lang.Object
  extended by com.metamatrix.query.sql.proc.Statement
      extended by com.metamatrix.query.sql.proc.WhileStatement
All Implemented Interfaces:
LanguageObject, java.io.Serializable, java.lang.Cloneable

public class WhileStatement
extends Statement

This class represents a while statement in the storedprocedure language. It extends the Statement that could part of a block. This statement has a block and a criteria that determines when to exit the while loop.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class com.metamatrix.query.sql.proc.Statement
TYPE_ASSIGNMENT, TYPE_BREAK, TYPE_COMMAND, TYPE_CONTINUE, TYPE_DECLARE, TYPE_ERROR, TYPE_IF, TYPE_LOOP, TYPE_UNKNOWN, TYPE_WHILE
 
Constructor Summary
WhileStatement(Criteria criteria, Block block)
          Constructor for IfStatement.
 
Method Summary
 void acceptVisitor(LanguageVisitor visitor)
          Method for accepting a visitor.
 java.lang.Object clone()
          Deep clone statement to produce a new identical statement.
 boolean equals(java.lang.Object obj)
          Compare two WhileStatements for equality.
 Block getBlock()
           
 Criteria getCondition()
          Get the condition that determines which block needs to be executed.
 int getType()
          Return the type for this statement, this is one of the types defined on the statement object.
 int hashCode()
          Get hashcode for WhileStatement.
 void setBlock(Block block)
           
 void setCondition(Criteria criteria)
          Set the condition that determines which block needs to be executed.
 java.lang.String toString()
          Returns a string representation of an instance of this class.
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

WhileStatement

public WhileStatement(Criteria criteria,
                      Block block)
Constructor for IfStatement.

Parameters:
criteria - The criteria determining which bleck should be executed
ifBlock - The IF Block object.
ifBlock - The ELSE Block object.
Method Detail

getCondition

public Criteria getCondition()
Get the condition that determines which block needs to be executed.

Returns:
The Criteria to determine block execution

setCondition

public void setCondition(Criteria criteria)
Set the condition that determines which block needs to be executed.

Parameters:
criteria - The Criteria to determine block execution

getBlock

public Block getBlock()
Returns:

setBlock

public void setBlock(Block block)
Parameters:
block -

getType

public int getType()
Return the type for this statement, this is one of the types defined on the statement object.

Specified by:
getType in class Statement
Returns:
The statement type

acceptVisitor

public void acceptVisitor(LanguageVisitor visitor)
Description copied from interface: LanguageObject
Method for accepting a visitor. It is the responsibility of the language object to call back on the visitor.

Parameters:
visitor - Visitor being used

clone

public java.lang.Object clone()
Deep clone statement to produce a new identical statement.

Specified by:
clone in interface LanguageObject
Specified by:
clone in class Statement
Returns:
Deep clone

equals

public boolean equals(java.lang.Object obj)
Compare two WhileStatements for equality. They will only evaluate to equal if they are IDENTICAL: the block is same and the condition on is same.

Overrides:
equals in class java.lang.Object
Parameters:
obj - Other object
Returns:
True if equal

hashCode

public int hashCode()
Get hashcode for WhileStatement. WARNING: This hash code relies on the hash codes of the block and the criteria. Hash code is only valid after the block has been completely constructed.

Overrides:
hashCode in class java.lang.Object
Returns:
Hash code

toString

public java.lang.String toString()
Returns a string representation of an instance of this class.

Overrides:
toString in class java.lang.Object
Returns:
String representation of object


Copyright © 2009. All Rights Reserved.