org.codehaus.gpars

groovyx.gpars.dataflow.operator
[Java] Interface DataflowEventListener


public interface DataflowEventListener

Enables external entities to observe the state of dataflow selectors and operators

Authors:
Vaclav Pech


Method Summary
void afterRun(DataflowProcessor processor, java.util.List messages)

Invoked when the operator completes a single run When using maxForks, the method may be invoked from threads running the forks.

void afterStart(DataflowProcessor processor)

Invoked immediately after the operator starts by a pooled thread before the first message is obtained

void afterStop(DataflowProcessor processor)

Invoked immediately after the operator terminates

java.util.List beforeRun(DataflowProcessor processor, java.util.List messages)

Invoked when all messages required to trigger the operator become available in the input channels.

java.lang.Object controlMessageArrived(DataflowProcessor processor, DataflowReadChannel channel, int index, java.lang.Object message)

Invoked when a control message (instances of ControlMessage) becomes available in an input channel.

java.lang.Object customEvent(DataflowProcessor processor, java.lang.Object data)

Invoked when the fireCustomEvent() method is triggered manually on a dataflow operator/selector When using maxForks, the method may be invoked from threads running the forks.

java.lang.Object messageArrived(DataflowProcessor processor, DataflowReadChannel channel, int index, java.lang.Object message)

Invoked when a message becomes available in an input channel.

java.lang.Object messageSentOut(DataflowProcessor processor, DataflowWriteChannel channel, int index, java.lang.Object message)

Invoked when a message is being bound to an output channel.

boolean onException(DataflowProcessor processor, java.lang.Throwable e)

Invoked if an exception occurs.

void registered(DataflowProcessor processor)

Invoked immediately after the listener has been attached to a dataflow processor.

 

Method Detail

afterRun

public void afterRun(DataflowProcessor processor, java.util.List messages)
Invoked when the operator completes a single run When using maxForks, the method may be invoked from threads running the forks.
Parameters:
processor - The reporting dataflow operator/selector
messages - The incoming messages that have been processed


afterStart

public void afterStart(DataflowProcessor processor)
Invoked immediately after the operator starts by a pooled thread before the first message is obtained
Parameters:
processor - The reporting dataflow operator/selector


afterStop

public void afterStop(DataflowProcessor processor)
Invoked immediately after the operator terminates
Parameters:
processor - The reporting dataflow operator/selector


beforeRun

public java.util.List beforeRun(DataflowProcessor processor, java.util.List messages)
Invoked when all messages required to trigger the operator become available in the input channels.
Parameters:
processor - The reporting dataflow operator/selector
messages - The incoming messages
Returns:
The original list of messages or a modified/new list of messages that should be used instead


controlMessageArrived

public java.lang.Object controlMessageArrived(DataflowProcessor processor, DataflowReadChannel channel, int index, java.lang.Object message)
Invoked when a control message (instances of ControlMessage) becomes available in an input channel.
Parameters:
processor - The reporting dataflow operator/selector
channel - The input channel holding the message
index - The index of the input channel within the operator
message - The incoming message
Returns:
The original message or a message that should be used instead


customEvent

public java.lang.Object customEvent(DataflowProcessor processor, java.lang.Object data)
Invoked when the fireCustomEvent() method is triggered manually on a dataflow operator/selector When using maxForks, the method may be invoked from threads running the forks.
Parameters:
processor - The reporting dataflow operator/selector
data - The custom piece of data provided as part of the event
Returns:
A value to return from the fireCustomEvent() method to the caller (event initiator)


messageArrived

public java.lang.Object messageArrived(DataflowProcessor processor, DataflowReadChannel channel, int index, java.lang.Object message)
Invoked when a message becomes available in an input channel.
Parameters:
processor - The reporting dataflow operator/selector
channel - The input channel holding the message
index - The index of the input channel within the operator
message - The incoming message
Returns:
The original message or a message that should be used instead


messageSentOut

public java.lang.Object messageSentOut(DataflowProcessor processor, DataflowWriteChannel channel, int index, java.lang.Object message)
Invoked when a message is being bound to an output channel. When using maxForks, the method may be invoked from threads running the forks.
Parameters:
processor - The reporting dataflow operator/selector
channel - The output channel to send the message to
index - The index of the output channel within the operator
message - The message to send
Returns:
The original message or a message that should be used instead


onException

public boolean onException(DataflowProcessor processor, java.lang.Throwable e)
Invoked if an exception occurs. If any of the listeners returns true, the operator will terminate. Exceptions outside of the operator's body or listeners' messageSentOut() handlers will terminate the operator irrespective of the listeners' votes. When using maxForks, the method may be invoked from threads running the forks.
Parameters:
processor - The reporting dataflow operator/selector
e - The thrown exception
Returns:
True, if the operator should terminate in response to the exception, false otherwise.


registered

public void registered(DataflowProcessor processor)
Invoked immediately after the listener has been attached to a dataflow processor.
Parameters:
processor - The reporting dataflow operator/selector


 

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