Kieker 1.12

kieker.analysis.plugin.reader.amqp
Class AMQPReader

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.amqp.AMQPReader
All Implemented Interfaces:
IAnalysisComponent, IPlugin, IReaderPlugin

public final class AMQPReader
extends AbstractReaderPlugin

Reader plugin that reads monitoring records from an AMQP queue.

Since:
1.12
Author:
Holger Knoche

Nested Class Summary
 
Nested classes/interfaces inherited from interface kieker.analysis.plugin.IPlugin
IPlugin.PluginInputPortReference, IPlugin.STATE
 
Field Summary
static java.lang.String CONFIG_PROPERTY_HEARTBEAT
          The name of the configuration property for the heartbeat timeout.
static java.lang.String CONFIG_PROPERTY_QUEUENAME
          The name of the configuration property for the AMQP queue name.
static java.lang.String CONFIG_PROPERTY_URI
          The name of the configuration property for the server URI.
static java.lang.String OUTPUT_PORT_NAME_RECORDS
          The name of the output port delivering the received records.
 
Fields inherited from class kieker.analysis.analysisComponent.AbstractAnalysisComponent
CONFIG_NAME, configuration, log, LOG, projectContext, recordsTimeUnitFromProjectContext
 
Constructor Summary
AMQPReader(Configuration configuration, IProjectContext projectContext)
          Creates a new AMQP reader with the given configuration in the given context.
 
Method Summary
protected  void deliverRecord(IMonitoringRecord monitoringRecord)
           
 Configuration getCurrentConfiguration()
          This method should deliver a Configuration object containing the current configuration of this instance.
 boolean init()
          Initiates the start of a component.
 boolean read()
          Starts the reader.
 void terminate(boolean error)
          Initiates a termination of the plugin.
 
Methods inherited from class kieker.analysis.plugin.AbstractPlugin
areAllRepositoryPortsConnected, connect, connect, deliver, getAllDisplayNames, getAllInputPortNames, getAllOutputPortNames, getAllRepositoryPortNames, getConnectedPlugins, getCurrentRepositories, getDefaultConfiguration, getIncomingPlugins, getPluginDescription, getPluginName, getRepository, getState, isConnectionAllowed, notifyNewIncomingConnection, notifyNewOutgoingConnection, shutdown, start
 
Methods inherited from class kieker.analysis.analysisComponent.AbstractAnalysisComponent
getName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, 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 java.lang.String OUTPUT_PORT_NAME_RECORDS
The name of the output port delivering the received records.

See Also:
Constant Field Values

CONFIG_PROPERTY_URI

public static final java.lang.String CONFIG_PROPERTY_URI
The name of the configuration property for the server URI.

See Also:
Constant Field Values

CONFIG_PROPERTY_QUEUENAME

public static final java.lang.String CONFIG_PROPERTY_QUEUENAME
The name of the configuration property for the AMQP queue name.

See Also:
Constant Field Values

CONFIG_PROPERTY_HEARTBEAT

public static final java.lang.String CONFIG_PROPERTY_HEARTBEAT
The name of the configuration property for the heartbeat timeout.

See Also:
Constant Field Values
Constructor Detail

AMQPReader

public AMQPReader(Configuration configuration,
                  IProjectContext projectContext)
Creates a new AMQP reader with the given configuration in the given context.

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

init

public boolean init()
Description copied from class: AbstractReaderPlugin
Initiates the start of a component. This method is called once when a AnalysisController's run() method is called. This implementation must not be blocking! Asynchronous consumers would spawn (an) asynchronous thread(s) in this method.

Specified by:
init in interface IPlugin
Overrides:
init in class AbstractReaderPlugin
Returns:
true on success; false otherwise.

getCurrentConfiguration

public Configuration getCurrentConfiguration()
Description copied from class: AbstractAnalysisComponent
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.

read

public boolean read()
Description copied from interface: IReaderPlugin
Starts the reader. This method is intended to be a blocking operation, i.e., it is assumed that reading has finished before this method returns. The method should indicate an error by the return value false. In asynchronous scenarios, the IPlugin.terminate(boolean) method can be used to initiate the termination of this method.

Returns:
true if reading was successful; false if an error occurred

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.

Parameters:
error - Determines whether the plugin is terminated due to an error or not.

deliverRecord

protected void deliverRecord(IMonitoringRecord monitoringRecord)

Kieker 1.12

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