Class AbstractCallTreeFilter<T>

java.lang.Object
teetime.framework.AbstractStage
teetime.framework.AbstractConsumerStage<T>
kieker.analysis.architecture.trace.AbstractTraceAnalysisStage<T>
kieker.analysis.architecture.trace.AbstractTraceProcessingStage<kieker.model.system.model.MessageTrace>
kieker.analysis.plugin.trace.AbstractMessageTraceProcessingFilter
kieker.visualization.trace.call.tree.AbstractCallTreeFilter<T>
Type Parameters:
T -
Direct Known Subclasses:
AbstractAggregatedCallTreeFilter

public abstract class AbstractCallTreeFilter<T>
extends kieker.analysis.plugin.trace.AbstractMessageTraceProcessingFilter
Plugin providing the creation of calling trees both for individual traces and an aggregated form multiple traces.
Since:
1.1
  • Nested Class Summary

    Nested Classes 
    Modifier and Type Class Description
    static interface  AbstractCallTreeFilter.IPairFactory<T>  
  • Field Summary

    Fields inherited from class teetime.framework.AbstractConsumerStage

    inputPort

    Fields inherited from class teetime.framework.AbstractStage

    logger
  • Constructor Summary

    Constructors 
    Constructor Description
    AbstractCallTreeFilter​(kieker.model.repository.SystemModelRepository repository)
    Creates a new instance of this class using the given parameters.
  • Method Summary

    Modifier and Type Method Description
    protected static <T> void addTraceToTree​(AbstractCallTreeNode<T> root, kieker.model.system.model.MessageTrace trace, AbstractCallTreeFilter.IPairFactory<T> pairFactory, boolean aggregated)
    Adds the given trace to the given tree.
    protected static java.lang.String nodeLabel​(AbstractCallTreeNode<?> node, boolean shortLabels)
    Add a node label.
    protected static void saveTreeToDotFile​(AbstractCallTreeNode<?> root, java.lang.String outputFn, boolean includeWeights, boolean includeEois, boolean shortLabels)
    This method saves the given tree as valid dot code into the given file.
    static <T> void writeDotForMessageTrace​(AbstractCallTreeNode<T> root, AbstractCallTreeFilter.IPairFactory<T> pairFactory, kieker.model.system.model.MessageTrace msgTrace, java.lang.String outputFilename, boolean includeWeights, boolean shortLabels)
    Write dot info for message trace.

    Methods inherited from class kieker.analysis.plugin.trace.AbstractMessageTraceProcessingFilter

    execute

    Methods inherited from class kieker.analysis.architecture.trace.AbstractTraceProcessingStage

    getErrorCount, getLastTraceIdError, getLastTraceIdSuccess, getSuccessCount, getTotalCount, printStatusMessage, reportError, reportSuccess

    Methods inherited from class kieker.analysis.architecture.trace.AbstractTraceAnalysisStage

    createExecutionByEntityNames, createExecutionByEntityNames, createExecutionByEntityNames, createExecutionByEntityNames, getSystemModelRepository, printDebugLogMessage, printErrorLogMessage

    Methods inherited from class teetime.framework.AbstractConsumerStage

    createInputPort, execute, getInputPort

    Methods inherited from class teetime.framework.AbstractStage

    abort, addInputPortRemovedListener, addOutputPortRemovedListener, compareAndSetBeingExecuted, createInputPort, createInputPort, createInputPort, createOutputPort, createOutputPort, createOutputPort, createOutputPort, declareActive, declarePassive, executeByFramework, getCurrentState, getId, getInputPorts, getOutputPorts, getOwningThread, getTerminationStrategy, isActive, isBeingExecuted, isPaused, isProducer, isStateless, onSignal, onStarting, onTerminating, onValidating, removeDynamicPort, removeDynamicPort, setPaused, setStateless, shouldBeTerminated, signalAlreadyReceived, terminateStage, toString, workCompleted

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • AbstractCallTreeFilter

      public AbstractCallTreeFilter​(kieker.model.repository.SystemModelRepository repository)
      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 Details

    • nodeLabel

      protected static final java.lang.String nodeLabel​(AbstractCallTreeNode<?> node, boolean shortLabels)
      Add a node label.
      Parameters:
      node - the node
      shortLabels - selects whether short or long labels should be produced
      Returns:
      the label string
    • saveTreeToDotFile

      protected static void saveTreeToDotFile​(AbstractCallTreeNode<?> root, java.lang.String outputFn, boolean includeWeights, boolean includeEois, boolean shortLabels) throws java.io.IOException
      This method saves the given tree as valid dot code into the given file.
      Parameters:
      root - The root of the tree.
      outputFn - The file in which the code will be written.
      includeWeights - Determines whether to include weights or not.
      includeEois - Determines whether to include the execution order indices or not.
      shortLabels - Determines whether to use short labels or not.
      Throws:
      java.io.IOException - on IO error
    • addTraceToTree

      protected static <T> void addTraceToTree​(AbstractCallTreeNode<T> root, kieker.model.system.model.MessageTrace trace, AbstractCallTreeFilter.IPairFactory<T> pairFactory, boolean aggregated) throws TraceProcessingException
      Adds the given trace to the given tree.
      Type Parameters:
      T - The type of the tree.
      Parameters:
      root - The root of the call tree.
      trace - The trace to add.
      pairFactory - The factory creating the necessary pairs for the tree.
      aggregated - Determines whether the tree is aggregated or not.
      Throws:
      TraceProcessingException - If the message type is not supported or the trace is somehow invalid.
    • writeDotForMessageTrace

      public static <T> void writeDotForMessageTrace​(AbstractCallTreeNode<T> root, AbstractCallTreeFilter.IPairFactory<T> pairFactory, kieker.model.system.model.MessageTrace msgTrace, java.lang.String outputFilename, boolean includeWeights, boolean shortLabels) throws TraceProcessingException, java.io.IOException
      Write dot info for message trace.
      Type Parameters:
      T - type of trace
      Parameters:
      root - root
      pairFactory - factory to create pairs
      msgTrace - message trace
      outputFilename - output file
      includeWeights - weights
      shortLabels - flag for short labels
      Throws:
      TraceProcessingException - when there is a processing error with the trace
      java.io.IOException