org.teiid.query.processor.proc
Class AssignmentInstruction

java.lang.Object
  extended by org.teiid.query.processor.proc.ProgramInstruction
      extended by org.teiid.query.processor.proc.AssignmentInstruction
All Implemented Interfaces:
java.lang.Cloneable

public class AssignmentInstruction
extends ProgramInstruction

This instruction updates the current variable context with a value for the Variable defined using a DeclareInstruction, the variable value is obtained by either processing a expression or a command(stored as a processplan). The Processing of the command is expected to result in 1 column, 1 row tuple.


Constructor Summary
AssignmentInstruction()
           
 
Method Summary
 AssignmentInstruction clone()
          Override Object.clone() to make the method public.
 PlanNode getDescriptionProperties()
           
 Expression getExpression()
           
 ElementSymbol getVariable()
           
 void process(ProcedurePlan procEnv)
           Updates the current variable context with a value for the Variable defined using a DeclareInstruction, the variable value is obtained by either processing a expression or a command(stored as a processplan).
 void setExpression(Expression expression)
           
 void setVariable(ElementSymbol variable)
           
 java.lang.String toString()
           
 
Methods inherited from class org.teiid.query.processor.proc.ProgramInstruction
getChildPlans
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

AssignmentInstruction

public AssignmentInstruction()
Method Detail

process

public void process(ProcedurePlan procEnv)
             throws BlockedException,
                    TeiidComponentException,
                    TeiidProcessingException

Updates the current variable context with a value for the Variable defined using a DeclareInstruction, the variable value is obtained by either processing a expression or a command(stored as a processplan). The Processing of the command is expected to result in 1 column, 1 row tuple, if more than a row is returned an exception is thrown. Also updates the program counter.

Specified by:
process in class ProgramInstruction
Throws:
BlockedException
TeiidComponentException - if error processing command or expression on this instruction
TeiidProcessingException

getDescriptionProperties

public PlanNode getDescriptionProperties()
Specified by:
getDescriptionProperties in class ProgramInstruction

getExpression

public Expression getExpression()
Returns:
Returns the expression.

setExpression

public void setExpression(Expression expression)
Parameters:
expression - The expression to set.

getVariable

public ElementSymbol getVariable()
Returns:
Returns the variable.

setVariable

public void setVariable(ElementSymbol variable)
Parameters:
variable - The variable to set.

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

clone

public AssignmentInstruction clone()
Description copied from class: ProgramInstruction
Override Object.clone() to make the method public. This method simply calls super.clone(), deferring to the default shallow cloning. Some ProcessorInstruction subclasses may need to override with custom safe or deep cloning.

Overrides:
clone in class ProgramInstruction
Returns:
shallow clone
See Also:
ProgramInstruction.clone()


Copyright © 2010. All Rights Reserved.