private void createPlotAssemblyOperationDependencyGraph(final List<AbstractTraceProcessingFilter> allTraceProcessingComponents, final List<AbstractGraphProducingFilter<?>> allGraphProducers, final TraceReconstructionFilter mtReconstrFilter, final TraceEventRecords2ExecutionAndMessageTraceFilter traceEvents2ExecutionAndMessageTraceFilter, final SystemModelRepository systemEntityFactory) throws IllegalStateException, AnalysisConfigurationException { final Configuration configuration = new Configuration(); final OperationDependencyGraphAssemblyFilter componentPlotAssemblyOperationDepGraph = new OperationDependencyGraphAssemblyFilter(configuration, this.analysisController); this.addDecorators(this.settings.getPlotAssemblyOperationDependencyGraph(), componentPlotAssemblyOperationDepGraph); this.analysisController.connect(mtReconstrFilter, TraceReconstructionFilter.OUTPUT_PORT_NAME_MESSAGE_TRACE, componentPlotAssemblyOperationDepGraph, AbstractMessageTraceProcessingFilter.INPUT_PORT_NAME_MESSAGE_TRACES); this.analysisController.connect(traceEvents2ExecutionAndMessageTraceFilter, TraceEventRecords2ExecutionAndMessageTraceFilter.OUTPUT_PORT_NAME_MESSAGE_TRACE, componentPlotAssemblyOperationDepGraph, AbstractMessageTraceProcessingFilter.INPUT_PORT_NAME_MESSAGE_TRACES); this.analysisController.connect(componentPlotAssemblyOperationDepGraph, AbstractTraceAnalysisFilter.REPOSITORY_PORT_NAME_SYSTEM_MODEL, systemEntityFactory); allTraceProcessingComponents.add(componentPlotAssemblyOperationDepGraph); allGraphProducers.add(componentPlotAssemblyOperationDepGraph); }
final AssemblyComponentOperationPairFactory pairFactory = this.getSystemEntityFactory().getAssemblyPairFactory(); senderPair = this.getGraph().getRootNode().getEntity(); } else { senderPair = pairFactory.getPairInstanceByPair(senderComponent, senderOperation); receiverPair = this.getGraph().getRootNode().getEntity(); } else { receiverPair = pairFactory.getPairInstanceByPair(receiverComponent, receiverOperation); DependencyGraphNode<AssemblyComponentOperationPair> senderNode = this.getGraph().getNode(senderPair.getId()); DependencyGraphNode<AssemblyComponentOperationPair> receiverNode = this.getGraph().getNode(receiverPair.getId()); if (senderNode == null) { senderNode = new DependencyGraphNode<>(senderPair.getId(), senderPair, t.getTraceInformation(), this.getOriginRetentionPolicy()); this.getGraph().addNode(senderNode.getId(), senderNode); } else { this.handleOrigin(senderNode, t.getTraceInformation()); this.getOriginRetentionPolicy()); this.getGraph().addNode(receiverNode.getId(), receiverNode); } else { this.handleOrigin(receiverNode, t.getTraceInformation()); final boolean assumed = this.isDependencyAssumed(senderNode, receiverNode); senderNode.addOutgoingDependency(receiverNode, assumed, t.getTraceInformation(), this.getOriginRetentionPolicy());