From 9e0f8cb537b9411f3bc75f76d9250728e5f58c45 Mon Sep 17 00:00:00 2001 From: zhangxin10 Date: Thu, 21 Jan 2016 14:13:58 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=BF=BD=E5=8A=A0ChainDetail?= =?UTF-8?q?=E7=9A=84=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../skywalking/analysis/model/CategorizedChainInfo.java | 9 ++++----- .../ai/cloud/skywalking/analysis/model/ChainDetail.java | 4 +--- .../ai/cloud/skywalking/analysis/model/ChainRelate.java | 9 ++++++--- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/skywalking-analysis/src/main/java/com/ai/cloud/skywalking/analysis/model/CategorizedChainInfo.java b/skywalking-analysis/src/main/java/com/ai/cloud/skywalking/analysis/model/CategorizedChainInfo.java index 61e7584e1..1c7c8f7e1 100644 --- a/skywalking-analysis/src/main/java/com/ai/cloud/skywalking/analysis/model/CategorizedChainInfo.java +++ b/skywalking-analysis/src/main/java/com/ai/cloud/skywalking/analysis/model/CategorizedChainInfo.java @@ -45,15 +45,14 @@ public class CategorizedChainInfo { } public boolean isContained(UncategorizeChainInfo uncategorizeChainInfo) { - - if (children_Token.contains(uncategorizeChainInfo.getChainToken())) { - return false; - } - Pattern pattern = Pattern.compile(uncategorizeChainInfo.getNodeRegEx()); return pattern.matcher(getChainStr()).find(); } + public boolean isAlreadyContained(UncategorizeChainInfo uncategorizeChainInfo) { + return children_Token.contains(uncategorizeChainInfo.getChainToken()); + } + public void add(UncategorizeChainInfo uncategorizeChainInfo) { children_Token.add(uncategorizeChainInfo.getChainToken()); } diff --git a/skywalking-analysis/src/main/java/com/ai/cloud/skywalking/analysis/model/ChainDetail.java b/skywalking-analysis/src/main/java/com/ai/cloud/skywalking/analysis/model/ChainDetail.java index 431122363..04e379c7f 100644 --- a/skywalking-analysis/src/main/java/com/ai/cloud/skywalking/analysis/model/ChainDetail.java +++ b/skywalking-analysis/src/main/java/com/ai/cloud/skywalking/analysis/model/ChainDetail.java @@ -1,9 +1,7 @@ package com.ai.cloud.skywalking.analysis.model; -/** - * Created by astraea on 2016/1/21. - */ public class ChainDetail { + public ChainDetail(ChainInfo chainInfo) { } diff --git a/skywalking-analysis/src/main/java/com/ai/cloud/skywalking/analysis/model/ChainRelate.java b/skywalking-analysis/src/main/java/com/ai/cloud/skywalking/analysis/model/ChainRelate.java index 8751de5f1..66f443276 100644 --- a/skywalking-analysis/src/main/java/com/ai/cloud/skywalking/analysis/model/ChainRelate.java +++ b/skywalking-analysis/src/main/java/com/ai/cloud/skywalking/analysis/model/ChainRelate.java @@ -35,18 +35,21 @@ public class ChainRelate { private void classifiedChains(UncategorizeChainInfo child) { boolean isContained = false; for (Map.Entry entry : categorizedChainInfoMap.entrySet()) { - if (entry.getValue().isContained(child)) { + + if (!entry.getValue().isAlreadyContained(child) && entry.getValue().isContained(child)) { entry.getValue().add(child); isContained = true; + } - + if (!entry.getValue().isAlreadyContained(child)) { + chainDetailMap.put(child.getChainToken(), new ChainDetail(child)); } } if (!isContained) { uncategorizeChainInfoList.add(child); - if (!uncategorizeChainInfoList.contains(child)){ + if (!uncategorizeChainInfoList.contains(child)) { chainDetailMap.put(child.getChainToken(), new ChainDetail(child)); }