MXQuery 0.6.0 API Documentation - Copyright 2006-2009 ETH Zurich

ch.ethz.mxquery.bindings
Class WindowEarlyBinding

java.lang.Object
  extended by ch.ethz.mxquery.model.Iterator
      extended by ch.ethz.mxquery.model.Window
          extended by ch.ethz.mxquery.bindings.WindowIterator
              extended by ch.ethz.mxquery.bindings.WindowTokenIterator
                  extended by ch.ethz.mxquery.bindings.WindowEarlyBinding
All Implemented Interfaces:
IndexIterator, XDMIterator, Traversable

public final class WindowEarlyBinding
extends WindowTokenIterator


Field Summary
 
Fields inherited from class ch.ethz.mxquery.model.Window
END_OF_STREAM_NODE, END_OF_STREAM_POSITION
 
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
WindowEarlyBinding(WindowBuffer mat, int id, int startPosition, XDMIterator startExpr, WindowVariable[] startVars, VariableHolder[] startVarHolders, XDMIterator endExpr, WindowVariable[] endVars, VariableHolder[] endVarHolders)
           
 
Method Summary
 int getEndPosition()
           
 XDMIterator getItem(int position)
          Returns the item on the given Position.
 Window getNewItemWindow(IntegerList values)
          Returns a new iterator consisting of the given items in the integer list.
 Window getNewWindow(int startPosition, int endPosition)
          Returns a new iterator for a given start and end position.
 int getNextWindowStartPosition()
           
 XDMIterator getVarItem(int nodeId)
           
 boolean hasItem(int position)
          Checks if the given position is availabe
 boolean hasNextItem()
          Checks if a nextItem exists
 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.
 XDMIterator nextItem()
          Returns the next item.
 
Methods inherited from class ch.ethz.mxquery.bindings.WindowTokenIterator
getPosition, getStartNode
 
Methods inherited from class ch.ethz.mxquery.bindings.WindowIterator
destroyWindow, equals, getStore, getWindowId, hashCode, isWindowInUse, setContext, setWindowInUse
 
Methods inherited from class ch.ethz.mxquery.model.Window
getNewEarlyParallelWindowInterface, getNewEarlyWindowInterface, getUnderlyingWindow, increasePosition, isExprParameter, isWindow, jumpToNextAttribute, setPosition
 
Methods inherited from class ch.ethz.mxquery.model.Iterator
addPredicates, close, copy, copyInts, copyIterators, copyQNames, copyStrings, copyTypeInfos, getAllSubIters, getAllSubItersRecursive, getContext, getExpressionCategoryType, getLoc, getPendingUpdateList, getPredicates, getStaticType, getSubIters, hasPredicates, isConstModePreserve, isOpen, isResettable, removePredicates, reset, setConstModePreserve, setContext, setLoc, setOrderByExpr, setParam, setResettable, setReturnExpr, setSubIters, setSubIters, setSubIters, setWhereExpr, traverse, traverseIteratorTree
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

WindowEarlyBinding

public WindowEarlyBinding(WindowBuffer mat,
                          int id,
                          int startPosition,
                          XDMIterator startExpr,
                          WindowVariable[] startVars,
                          VariableHolder[] startVarHolders,
                          XDMIterator endExpr,
                          WindowVariable[] endVars,
                          VariableHolder[] endVarHolders)
Method Detail

getNextWindowStartPosition

public int getNextWindowStartPosition()
Overrides:
getNextWindowStartPosition in class Window

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

hasItem

public boolean hasItem(int position)
                throws MXQueryException
Description copied from interface: IndexIterator
Checks if the given position is availabe

Parameters:
position - Position in the sequence (starting with 1)
Returns:
True if the next item is not end_sequence otherwise false
Throws:
MXQueryException

getItem

public XDMIterator getItem(int position)
                    throws MXQueryException
Description copied from interface: IndexIterator
Returns the item on the given Position. If the item is not evailabe, an empty sequence item is returned

Parameters:
position - Position in the sequence (starting with 1)
Returns:
Item or empty sequence iterator
Throws:
MXQueryException

getVarItem

public XDMIterator getVarItem(int nodeId)
                       throws MXQueryException
Throws:
MXQueryException

hasNextItem

public boolean hasNextItem()
                    throws MXQueryException
Description copied from interface: IndexIterator
Checks if a nextItem exists

Returns:
True if the next item is not end_sequence otherwise false
Throws:
MXQueryException

nextItem

public XDMIterator nextItem()
                     throws MXQueryException
Description copied from interface: IndexIterator
Returns the next item. If the item is not evailabe, an empty sequence item is returned

Returns:
Item or empty sequence iterator
Throws:
MXQueryException

getNewItemWindow

public Window getNewItemWindow(IntegerList values)
Description copied from class: Window
Returns a new iterator consisting of the given items in the integer list. If a position is outside the underlying sequence, the position is skipped.

Specified by:
getNewItemWindow in class Window
Parameters:
values - Each value in the integer list has to be a position
Returns:
a new Window for the given list of positions

getNewWindow

public Window getNewWindow(int startPosition,
                           int endPosition)
Description copied from class: Window
Returns a new iterator for a given start and end position. If the end is outside the underlying sequence the iterator throws no error but only returns items until the sequence ends

Specified by:
getNewWindow in class Window
Returns:
a new window for the given start and end positions

getEndPosition

public int getEndPosition()
Overrides:
getEndPosition in class Window

MXQuery 0.6.0 API Documentation - Copyright 2006-2009 ETH Zurich

MXQuery 0.6.0 API Documentation - Copyright 2006-2009 ETH Zurich