Kieker 1.9

kieker.analysis.plugin.reader.namedRecordPipe
Class PipeReader

java.lang.Object
  extended by kieker.analysis.analysisComponent.AbstractAnalysisComponent
      extended by kieker.analysis.plugin.AbstractPlugin
          extended by kieker.analysis.plugin.reader.AbstractReaderPlugin
              extended by kieker.analysis.plugin.reader.namedRecordPipe.PipeReader
All Implemented Interfaces:
IAnalysisComponent, IPlugin, IReaderPlugin, IPipeReader

public final class PipeReader
extends AbstractReaderPlugin
implements IPipeReader

This reader can be used to read records via an in-memory pipe.

Since:
1.3
Author:
Andre van Hoorn

Nested Class Summary
 
Nested classes/interfaces inherited from interface kieker.analysis.plugin.IPlugin
IPlugin.PluginInputPortReference, IPlugin.STATE
 
Field Summary
static String CONFIG_PROPERTY_NAME_PIPENAME
          This is the configuration-parameter for the name of the pipe to be used.
static String CONFIG_PROPERTY_VALUE_PIPENAME_DEFAULT
          The default used pipe name.
static String OUTPUT_PORT_NAME_RECORDS
          This is the name of the default output port.
 
Fields inherited from class kieker.analysis.analysisComponent.AbstractAnalysisComponent
CONFIG_NAME
 
Constructor Summary
PipeReader(Configuration configuration, IProjectContext projectContext)
          Creates a new instance of this class using the given parameters.
 
Method Summary
 Configuration getCurrentConfiguration()
          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.
 boolean newMonitoringRecord(IMonitoringRecord rec)
          This method sends a given records directly to the output port.
 void notifyPipeClosed()
          Called to notify the reader that the pipe is closed.
 boolean read()
          Blocks until the associated pipe is being closed.
 void terminate(boolean error)
          Initiates a termination of the plugin.
 
Methods inherited from class kieker.analysis.plugin.reader.AbstractReaderPlugin
init
 
Methods inherited from class kieker.analysis.plugin.AbstractPlugin
areAllRepositoryPortsConnected, connect, connect, getAllDisplayNames, getAllInputPortNames, getAllOutputPortNames, getAllRepositoryPortNames, getConnectedPlugins, getCurrentRepositories, getIncomingPlugins, getPluginDescription, getPluginName, getState, isConnectionAllowed, shutdown, start
 
Methods inherited from class kieker.analysis.analysisComponent.AbstractAnalysisComponent
getName
 
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, getAllRepositoryPortNames, getConnectedPlugins, getCurrentRepositories, getName, getPluginDescription, getPluginName, getState
 

Field Detail

OUTPUT_PORT_NAME_RECORDS

public static final String OUTPUT_PORT_NAME_RECORDS
This is the name of the default output port.

See Also:
Constant Field Values

CONFIG_PROPERTY_NAME_PIPENAME

public static final String CONFIG_PROPERTY_NAME_PIPENAME
This is the configuration-parameter for the name of the pipe to be used.

See Also:
Constant Field Values

CONFIG_PROPERTY_VALUE_PIPENAME_DEFAULT

public static final String CONFIG_PROPERTY_VALUE_PIPENAME_DEFAULT
The default used pipe name.

See Also:
Constant Field Values
Constructor Detail

PipeReader

public PipeReader(Configuration configuration,
                  IProjectContext projectContext)
Creates a new instance of this class using the given parameters.

Parameters:
configuration - The configuration for this component.
projectContext - The project context for this component.
Method Detail

read

public boolean read()
Blocks until the associated pipe is being closed.

Specified by:
read in interface IReaderPlugin
Returns:
true if the reading terminated in a "normal" way. If an interrupt terminates the wait-method too early, false will be returned.

newMonitoringRecord

public boolean newMonitoringRecord(IMonitoringRecord rec)
This method sends a given records directly to the output port.

Specified by:
newMonitoringRecord in interface IPipeReader
Parameters:
rec - The new record object.
Returns:
true if and only if the record has been delivered.

notifyPipeClosed

public void notifyPipeClosed()
Called to notify the reader that the pipe is closed.

Specified by:
notifyPipeClosed in interface IPipeReader

terminate

public void terminate(boolean error)
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
Parameters:
error - Determines whether the plugin is terminated due to an error or not.

getCurrentConfiguration

public Configuration getCurrentConfiguration()
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.

Specified by:
getCurrentConfiguration in interface IAnalysisComponent
Specified by:
getCurrentConfiguration in interface IPlugin
Specified by:
getCurrentConfiguration in class AbstractAnalysisComponent
Returns:
A completely filled configuration object.

Kieker 1.9

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