groovyx.gpars.dataflow.expression
Class DataflowComplexExpression<T>

java.lang.Object
  extended by groovyx.gpars.serial.WithSerialId
      extended by groovyx.gpars.dataflow.expression.DataflowExpression<T>
          extended by groovyx.gpars.dataflow.expression.DataflowComplexExpression<T>
All Implemented Interfaces:
groovy.lang.GroovyObject, DataflowReadChannel<T>, java.io.Serializable
Direct Known Subclasses:
DataflowExpression.TransformMany, DataflowInvocationExpression

public abstract class DataflowComplexExpression<T>
extends DataflowExpression<T>

Provides the infrastructure for dataflow expressions to evaluate arguments. The arguments may be dataflow expressions of themselves and so we cannot evaluate them before they all have real values bound to them.

Author:
Alex Tkachman
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class groovyx.gpars.dataflow.expression.DataflowExpression
DataflowExpression.BindDataflow<T>, DataflowExpression.DataflowExpressionsCollector
 
Field Summary
protected  java.lang.Object[] args
           
private static long serialVersionUID
           
 
Fields inherited from class groovyx.gpars.dataflow.expression.DataflowExpression
error, S_INITIALIZED, S_INITIALIZING, S_NOT_INITIALIZED, state, value
 
Fields inherited from class groovyx.gpars.serial.WithSerialId
serialHandle
 
Constructor Summary
protected DataflowComplexExpression(java.lang.Object... elements)
           
 
Method Summary
protected  T evaluate()
          Evaluates all the arguments
protected  void subscribe(DataflowExpression.DataflowExpressionsCollector listener)
          Subscribes the listener to all the arguments
 
Methods inherited from class groovyx.gpars.dataflow.expression.DataflowExpression
binaryChoice, binaryChoice, binaryChoice, binaryChoice, binaryChoice, binaryChoice, bind, bindError, bindSafely, bindUnique, doBindImpl, doBindRemote, filter, filter, filter, filter, filter, filter, getEventManager, getMetaClass, getProperty, getVal, getVal, getValAsync, getValAsync, chainWith, chainWith, chainWith, chainWith, chainWith, chainWith, choice, choice, choice, choice, choice, choice, into, into, into, into, into, into, invokeMethod, isBound, join, join, length, merge, merge, merge, merge, merge, merge, merge, merge, merge, merge, merge, merge, or, or, poll, rightShift, separate, separate, separate, separate, separate, separate, setMetaClass, setProperty, scheduleCallback, split, split, split, split, split, split, split, split, split, split, split, split, subscribe, tap, tap, tap, tap, tap, tap, then, then, then, toString, transform, whenBound, whenBound, whenBound, whenBound, wheneverBound, wheneverBound
 
Methods inherited from class groovyx.gpars.serial.WithSerialId
createRemoteHandle, getOrCreateSerialHandle, getRemoteClass, writeReplace
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

serialVersionUID

private static final long serialVersionUID
See Also:
Constant Field Values

args

protected final java.lang.Object[] args
Constructor Detail

DataflowComplexExpression

protected DataflowComplexExpression(java.lang.Object... elements)
Method Detail

subscribe

protected void subscribe(DataflowExpression.DataflowExpressionsCollector listener)
Subscribes the listener to all the arguments

Overrides:
subscribe in class DataflowExpression<T>

evaluate

protected T evaluate()
Evaluates all the arguments

Overrides:
evaluate in class DataflowExpression<T>
Returns:
The value to bind

Copyright © 2008–2012 Václav Pech. All Rights Reserved.