diff --git a/src/main/java/kieker/analysis/TraceAnalysisConfiguration.java b/src/main/java/kieker/analysis/TraceAnalysisConfiguration.java index e78b6a3561d27758714121ac2a4052b332ef6d1d..8fa261c34d2650da8ecbb52f1f337a14d5773f81 100644 --- a/src/main/java/kieker/analysis/TraceAnalysisConfiguration.java +++ b/src/main/java/kieker/analysis/TraceAnalysisConfiguration.java @@ -7,14 +7,13 @@ import java.io.File; import java.util.ArrayList; import java.util.List; -import com.tinkerpop.blueprints.Graph; - import kieker.analysis.dev.DependencyCreatorStage; import kieker.analysis.dev.DependencyStatisticsDecoratorStage; import kieker.analysis.domain.AggregatedOperationCall; import kieker.analysis.domain.AggregatedTrace; import kieker.analysis.domain.OperationCall; import kieker.analysis.domain.Trace; +import kieker.analysis.graph.Graph; import kieker.analysis.stage.tracediagnosis.AllowedRecordsFilter; import kieker.analysis.stage.tracediagnosis.BeginEndOfMonitoringDetector; import kieker.analysis.stage.tracediagnosis.OperationCallHandlerComposite; @@ -25,7 +24,6 @@ import kieker.analysis.trace.graphoutput.DotGraphWriter; import kieker.analysis.trace.graphoutput.GraphMLWriter; import kieker.analysis.trace.traversal.AggrTraceTraverserStage; import kieker.analysis.trace.traversal.TraceTraverserStage; -import kieker.analysis.util.graph.NamedGraph; import kieker.common.record.IMonitoringRecord; import kieker.common.record.misc.KiekerMetadataRecord; @@ -78,18 +76,18 @@ public class TraceAnalysisConfiguration extends Configuration { String graphFilesOutputDir = "example/event monitoring log/output"; // TODO Temp hard coded TraceTraverserStage traceTraverserStage = new TraceTraverserStage(); - final Distributor<NamedGraph<Graph>> graphDistributor = new Distributor<>(new CopyByReferenceStrategy()); + final Distributor<Graph> graphDistributor = new Distributor<>(new CopyByReferenceStrategy()); GraphMLWriter graphMLWriter = new GraphMLWriter(graphFilesOutputDir); DotGraphWriter dotGraphWriter = new DotGraphWriter(graphFilesOutputDir); super.connectPorts(distributor.getNewOutputPort(), traceTraverserStage.getInputPort()); super.connectPorts(traceTraverserStage.getOutputPort(), graphDistributor.getInputPort()); - super.connectPorts(graphDistributor.getNewOutputPort(), graphMLWriter.getInputPort()); - super.connectPorts(graphDistributor.getNewOutputPort(), dotGraphWriter.getInputPort()); + // super.connectPorts(graphDistributor.getNewOutputPort(), graphMLWriter.getInputPort()); + // super.connectPorts(graphDistributor.getNewOutputPort(), dotGraphWriter.getInputPort()); final Distributor<AggregatedTrace> aggregatedTraceDistributor = new Distributor<>(new CopyByReferenceStrategy()); AggrTraceTraverserStage aggrTraceTraverser = new AggrTraceTraverserStage(); - final Distributor<NamedGraph<Graph>> graphDistributor2 = new Distributor<>(new CopyByReferenceStrategy()); + final Distributor<Graph> graphDistributor2 = new Distributor<>(new CopyByReferenceStrategy()); GraphMLWriter graphMLWriter2 = new GraphMLWriter(graphFilesOutputDir); DotGraphWriter dotGraphWriter2 = new DotGraphWriter(graphFilesOutputDir); @@ -97,8 +95,8 @@ public class TraceAnalysisConfiguration extends Configuration { super.connectPorts(aggregatedTraceDistributor.getNewOutputPort(), aggrTraceTraverser.getInputPort()); super.connectPorts(aggrTraceTraverser.getOutputPort(), graphDistributor2.getInputPort()); - super.connectPorts(graphDistributor2.getNewOutputPort(), graphMLWriter2.getInputPort()); - super.connectPorts(graphDistributor2.getNewOutputPort(), dotGraphWriter2.getInputPort()); + // super.connectPorts(graphDistributor2.getNewOutputPort(), graphMLWriter2.getInputPort()); + // super.connectPorts(graphDistributor2.getNewOutputPort(), dotGraphWriter2.getInputPort()); DependencyCreatorStage dependencyCreatorStage = new DependencyCreatorStage(); DependencyStatisticsDecoratorStage dependencyStatisticsDecoratorStage = new DependencyStatisticsDecoratorStage(); diff --git a/src/main/java/kieker/analysis/trace/traversal/AbstractTraceToGraphTransformer.java b/src/main/java/kieker/analysis/trace/traversal/AbstractTraceToGraphTransformer.java index 77fb05acf09022826909142f70e5857de7bfb834..4307507d205ef05537199276e50693fe95a1990a 100644 --- a/src/main/java/kieker/analysis/trace/traversal/AbstractTraceToGraphTransformer.java +++ b/src/main/java/kieker/analysis/trace/traversal/AbstractTraceToGraphTransformer.java @@ -1,11 +1,10 @@ package kieker.analysis.trace.traversal; -import com.tinkerpop.blueprints.Edge; -import com.tinkerpop.blueprints.Graph; -import com.tinkerpop.blueprints.Vertex; -import com.tinkerpop.blueprints.impls.tg.TinkerGraph; - import kieker.analysis.domain.AbstractOperationCall; +import kieker.analysis.graph.Edge; +import kieker.analysis.graph.Graph; +import kieker.analysis.graph.Vertex; +import kieker.analysis.graph.impl.GraphImpl; public abstract class AbstractTraceToGraphTransformer<C extends AbstractOperationCall<C>> extends OperationCallVisitor<C> { @@ -18,7 +17,7 @@ public abstract class AbstractTraceToGraphTransformer<C extends AbstractOperatio public AbstractTraceToGraphTransformer(final C rootOperartionCall) { super(); - this.graph = new TinkerGraph(); + this.graph = new GraphImpl(); this.rootOperationCall = rootOperartionCall; } @@ -54,7 +53,8 @@ public abstract class AbstractTraceToGraphTransformer<C extends AbstractOperatio final Vertex rootVertex = graph.addVertex("Entry"); rootVertex.setProperty("label", "'Entry'"); - graph.addEdge(null, rootVertex, realRootVertex, "1."); + Edge edge = graph.addEdge(null, rootVertex, realRootVertex); + edge.setProperty("label", "1."); } diff --git a/src/main/java/kieker/analysis/trace/traversal/AggrTraceToGraphTransformer.java b/src/main/java/kieker/analysis/trace/traversal/AggrTraceToGraphTransformer.java index d8cae5ea43e9202f8e33404442881b22bde07164..4203ed75596eecba4221ff15181abd4abdd07d87 100644 --- a/src/main/java/kieker/analysis/trace/traversal/AggrTraceToGraphTransformer.java +++ b/src/main/java/kieker/analysis/trace/traversal/AggrTraceToGraphTransformer.java @@ -1,9 +1,8 @@ package kieker.analysis.trace.traversal; -import com.tinkerpop.blueprints.Edge; -import com.tinkerpop.blueprints.Vertex; - import kieker.analysis.domain.AggregatedOperationCall; +import kieker.analysis.graph.Edge; +import kieker.analysis.graph.Vertex; import kieker.analysis.util.NameConverter; public class AggrTraceToGraphTransformer extends AbstractTraceToGraphTransformer<AggregatedOperationCall> { @@ -49,7 +48,9 @@ public class AggrTraceToGraphTransformer extends AbstractTraceToGraphTransformer return null; } - return graph.addEdge(null, parentVertex, thisVertex, String.valueOf(operationCall.getOrderIndex() + 1) + '.'); + final Edge edge = graph.addEdge(null, parentVertex, thisVertex); + edge.setProperty("label", String.valueOf(operationCall.getOrderIndex() + 1) + '.'); + return edge; } } diff --git a/src/main/java/kieker/analysis/trace/traversal/AggrTraceTraverserStage.java b/src/main/java/kieker/analysis/trace/traversal/AggrTraceTraverserStage.java index 7d24977a6cdfaf7f1ac7e2d1fb9089bc59f10a61..52eba1aa8d7068934f657b14ef10c77ecc9fce22 100644 --- a/src/main/java/kieker/analysis/trace/traversal/AggrTraceTraverserStage.java +++ b/src/main/java/kieker/analysis/trace/traversal/AggrTraceTraverserStage.java @@ -1,14 +1,12 @@ package kieker.analysis.trace.traversal; -import com.tinkerpop.blueprints.Graph; - import kieker.analysis.domain.AggregatedOperationCall; import kieker.analysis.domain.AggregatedTrace; -import kieker.analysis.util.graph.NamedGraph; +import kieker.analysis.graph.Graph; import teetime.stage.basic.AbstractTransformation; -public class AggrTraceTraverserStage extends AbstractTransformation<AggregatedTrace, NamedGraph<Graph>> { +public class AggrTraceTraverserStage extends AbstractTransformation<AggregatedTrace, Graph> { @Override protected void execute(final AggregatedTrace trace) { @@ -21,7 +19,8 @@ public class AggrTraceTraverserStage extends AbstractTransformation<AggregatedTr final String name = "aggr-trace-" + trace.hashCode(); - final NamedGraph<Graph> graph = new NamedGraph<>(name, name, aggrTrace2Blueprint.getGraph()); + final Graph graph = aggrTrace2Blueprint.getGraph(); + graph.setName(name); this.getOutputPort().send(graph); } diff --git a/src/main/java/kieker/analysis/trace/traversal/TraceToGraphTransformer.java b/src/main/java/kieker/analysis/trace/traversal/TraceToGraphTransformer.java index e1f54798edebc5843c9cefe00ae493dae57d85dd..b139dcd48facc9a2e25bf292bbb622b6cd2ce09c 100644 --- a/src/main/java/kieker/analysis/trace/traversal/TraceToGraphTransformer.java +++ b/src/main/java/kieker/analysis/trace/traversal/TraceToGraphTransformer.java @@ -1,9 +1,8 @@ package kieker.analysis.trace.traversal; -import com.tinkerpop.blueprints.Edge; -import com.tinkerpop.blueprints.Vertex; - import kieker.analysis.domain.OperationCall; +import kieker.analysis.graph.Edge; +import kieker.analysis.graph.Vertex; import kieker.analysis.util.NameConverter; public class TraceToGraphTransformer extends AbstractTraceToGraphTransformer<OperationCall> { @@ -48,7 +47,9 @@ public class TraceToGraphTransformer extends AbstractTraceToGraphTransformer<Ope return null; } - return graph.addEdge(null, parentVertex, thisVertex, String.valueOf(operationCall.getOrderIndex() + 1) + '.'); + final Edge edge = graph.addEdge(null, parentVertex, thisVertex); + edge.setProperty("label", String.valueOf(operationCall.getOrderIndex() + 1) + '.'); + return edge; } } diff --git a/src/main/java/kieker/analysis/trace/traversal/TraceTraverserStage.java b/src/main/java/kieker/analysis/trace/traversal/TraceTraverserStage.java index 3212e0a0a7a2b57034ff897244e867d263bc1228..7c17e798d340ce2bd959bcacc097b136b8ccd9d2 100644 --- a/src/main/java/kieker/analysis/trace/traversal/TraceTraverserStage.java +++ b/src/main/java/kieker/analysis/trace/traversal/TraceTraverserStage.java @@ -1,14 +1,12 @@ package kieker.analysis.trace.traversal; -import com.tinkerpop.blueprints.Graph; - import kieker.analysis.domain.OperationCall; import kieker.analysis.domain.Trace; -import kieker.analysis.util.graph.NamedGraph; +import kieker.analysis.graph.Graph; import teetime.stage.basic.AbstractTransformation; -public class TraceTraverserStage extends AbstractTransformation<Trace, NamedGraph<Graph>> { +public class TraceTraverserStage extends AbstractTransformation<Trace, Graph> { @Override protected void execute(final Trace trace) { @@ -21,7 +19,8 @@ public class TraceTraverserStage extends AbstractTransformation<Trace, NamedGrap final String name = "trace-" + trace.hashCode(); - final NamedGraph<Graph> graph = new NamedGraph<>(name, name, traceToGraph.getGraph()); + final Graph graph = traceToGraph.getGraph(); + graph.setName(name); this.getOutputPort().send(graph); }