Kieker 1.12

kieker.tools.traceAnalysis.filter.visualization
Class AbstractGraphFilter<G extends AbstractGraph<V,E,O>,V extends AbstractVertex<V,E,O>,E extends AbstractEdge<V,E,O>,O>

java.lang.Object
  extended by kieker.analysis.analysisComponent.AbstractAnalysisComponent
      extended by kieker.analysis.plugin.AbstractPlugin
          extended by kieker.analysis.plugin.filter.AbstractFilterPlugin
              extended by kieker.tools.traceAnalysis.filter.visualization.AbstractGraphFilter<G,V,E,O>
Type Parameters:
G - The graph that is processed by this filter
V - The vertex type of the graph
E - The edge type of the graph
O - The type of the graph's elements origins
All Implemented Interfaces:
IAnalysisComponent, IFilterPlugin, IPlugin, IGraphOutputtingFilter<G>
Direct Known Subclasses:
DescriptionDecoratorFilter, TraceColoringFilter

public abstract class AbstractGraphFilter<G extends AbstractGraph<V,E,O>,V extends AbstractVertex<V,E,O>,E extends AbstractEdge<V,E,O>,O>
extends AbstractFilterPlugin
implements IGraphOutputtingFilter<G>

Abstract superclass for all graph filters.

Since:
1.6
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 INPUT_PORT_NAME_GRAPH
          The name of the filter's graph input port.
 
Fields inherited from class kieker.analysis.analysisComponent.AbstractAnalysisComponent
CONFIG_NAME, log, LOG, projectContext, recordsTimeUnitFromProjectContext
 
Fields inherited from interface kieker.tools.traceAnalysis.filter.IGraphOutputtingFilter
OUTPUT_PORT_NAME_GRAPH
 
Constructor Summary
AbstractGraphFilter(Configuration configuration, IProjectContext projectContext)
          Creates a new filter with the given configuration.
 
Method Summary
 Configuration getCurrentConfiguration()
          This method should deliver a Configuration object containing the current configuration of this instance.
protected abstract  IOriginRetentionPolicy getDesiredOriginRetentionPolicy()
           
 java.lang.String getGraphInputPortName()
          Returns the name of the port this filter accepts graphs on.
 java.lang.String getGraphOutputPortName()
          Returns the name of the port this filter uses to emit the graph.
 boolean init()
          Initiates the start of a component.
protected  void notifyNewIncomingConnection(java.lang.String inputPortName, AbstractPlugin connectedPlugin, java.lang.String outputPortName)
          Notification method which is called when a new incoming connection to this plugin is established.
protected abstract  G performConcreteGraphProcessing(G graph)
          This method encapsulates the concrete graph processing performed by the concrete filters.
 void processGraph(G graph)
          Processes the given graph.
 
Methods inherited from class kieker.analysis.plugin.filter.AbstractFilterPlugin
terminate
 
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, 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

INPUT_PORT_NAME_GRAPH

public static final java.lang.String INPUT_PORT_NAME_GRAPH
The name of the filter's graph input port.

See Also:
Constant Field Values
Constructor Detail

AbstractGraphFilter

public AbstractGraphFilter(Configuration configuration,
                           IProjectContext projectContext)
Creates a new filter with the given configuration.

Parameters:
configuration - The filter configuration to use
projectContext - The project context to use.
Method Detail

notifyNewIncomingConnection

protected void notifyNewIncomingConnection(java.lang.String inputPortName,
                                           AbstractPlugin connectedPlugin,
                                           java.lang.String outputPortName)
                                    throws AnalysisConfigurationException
Description copied from class: AbstractPlugin
Notification method which is called when a new incoming connection to this plugin is established.

Overrides:
notifyNewIncomingConnection in class AbstractPlugin
Parameters:
inputPortName - The input port name to which the connection was established
connectedPlugin - The plugin that was connected
outputPortName - The opposing plugin's output port from which the connection was established
Throws:
AnalysisConfigurationException - If an error occurs while processing of this notification

init

public boolean init()
Description copied from class: AbstractFilterPlugin
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 AbstractFilterPlugin
Returns:
true on success; false otherwise.

getDesiredOriginRetentionPolicy

protected abstract IOriginRetentionPolicy getDesiredOriginRetentionPolicy()
                                                                   throws AnalysisConfigurationException
Throws:
AnalysisConfigurationException

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.

processGraph

public void processGraph(G graph)
Processes the given graph.

Parameters:
graph - The graph to process

getGraphOutputPortName

public java.lang.String getGraphOutputPortName()
Returns the name of the port this filter uses to emit the graph.

Specified by:
getGraphOutputPortName in interface IGraphOutputtingFilter<G extends AbstractGraph<V,E,O>>
Returns:
See above

getGraphInputPortName

public java.lang.String getGraphInputPortName()
Returns the name of the port this filter accepts graphs on.

Returns:
See above

performConcreteGraphProcessing

protected abstract G performConcreteGraphProcessing(G graph)
This method encapsulates the concrete graph processing performed by the concrete filters.

Parameters:
graph - The graph to process
Returns:
The processed graph, which may be the same as the input graph

Kieker 1.12

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