Class UpdateTable

java.lang.Object
ca.uqac.lif.cep.Processor
ca.uqac.lif.cep.SynchronousProcessor
ca.uqac.lif.cep.UniformProcessor
ca.uqac.lif.cep.mtnp.UpdateTable
All Implemented Interfaces:
ca.uqac.lif.cep.Contextualizable, ca.uqac.lif.cep.Duplicable, ca.uqac.lif.cep.DuplicableProcessor
Direct Known Subclasses:
UpdateTableArray, UpdateTableMap, UpdateTableStream

public abstract class UpdateTable extends ca.uqac.lif.cep.UniformProcessor
Adds contents to a table based on incoming events. This abstract processor exists in three concrete versions:
  • UpdateTableArray updates a table by creating new entries from incoming arrays of object; each array represents a new line in the table
  • UpdateTableStream work in the same way, but receives n input streams instead of a single array of n elements
  • UpdateTableMap receives a stream of Map objects, each corresponding to a tuple of key-value pairs to add to the table
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

    Nested classes/interfaces inherited from class ca.uqac.lif.cep.SynchronousProcessor

    ca.uqac.lif.cep.SynchronousProcessor.InputPushable, ca.uqac.lif.cep.SynchronousProcessor.OutputPullable

    Nested classes/interfaces inherited from class ca.uqac.lif.cep.Processor

    ca.uqac.lif.cep.Processor.InternalProcessorState
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected ca.uqac.lif.mtnp.table.HardTable
    The table that is being updated by input events

    Fields inherited from class ca.uqac.lif.cep.UniformProcessor

    m_outputArray

    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_hasBeenNotifiedOfEndOfTrace, m_inputArity, m_inputPullables, m_inputQueues, m_notifiedEndOfTraceDownstream, m_outputArity, m_outputPushables, m_outputQueues, MAX_PULL_RETRIES, s_versionString
  • Constructor Summary

    Constructors
    Constructor
    Description
    UpdateTable(int in_arity, ca.uqac.lif.mtnp.table.HardTable t)
    Creates a new instance of the processor.
    UpdateTable(int in_arity, String... column_names)
    Creates a new instance of the processor.
    UpdateTable(int in_arity, List<String> column_names)
    Creates a new instance of the processor.
  • Method Summary

    Modifier and Type
    Method
    Description
    protected ca.uqac.lif.mtnp.table.TableEntry
    createEntry(Object[] inputs)
    Creates a table entry from an array of objects
    void
     

    Methods inherited from class ca.uqac.lif.cep.UniformProcessor

    compute, compute, getPullableOutput, getPushableInput, onEndOfTrace, onEndOfTrace

    Methods inherited from class ca.uqac.lif.cep.Processor

    allNotifiedEndOfTrace, allNull, copyInputQueue, copyOutputQueue, duplicate, duplicate, duplicateInto, equals, getAt, getContext, getContext, getEmptyQueue, getId, getInputArity, getInputQueue, getInputType, getInputTypesFor, getOutputArity, getOutputQueue, getOutputType, getPullableInput, getPullableOutput, getPushableInput, getPushableOutput, hashCode, leftShift, newContext, or, or, or, printState, readState, rightShift, setContext, setContext, setPullableInput, setPushableOutput, start, startAll, stop, stopAll

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • m_table

      protected ca.uqac.lif.mtnp.table.HardTable m_table
      The table that is being updated by input events
  • Constructor Details

    • UpdateTable

      public UpdateTable(int in_arity, String... column_names)
      Creates a new instance of the processor.
      Parameters:
      in_arity - The input arity
      column_names - The names of the columns in the resulting table
    • UpdateTable

      public UpdateTable(int in_arity, List<String> column_names)
      Creates a new instance of the processor.
      Parameters:
      in_arity - The input arity
      column_names - The names of the columns in the resulting table
    • UpdateTable

      public UpdateTable(int in_arity, ca.uqac.lif.mtnp.table.HardTable t)
      Creates a new instance of the processor.
      Parameters:
      in_arity - The input arity
      t - The table where entries will be added from incoming events
  • Method Details

    • createEntry

      protected ca.uqac.lif.mtnp.table.TableEntry createEntry(Object[] inputs)
      Creates a table entry from an array of objects
      Parameters:
      inputs - The objects
      Returns:
      The table entry
    • reset

      public void reset()
      Overrides:
      reset in class ca.uqac.lif.cep.Processor