提交 212bc504 编写于 作者: Y yong.you

codegen upgrate 2.0.8

上级 eb51b686
......@@ -48,7 +48,7 @@
<plugin>
<groupId>org.unidal.maven.plugins</groupId>
<artifactId>codegen-maven-plugin</artifactId>
<version>2.0.5</version>
<version>2.0.8</version>
<executions>
<execution>
<id>generate data model</id>
......
......@@ -46,7 +46,7 @@
<plugin>
<groupId>org.unidal.maven.plugins</groupId>
<artifactId>codegen-maven-plugin</artifactId>
<version>2.0.5</version>
<version>2.0.8</version>
<executions>
<execution>
<id>generate report models</id>
......
package com.dianping.cat.consumer.sql;
import java.util.Stack;
import com.dianping.cat.Constants;
import com.dianping.cat.consumer.sql.model.entity.Database;
import com.dianping.cat.consumer.sql.model.entity.Method;
......@@ -11,16 +13,33 @@ public class SqlReportMerger extends DefaultMerger {
private boolean m_allDatabase = false;
private Database m_all;
public SqlReportMerger(SqlReport sqlReport) {
super(sqlReport);
}
@Override
protected void mergeDatabase(Database old, Database database) {
old.setConnectUrl(database.getConnectUrl());
super.mergeDatabase(old, database);
protected void visitSqlReportChildren(SqlReport to, SqlReport from) {
Stack<Object> objs = getObjects();
for (Database source : from.getDatabases().values()) {
Database target;
if (m_allDatabase) {
target = to.findOrCreateDatabase(Constants.ALL);
} else {
target = to.findOrCreateDatabase(source.getId());
}
objs.push(target);
source.accept(this);
objs.pop();
}
}
@Override
protected void mergeDatabase(Database to, Database from) {
if (!m_allDatabase) {
super.mergeDatabase(to, from);
}
}
@Override
......@@ -42,7 +61,6 @@ public class SqlReportMerger extends DefaultMerger {
visitDatabaseChildren(machine, m);
}
}
return machine;
}
......@@ -59,22 +77,9 @@ public class SqlReportMerger extends DefaultMerger {
m_allDatabase = true;
}
@Override
public void visitDatabase(Database domain) {
if (m_allDatabase) {
visitDatabaseChildren(m_all, domain);
} else {
super.visitDatabase(domain);
}
}
@Override
public void visitSqlReport(SqlReport sqlReport) {
SqlReport old = getSqlReport();
if (m_allDatabase) {
m_all = old.findOrCreateDatabase(Constants.ALL);
}
super.visitSqlReport(sqlReport);
old.setStartTime(sqlReport.getStartTime());
old.setEndTime(sqlReport.getEndTime());
......
......@@ -36,7 +36,7 @@
<plugin>
<groupId>org.unidal.maven.plugins</groupId>
<artifactId>codegen-maven-plugin</artifactId>
<version>2.0.5</version>
<version>2.0.8</version>
<executions>
<execution>
<id>generate report models</id>
......
package com.dianping.cat.consumer.problem;
import java.util.List;
import java.util.Stack;
import com.dianping.cat.consumer.problem.model.entity.Duration;
import com.dianping.cat.consumer.problem.model.entity.Entry;
......@@ -16,7 +17,7 @@ public class ProblemReportMerger extends DefaultMerger {
super(problemReport);
}
protected Entry findEntry(Machine machine, Entry entry) {
protected Entry findOrCreateEntry(Machine machine, Entry entry) {
String type = entry.getType();
String status = entry.getStatus();
......@@ -26,14 +27,19 @@ public class ProblemReportMerger extends DefaultMerger {
}
}
return null;
Entry result = new Entry();
result.setStatus(status).setType(type);
machine.addEntry(result);
return result;
}
@Override
protected void mergeDuration(Duration old, Duration duration) {
List<String> messages = old.getMessages();
old.setValue(duration.getValue());
old.setCount(old.getCount() + duration.getCount());
List<String> messages = old.getMessages();
if (messages.size() < SIZE) {
messages.addAll(duration.getMessages());
if (messages.size() > SIZE) {
......@@ -44,8 +50,9 @@ public class ProblemReportMerger extends DefaultMerger {
@Override
protected void mergeSegment(Segment old, Segment segment) {
old.setCount(old.getCount() + segment.getCount());
List<String> messages = old.getMessages();
old.setCount(old.getCount() + segment.getCount());
if (messages.size() < SIZE) {
messages.addAll(segment.getMessages());
if (messages.size() > SIZE) {
......@@ -55,18 +62,16 @@ public class ProblemReportMerger extends DefaultMerger {
}
@Override
public void visitEntry(Entry entry) {
Machine machine = (Machine) getObjects().peek();
Entry old = findEntry(machine, entry);
protected void visitMachineChildren(Machine to, Machine from) {
Stack<Object> objs = getObjects();
if (old == null) {
old = new Entry();
old.setType(entry.getType()).setStatus(entry.getStatus());
for (Entry source : from.getEntries()) {
Entry target = findOrCreateEntry(to, source);
machine.addEntry(old);
objs.push(target);
source.accept(this);
objs.pop();
}
visitEntryChildren(old, entry);
}
@Override
......
......@@ -20,8 +20,10 @@ public class ProblemReportMergerTest {
reportOld.accept(merger);
reportNew.accept(merger);
Assert.assertEquals("Source report is changed!", newXml.replace("\r", ""), reportNew.toString().replace("\r", ""));
Assert.assertEquals("Source report is changed!", oldXml.replace("\r", ""), reportOld.toString().replace("\r", ""));
Assert.assertEquals("Check the merge result!", expected.replace("\r", ""), merger.getProblemReport().toString()
.replace("\r", ""));
Assert.assertEquals("Source report is changed!", newXml.replace("\r", ""), reportNew.toString().replace("\r", ""));
}
}
......@@ -56,7 +56,7 @@
<plugin>
<groupId>org.unidal.maven.plugins</groupId>
<artifactId>codegen-maven-plugin</artifactId>
<version>2.0.5</version>
<version>2.0.8</version>
<executions>
<execution>
<id>generate data model</id>
......
......@@ -49,7 +49,7 @@
<plugin>
<groupId>org.unidal.maven.plugins</groupId>
<artifactId>codegen-maven-plugin</artifactId>
<version>2.0.5</version>
<version>2.0.8</version>
<executions>
<execution>
<id>generate plexus component descriptor</id>
......
......@@ -155,7 +155,7 @@
<plugin>
<groupId>org.unidal.maven.plugins</groupId>
<artifactId>codegen-maven-plugin</artifactId>
<version>2.0.5</version>
<version>2.0.8</version>
<executions>
<execution>
<id>generate plexus component descriptor</id>
......
......@@ -174,7 +174,7 @@ public class Handler implements PageHandler<Context> {
m_externalInfoBuilder.buildExceptionInfoOnGraph(payload, model, topologyGraph);
model.setReportStart(new Date(payload.getDate()));
model.setReportEnd(new Date(payload.getDate() + TimeUtil.ONE_HOUR - 1));
model.setTopologyGraph(new DefaultJsonBuilder().buildJson(topologyGraph));
model.setTopologyGraph(new DefaultJsonBuilder().build(topologyGraph));
break;
case LINE_CHART:
DependencyReport dependencyReport = queryDependencyReport(payload);
......
......@@ -70,7 +70,7 @@ public class Model extends AbstractReportModel<Action, Context> {
}
public String getBugs() {
return new DefaultJsonBuilder().buildJson(m_bugReport);
return new DefaultJsonBuilder().build(m_bugReport);
}
public List<Service> getCacheServices() {
......
package com.dianping.cat.report.task.problem;
import java.util.Stack;
import com.dianping.cat.consumer.problem.ProblemReportMerger;
import com.dianping.cat.consumer.problem.model.entity.JavaThread;
import com.dianping.cat.consumer.problem.model.entity.Duration;
import com.dianping.cat.consumer.problem.model.entity.Entry;
import com.dianping.cat.consumer.problem.model.entity.ProblemReport;
public class HistoryProblemReportMerger extends ProblemReportMerger {
......@@ -10,8 +13,19 @@ public class HistoryProblemReportMerger extends ProblemReportMerger {
super(problemReport);
}
@Override
public void visitThread(JavaThread thread) {
// do nothing
protected void visitEntryChildren(Entry to, Entry from) {
Stack<Object> objs = getObjects();
for (Duration source : from.getDurations().values()) {
Duration target = to.findDuration(source.getValue());
if (target == null) {
target = new Duration(source.getValue());
to.addDuration(target);
}
objs.push(target);
source.accept(this);
objs.pop();
}
}
}
package com.dianping.cat.report.task.state;
import static com.dianping.cat.consumer.state.model.Constants.ENTITY_PROCESSDOMAINS;
import java.util.Stack;
import com.dianping.cat.consumer.state.StateReportMerger;
......@@ -15,19 +13,22 @@ public class HistoryStateReportMerger extends StateReportMerger {
super(stateReport);
}
protected void visitMachineChildren(Machine old, Machine machine) {
if (old != null) {
Stack<Object> objs = getObjects();
Stack<String> tags = getTags();
objs.push(old);
for (ProcessDomain processDomain : machine.getProcessDomains().values()) {
tags.push(ENTITY_PROCESSDOMAINS);
visitProcessDomain(processDomain);
tags.pop();
}
objs.pop();
}
protected void visitMachineChildren(Machine to, Machine from) {
Stack<Object> objs = getObjects();
for (ProcessDomain source : from.getProcessDomains().values()) {
ProcessDomain target = to.findProcessDomain(source.getName());
if (target == null) {
target = new ProcessDomain(source.getName());
to.addProcessDomain(target);
}
objs.push(target);
source.accept(this);
objs.pop();
}
}
}
......@@ -15,6 +15,6 @@ public class DependencyGraphReport {
TopologyGraph front = DefaultSaxParser.parse(oldXml);
DefaultJsonBuilder build = new DefaultJsonBuilder();
System.out.println(build.buildJson(front));
System.out.println(build.build(front));
}
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册