Package ca.uqac.lif.cep.diagnostics
Class PassthroughCounter
- java.lang.Object
-
- ca.uqac.lif.cep.Processor
-
- ca.uqac.lif.cep.SynchronousProcessor
-
- ca.uqac.lif.cep.UniformProcessor
-
- ca.uqac.lif.cep.diagnostics.PassthroughCounter
-
- All Implemented Interfaces:
ca.uqac.lif.azrael.Printable
,ca.uqac.lif.azrael.Readable
,ca.uqac.lif.cep.Contextualizable
,ca.uqac.lif.cep.Duplicable
,ca.uqac.lif.cep.DuplicableProcessor
public class PassthroughCounter extends ca.uqac.lif.cep.UniformProcessor
APassthrough
processor that keeps the count of events that went through it.- Author:
- Sylvain Hallé
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class ca.uqac.lif.cep.UniformProcessor
ca.uqac.lif.cep.UniformProcessor.UnaryPullable, ca.uqac.lif.cep.UniformProcessor.UnaryPushable
-
-
Field Summary
Fields Modifier and Type Field Description protected DiagnosticsCallback
m_callback
A callback to call (if any)protected int
m_eventCount
The number of events that went through the processorprotected int
m_interval
The interval to call the callback-
Fields inherited from class ca.uqac.lif.cep.SynchronousProcessor
m_inputPushables, m_outputPullables, m_tempQueue
-
Fields inherited from class ca.uqac.lif.cep.Processor
m_context, m_eventTracker, m_hasBeenNotifiedOfEndOfTrace, m_inputArity, m_inputCount, m_inputPullables, m_inputQueues, m_notifiedEndOfTraceDownstream, m_outputArity, m_outputCount, m_outputPushables, m_outputQueues, MAX_PULL_RETRIES, s_versionString
-
-
Constructor Summary
Constructors Constructor Description PassthroughCounter()
Creates a new passthrough counter
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected boolean
compute(java.lang.Object[] inputs, java.lang.Object[] outputs)
PassthroughCounter
duplicate(boolean with_state)
int
getCount()
Returns the number of events that went through the processorvoid
reset()
void
setCallback(DiagnosticsCallback cb, int interval)
-
Methods inherited from class ca.uqac.lif.cep.UniformProcessor
compute, getPullableOutput, getPushableInput, onEndOfTrace, onEndOfTrace
-
Methods inherited from class ca.uqac.lif.cep.Processor
allNotifiedEndOfTrace, allNull, associateTo, associateToInput, associateToOutput, copyInputQueue, copyOutputQueue, duplicate, duplicateInto, equals, getAt, getContext, getContext, getEmptyQueue, getEventTracker, getId, getInputArity, getInputCount, getInputQueue, getInputType, getInputTypesFor, getLeaves, getLeaves, getOutputArity, getOutputCount, getOutputQueue, getOutputType, getPullableInput, getPullableOutput, getPushableInput, getPushableOutput, hashCode, leftShift, newContext, or, or, print, printState, read, readState, rightShift, setContext, setContext, setPullableInput, setPushableOutput, start, startAll, stop, stopAll
-
-
-
-
Field Detail
-
m_eventCount
protected int m_eventCount
The number of events that went through the processor
-
m_interval
protected int m_interval
The interval to call the callback
-
m_callback
protected DiagnosticsCallback m_callback
A callback to call (if any)
-
-
Method Detail
-
setCallback
public void setCallback(DiagnosticsCallback cb, int interval)
-
getCount
public int getCount()
Returns the number of events that went through the processor- Returns:
- The number of events
-
reset
public void reset()
- Overrides:
reset
in classca.uqac.lif.cep.Processor
-
compute
protected boolean compute(java.lang.Object[] inputs, java.lang.Object[] outputs)
- Specified by:
compute
in classca.uqac.lif.cep.UniformProcessor
-
duplicate
public PassthroughCounter duplicate(boolean with_state)
- Specified by:
duplicate
in interfaceca.uqac.lif.cep.Duplicable
- Specified by:
duplicate
in classca.uqac.lif.cep.Processor
-
-