Kieker 1.5

kieker.tools.currentTimeEventGenerator
Class CurrentTimeEventGenerationFilter

java.lang.Object
  extended by kieker.analysis.plugin.AbstractPlugin
      extended by kieker.analysis.plugin.filter.AbstractFilterPlugin
          extended by kieker.tools.currentTimeEventGenerator.CurrentTimeEventGenerationFilter
All Implemented Interfaces:
IFilterPlugin, IPlugin

public class CurrentTimeEventGenerationFilter
extends AbstractFilterPlugin

Generates time events with a given resolution based on the timestamps of incoming IMonitoringRecords.

  1. The first record received via inputTimestamp(Long) immediately leads to a new TimestampEvent with the given timestamp.
  2. The timestamp of the first record is stored as firstTimestamp and future events are generated at firstTimestamp + i * timerResolution.
  3. Future IMonitoringRecord may lead to future TimestampRecord as follows:
    1. A newly incoming IMonitoringRecord with logging timestamp tstamp leads to the new timer events satisfying firstTimestamp + i * timerResolution < tstamp.
It is guaranteed that the generated timestamps are in ascending order.

Author:
Andre van Hoorn

Nested Class Summary
 
Nested classes/interfaces inherited from interface kieker.analysis.plugin.IPlugin
IPlugin.PluginInputPortReference
 
Field Summary
static String CONFIG_PROPERTY_NAME_TIME_RESOLUTION
           
static String INPUT_PORT_NAME_NEW_RECORD
           
static String INPUT_PORT_NAME_NEW_TIMESTAMP
           
static String OUTPUT_PORT_NAME_CURRENT_TIME
           
 
Fields inherited from class kieker.analysis.plugin.AbstractPlugin
CONFIG_NAME
 
Constructor Summary
CurrentTimeEventGenerationFilter(Configuration configuration)
          Creates an event generator which generates time events with the given resolution in nanoseconds via the output port OUTPUT_PORT_NAME_CURRENT_TIME.
 
Method Summary
 Configuration getCurrentConfiguration()
          This method should deliver a Configuration object containing the current configuration of this instance.
 void inputRecord(IMonitoringRecord record)
           
 void inputTimestamp(Long timestamp)
          Evaluates the given timestamp internal current time which may lead to newly generated events via OUTPUT_PORT_NAME_CURRENT_TIME.
 
Methods inherited from class kieker.analysis.plugin.filter.AbstractFilterPlugin
init, terminate
 
Methods inherited from class kieker.analysis.plugin.AbstractPlugin
areAllRepositoryPortsConnected, connect, connect, getAllInputPortNames, getAllOutputPortNames, getConnectedPlugins, getCurrentRepositories, getName, getPluginDescription, getPluginName, isConnectionAllowed
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

INPUT_PORT_NAME_NEW_TIMESTAMP

public static final String INPUT_PORT_NAME_NEW_TIMESTAMP
See Also:
Constant Field Values

INPUT_PORT_NAME_NEW_RECORD

public static final String INPUT_PORT_NAME_NEW_RECORD
See Also:
Constant Field Values

OUTPUT_PORT_NAME_CURRENT_TIME

public static final String OUTPUT_PORT_NAME_CURRENT_TIME
See Also:
Constant Field Values

CONFIG_PROPERTY_NAME_TIME_RESOLUTION

public static final String CONFIG_PROPERTY_NAME_TIME_RESOLUTION
See Also:
Constant Field Values
Constructor Detail

CurrentTimeEventGenerationFilter

public CurrentTimeEventGenerationFilter(Configuration configuration)
Creates an event generator which generates time events with the given resolution in nanoseconds via the output port OUTPUT_PORT_NAME_CURRENT_TIME.

Parameters:
configuration - The configuration to be used for this plugin.
Method Detail

inputRecord

public void inputRecord(IMonitoringRecord record)

inputTimestamp

public void inputTimestamp(Long timestamp)
Evaluates the given timestamp internal current time which may lead to newly generated events via OUTPUT_PORT_NAME_CURRENT_TIME.


getCurrentConfiguration

public Configuration getCurrentConfiguration()
Description copied from interface: IPlugin
This method should deliver a Configuration object containing the current configuration of this instance. In other words: The constructor should be able to use the given object to initialize a new instance of this class with the same intern properties.

Returns:
A completely filled configuration object.

Kieker 1.5

Copyright 2012 the Kieker Project, http://kieker-monitoring.net