Receives input events and stores them.
As its name implies, the Sink is just that: the end of a pipe of processors where events are input, but which has no output. In other words, a sink is a processor with an output arity of 0.
When operating in "pull" mode, it is nevertheless possible to ask the sink to pull on its inputs; this is why, like a Pullable, it implements methods pull() and pullHard().
- Author
- Sylvain Hallé
- Since
- 0.1
Definition at line 40 of file Sink.java.
|
| | Sink () |
| | Sink (int in_arity) |
| final void | pull () |
| | Tells the sink to pull events from the pipeline.
|
| final void | pullHard () |
| | Tells the sink to pull events from the pipeline.
|
| | SynchronousProcessor (int in_arity, int out_arity) |
| | Initializes a processor.
|
| Pushable | getPushableInput (int index) |
| | Returns the Pushable corresponding to the processor's i-th input trace.
|
| Pullable | getPullableOutput (int index) |
| | Returns the Pullable corresponding to the processor's i-th output trace.
|
| final SynchronousProcessor | setEventTracker (EventTracker tracker) |
| | Associates an event tracker to this processor.
|
| | Processor (int in_arity, int out_arity) |
| | Initializes a processor.
|
| final Object | getContext (String key) |
| | Retrieves an object from the processor's context.
|
| Context | getContext () |
| | Gets the context associated to this object.
|
| void | setContext (String key, Object value) |
| | Adds an object to the object's context.
|
| void | setContext (Context context) |
| | Adds a complete context to this object.
|
| final int | hashCode () |
| | Implementation of hashCode() specific to processors.
|
| final boolean | equals (Object o) |
| | Implementation of equals() specific to processors.
|
| final int | getId () |
| | Fetches the processor instance's unique ID.
|
| void | reset () |
| | Resets the processor.
|
| final Pushable | getPushableInput () |
| | Returns the Pushable corresponding to the processor's first input trace.
|
| final Pullable | getPullableOutput () |
| | Returns the Pullable corresponding to the processor's first output trace.
|
| void | setPullableInput (int i, Pullable p) |
| | Assigns a Pullable to the processor's i-th input.
|
| Pullable | getPullableInput (int i) |
| | Returns the Pullable corresponding to the processor's i-th input.
|
| void | setPushableOutput (int i, Pushable p) |
| | Assigns a Pushable to the processor's i-th output.
|
| Pushable | getPushableOutput (int i) |
| | Retrieves the Pushable associated to the processor's i-th output.
|
| final int | getInputArity () |
| | Returns the processor's input arity.
|
| final int | getOutputArity () |
| | Returns the processor's output arity.
|
| void | duplicateInto (Processor p) |
| | Copies the contents and state of the current processor into another.
|
| final Set< Class<?> > | getInputType (int index) |
| | Gets the type of events the processor accepts for its i-th input trace.
|
| void | getInputTypesFor (Set< Class<?> > classes, int index) |
| | Populates the set of classes accepted by the processor for its i-th input.
|
| Class<?> | getOutputType (int index) |
| | Returns the type of the events produced by the processor for its i-th output.
|
| void | start () |
| | Starts the processor.
|
| void | stop () |
| | Stops the processor.
|
| final EventTracker | getEventTracker () |
| | Gets the instance of event tracker associated to this processor.
|
| void | associateToInput (int in_stream_index, int in_stream_pos, int out_stream_index, int out_stream_pos) |
| | Associates an input event to an output event.
|
| void | associateTo (NodeFunction f, int out_stream_index, int out_stream_pos) |
| | Associates a node function to a particular event of processor's output stream.
|
| void | associateToOutput (int in_stream_index, int in_stream_pos, int out_stream_index, int out_stream_pos) |
| | Associates an input event to an output event.
|
| final int | getInputCount () |
| | Gets the number of event fronts received so far by this processor.
|
| final int | getOutputCount () |
| | Gets the number of event fronts produced so far by this processor.
|
| final Object | print (ObjectPrinter<?> printer) throws ProcessorException |
| | Prints the contents of this processor into an object printer.
|
| final Processor | read (ObjectReader<?> reader, Object o) throws ProcessorException |
| | Reads the content of a processor from a serialized object.
|
| final Processor | duplicate () |
| | Duplicates an object and sets it to its initial state.
|
| void | copyInputQueue (int index, Collection< Object > to) |
| | Copies the content of one of the processor's input queue to a collection.
|
| void | copyOutputQueue (int index, Collection< Object > to) |
| | Copies the content of one of the processor's output queue to a collection.
|
| abstract Processor | duplicate (boolean with_state) |
| | Duplicates an object.
|
| Processor | or (Processor p) |
| | Connects the first output pipe of this processor to the first input pipe of another processor.
|
| Processor | or (CallAfterConnect c) |
| | Operates similar to or(Processor), but also calls a method after the connection has been established.
|
| Processor | or (SelectedInputPipe p) |
| | Connects the output at index 0 of the current processor to the input of another processor.
|
| PipeSelector | getAt (int index) |
| | Gets the PipeSelector object corresponding to the processor's input or output pipe for a given index.
|
| Pushable | rightShift (int index) |
| Pullable | leftShift (int index) |
| Queue< Object > | getInputQueue (int index) |
| | Gets the content of the processor's input queue at a given index.
|
| Queue< Object > | getOutputQueue (int index) |
| | Gets the content of the processor's output queue at a given index.
|
|
| static boolean | allNull (Object[] v) |
| | Checks if all objects in the array are null.
|
| static Queue< Object[]> | getEmptyQueue () |
| | Gets an instance of an empty event queue.
|
| static void | startAll (Processor ... procs) |
| | Starts all processors given as an argument.
|
| static void | stopAll (Processor ... procs) |
| | Stops all processors given as an argument.
|
| static List< ProvenanceNode > | getLeaves (ProvenanceNode root) |
| | Gets the leaves of a provenance tree.
|
| static final transient String | s_versionString = "0.11.2" |
| | A string used to identify the program's version.
|
| static final transient int | MAX_PULL_RETRIES = 10000000 |
| | Number of times the Pullable#hasNext() method tries to produce an output from the input before giving up.
|
| abstract boolean | compute (Object[] inputs, Queue< Object[]> outputs) |
| | Computes one or more output events from its input events.
|
| boolean | allNotifiedEndOfTrace () |
| | Determines if all the upstream pushables have sent the end of trace notification.
|
| final Context | newContext () |
| | Creates a new empty context map.
|
| boolean | onEndOfTrace (Queue< Object[]> outputs) throws ProcessorException |
| | Allows to describe a specific behavior when the trace of input fronts has reached its end.
|
| Object | printState () |
| | Produces an object that represents the state of the current processor.
|
| Processor | readState (Object o) |
| | Reads the state of a processor and uses it to create a new instance.
|
| static void | getLeaves (ProvenanceNode root, List< ProvenanceNode > leaves) |
| | Accumulates the leaves of a provenance tree in a list.
|
| final transient Queue< Object[]> | m_tempQueue |
| | A queue object that will be passed to the compute(Object[], Queue) method.
|
| final transient Pushable[] | m_inputPushables |
| | An array of input pushables.
|
| transient Pullable[] | m_outputPullables |
| | An array of output pullables.
|
| int | m_inputArity |
| | The processor's input arity, i.e.
|
| int | m_outputArity |
| | The processor's output arity, i.e.
|
| transient Queue< Object >[] | m_inputQueues |
| | An array of input event queues.
|
| transient EventTracker | m_eventTracker = null |
| | An object that keeps track of the relationship between input and output events.
|
| transient Queue< Object >[] | m_outputQueues |
| | An array of output event queues.
|
| transient Pullable[] | m_inputPullables |
| | An array of Pullables, one for each input trace this processor receives.
|
| transient Pushable[] | m_outputPushables |
| | An array of Pushables, one for each output trace this processor produces.
|
| int | m_inputCount = 0 |
| | A counter incremented upon each input front processed.
|
| int | m_outputCount = 0 |
| | A counter incremented upon each output front processed.
|
| Context | m_context = null |
| | The context in which the processor is instantiated.
|
| boolean[] | m_hasBeenNotifiedOfEndOfTrace |
| | Indicates whether the processor has been notified of the end of trace or not.
|
| boolean | m_notifiedEndOfTraceDownstream |
| | Indicates whether the processor has notified the end of the trace to the downstream processors it is connected to.
|