Kieker 1.6

kieker.analysis.plugin.filter.forward
Class RealtimeRecordDelayFilter

java.lang.Object
  extended by kieker.analysis.plugin.AbstractPlugin
      extended by kieker.analysis.plugin.filter.AbstractFilterPlugin
          extended by kieker.analysis.plugin.filter.forward.RealtimeRecordDelayFilter
All Implemented Interfaces:
IFilterPlugin, IPlugin

public class RealtimeRecordDelayFilter
extends AbstractFilterPlugin

Forwards incoming IMonitoringRecords with delays computed from the IMonitoringRecord.getLoggingTimestamp() value (assumed to be in nanoseconds resolution). For example, after initialization, if records with logging timestamps 3000 and 4500 nanos are received, the first record is forwarded immediately; the second will be forwarded 1500 nanos later.

Author:
Andre van Hoorn, Robert von Massow

Nested Class Summary
 
Nested classes/interfaces inherited from interface kieker.analysis.plugin.IPlugin
IPlugin.PluginInputPortReference, IPlugin.STATE
 
Field Summary
static String CONFIG_PROPERTY_NAME_ADDITIONAL_SHUTDOWN_DELAY_SECONDS
          The number of additional seconds to wait before execute the termination (after all records have been forwarded)
static String CONFIG_PROPERTY_NAME_NUM_WORKERS
          The number of threads to be used for the internal ThreadPoolExecutor, processing the scheduled IMonitoringRecords.
static String INPUT_PORT_NAME_RECORDS
           
static String OUTPUT_PORT_NAME_RECORDS
           
 
Fields inherited from class kieker.analysis.plugin.AbstractPlugin
CONFIG_NAME
 
Constructor Summary
RealtimeRecordDelayFilter(Configuration configuration)
           
 
Method Summary
 Configuration getCurrentConfiguration()
          This method should deliver a Configuration object containing the current configuration of this instance.
 void inputRecord(IMonitoringRecord monitoringRecord)
           
 void terminate(boolean error)
          Initiates a termination of the plugin.
 
Methods inherited from class kieker.analysis.plugin.filter.AbstractFilterPlugin
init
 
Methods inherited from class kieker.analysis.plugin.AbstractPlugin
areAllRepositoryPortsConnected, connect, connect, getAllDisplayNames, getAllInputPortNames, getAllOutputPortNames, getAllRepositoryPortNames, getConnectedPlugins, getCurrentRepositories, getIncomingPlugins, getName, getPluginDescription, getPluginName, getState, isConnectionAllowed, shutdown, start
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface kieker.analysis.plugin.IPlugin
connect, getAllDisplayNames, getAllInputPortNames, getAllOutputPortNames, getConnectedPlugins, getCurrentRepositories, getName, getPluginDescription, getPluginName, getState
 

Field Detail

INPUT_PORT_NAME_RECORDS

public static final String INPUT_PORT_NAME_RECORDS
See Also:
Constant Field Values

OUTPUT_PORT_NAME_RECORDS

public static final String OUTPUT_PORT_NAME_RECORDS
See Also:
Constant Field Values

CONFIG_PROPERTY_NAME_NUM_WORKERS

public static final String CONFIG_PROPERTY_NAME_NUM_WORKERS
The number of threads to be used for the internal ThreadPoolExecutor, processing the scheduled IMonitoringRecords.

See Also:
Constant Field Values

CONFIG_PROPERTY_NAME_ADDITIONAL_SHUTDOWN_DELAY_SECONDS

public static final String CONFIG_PROPERTY_NAME_ADDITIONAL_SHUTDOWN_DELAY_SECONDS
The number of additional seconds to wait before execute the termination (after all records have been forwarded)

See Also:
Constant Field Values
Constructor Detail

RealtimeRecordDelayFilter

public RealtimeRecordDelayFilter(Configuration configuration)
Method Detail

inputRecord

public final void inputRecord(IMonitoringRecord monitoringRecord)

terminate

public void terminate(boolean error)
Description copied from interface: IPlugin
Initiates a termination of the plugin. This method is only used by the framework and should not be called manually. Use the method AnalysisController.terminate(boolean) instead. After receiving this notification, the plugin should terminate any running methods, e.g., read for readers.

Specified by:
terminate in interface IPlugin
Overrides:
terminate in class AbstractFilterPlugin

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.6

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