MXQuery 0.6.0 API Documentation - Copyright 2006-2009 ETH Zurich

ch.ethz.mxquery.iterators
Class IfThenElseIterator

java.lang.Object
  extended by ch.ethz.mxquery.model.Iterator
      extended by ch.ethz.mxquery.model.CurrentBasedIterator
          extended by ch.ethz.mxquery.iterators.IfThenElseIterator
All Implemented Interfaces:
XDMIterator, Traversable

public class IfThenElseIterator
extends CurrentBasedIterator


Field Summary
 
Fields inherited from interface ch.ethz.mxquery.model.XDMIterator
EXPR_CATEGORY_SEQUENTIAL, EXPR_CATEGORY_SIMPLE, EXPR_CATEGORY_UPDATING, EXPR_CATEGORY_VACUOUS, EXPR_PARAM_CHEAPEVAL, EXPR_PARAM_VARIABLE, EXPR_PARAM_WINDOW, EXPR_PARAM_XDMGEN
 
Constructor Summary
IfThenElseIterator(Context ctx, XDMIterator[] subIters, QueryLocation location)
          Constructor for the IfThenElseIterator
 
Method Summary
 PendingUpdateList getPendingUpdateList()
          Returns the complete Pending Update List (PUL) of this iterator.
 Token next()
          Produces the next XDM token This method typically implements the base functionality of an Iterator and computes the value of the next token.
 KXmlSerializer traverseIteratorTree(KXmlSerializer serializer)
           
 
Methods inherited from class ch.ethz.mxquery.model.Iterator
addPredicates, close, copy, copyInts, copyIterators, copyQNames, copyStrings, copyTypeInfos, getAllSubIters, getAllSubItersRecursive, getContext, getExpressionCategoryType, getLoc, getPredicates, getStaticType, getSubIters, hasPredicates, isConstModePreserve, isExprParameter, isOpen, isResettable, removePredicates, reset, setConstModePreserve, setContext, setLoc, setOrderByExpr, setParam, setResettable, setReturnExpr, setSubIters, setSubIters, setSubIters, setWhereExpr, traverse
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IfThenElseIterator

public IfThenElseIterator(Context ctx,
                          XDMIterator[] subIters,
                          QueryLocation location)
                   throws MXQueryException
Constructor for the IfThenElseIterator

Parameters:
subIters - Array of Expressions: first Expression is the IF condition; second Expression is the THEN expression; third Expression is the ELSE expression.
Throws:
MXQueryException
Method Detail

next

public Token next()
           throws MXQueryException
Description copied from interface: XDMIterator
Produces the next XDM token This method typically implements the base functionality of an Iterator and computes the value of the next token.

Returns:
The XDM token representing the next fragment of the XDM instance
Throws:
MXQueryException

getPendingUpdateList

public PendingUpdateList getPendingUpdateList()
                                       throws MXQueryException
Description copied from interface: XDMIterator
Returns the complete Pending Update List (PUL) of this iterator. Is null for non-updating expressions. Since the PUL is computed gradually (especially in a scripting environment, this function should only be called when the evaluation is complete. For scripting, this function also merges the PULs of the child iterators, so

Specified by:
getPendingUpdateList in interface XDMIterator
Overrides:
getPendingUpdateList in class Iterator
Returns:
pending update list
Throws:
MXQueryException

traverseIteratorTree

public KXmlSerializer traverseIteratorTree(KXmlSerializer serializer)
                                    throws java.lang.Exception
Specified by:
traverseIteratorTree in interface XDMIterator
Overrides:
traverseIteratorTree in class Iterator
Throws:
java.lang.Exception

MXQuery 0.6.0 API Documentation - Copyright 2006-2009 ETH Zurich

MXQuery 0.6.0 API Documentation - Copyright 2006-2009 ETH Zurich