提交 ba7a043e 编写于 作者: Y youyong205

add project delete function

上级 0b8f275e
<plexus>
<components>
<component>
<role>com.dianping.cat.DomainManager</role>
<implementation>com.dianping.cat.DomainManager</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.ServerConfigManager</role>
</requirement>
<requirement>
<role>com.dianping.cat.core.dal.ProjectDao</role>
</requirement>
<requirement>
<role>com.dianping.cat.core.dal.HostinfoDao</role>
</requirement>
</requirements>
<role>com.dianping.cat.broker.api.page.IpService</role>
<implementation>com.dianping.cat.broker.api.page.IpService</implementation>
</component>
<component>
<role>com.dianping.cat.task.TaskManager</role>
<implementation>com.dianping.cat.task.TaskManager</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.core.dal.TaskDao</role>
</requirement>
</requirements>
<role>com.dianping.cat.broker.api.page.RequestUtils</role>
<implementation>com.dianping.cat.broker.api.page.RequestUtils</implementation>
</component>
<component>
<role>com.dianping.cat.ServerConfigManager</role>
<implementation>com.dianping.cat.ServerConfigManager</implementation>
</component>
<component>
<role>com.dianping.cat.statistic.ServerStatisticManager</role>
<implementation>com.dianping.cat.statistic.ServerStatisticManager</implementation>
</component>
<component>
<role>com.dianping.cat.message.spi.core.MessagePathBuilder</role>
<implementation>com.dianping.cat.message.spi.core.DefaultMessagePathBuilder</implementation>
</component>
<component>
<role>com.dianping.cat.analysis.MessageAnalyzerManager</role>
<implementation>com.dianping.cat.analysis.DefaultMessageAnalyzerManager</implementation>
</component>
<component>
<role>com.dianping.cat.message.spi.core.TcpSocketReceiver</role>
<implementation>com.dianping.cat.message.spi.core.TcpSocketReceiver</implementation>
<role>com.dianping.cat.broker.api.page.MonitorManager</role>
<implementation>com.dianping.cat.broker.api.page.MonitorManager</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.ServerConfigManager</role>
</requirement>
<requirement>
<role>com.dianping.cat.statistic.ServerStatisticManager</role>
</requirement>
<requirement>
<role>com.dianping.cat.message.spi.MessageCodec</role>
<role-hint>plain-text</role-hint>
<role>com.dianping.cat.config.UrlPatternConfigManager</role>
</requirement>
<requirement>
<role>com.dianping.cat.message.spi.core.MessageHandler</role>
<role>com.dianping.cat.broker.api.page.IpService</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.message.spi.core.MessageHandler</role>
<implementation>com.dianping.cat.message.spi.core.DefaultMessageHandler</implementation>
</component>
<component>
<role>com.dianping.cat.config.UrlPatternHandler</role>
<implementation>com.dianping.cat.config.DefaultUrlPatternHandler</implementation>
</component>
<component>
<role>com.dianping.cat.config.UrlPatternConfigManager</role>
<implementation>com.dianping.cat.config.UrlPatternConfigManager</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.core.config.ConfigDao</role>
</requirement>
<requirement>
<role>com.dianping.cat.config.UrlPatternHandler</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.storage.dump.MessageBucket</role>
<role-hint>local</role-hint>
<implementation>com.dianping.cat.storage.dump.LocalMessageBucket</implementation>
<instantiation-strategy>per-lookup</instantiation-strategy>
<requirements>
<requirement>
<role>com.dianping.cat.message.spi.MessageCodec</role>
<role-hint>plain-text</role-hint>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.storage.dump.MessageBucketManager</role>
<role-hint>local</role-hint>
<implementation>com.dianping.cat.storage.dump.LocalMessageBucketManager</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.ServerConfigManager</role>
</requirement>
<requirement>
<role>com.dianping.cat.message.spi.core.MessagePathBuilder</role>
</requirement>
<requirement>
<role>com.dianping.cat.statistic.ServerStatisticManager</role>
</requirement>
</requirements>
</component>
<component>
<role>org.unidal.initialization.Module</role>
<role-hint>cat-core</role-hint>
<implementation>com.dianping.cat.CatCoreModule</implementation>
</component>
<component>
<role>org.unidal.dal.jdbc.mapping.TableProvider</role>
<role-hint>config</role-hint>
<implementation>org.unidal.dal.jdbc.mapping.SimpleTableProvider</implementation>
<configuration>
<logical-table-name>config</logical-table-name>
<physical-table-name>config</physical-table-name>
<data-source-name>cat</data-source-name>
</configuration>
</component>
<component>
<role>com.dianping.cat.core.config.ConfigDao</role>
<implementation>com.dianping.cat.core.config.ConfigDao</implementation>
<requirements>
<requirement>
<role>org.unidal.dal.jdbc.QueryEngine</role>
</requirement>
</requirements>
</component>
<component>
<role>org.unidal.dal.jdbc.mapping.TableProvider</role>
<role-hint>dailygraph</role-hint>
<implementation>org.unidal.dal.jdbc.mapping.SimpleTableProvider</implementation>
<configuration>
<logical-table-name>dailygraph</logical-table-name>
<physical-table-name>dailygraph</physical-table-name>
<data-source-name>cat</data-source-name>
</configuration>
</component>
<component>
<role>org.unidal.dal.jdbc.mapping.TableProvider</role>
<role-hint>dailyreport</role-hint>
<implementation>org.unidal.dal.jdbc.mapping.SimpleTableProvider</implementation>
<configuration>
<logical-table-name>dailyreport</logical-table-name>
<physical-table-name>dailyreport</physical-table-name>
<data-source-name>cat</data-source-name>
</configuration>
</component>
<component>
<role>org.unidal.dal.jdbc.mapping.TableProvider</role>
<role-hint>graph</role-hint>
<implementation>org.unidal.dal.jdbc.mapping.SimpleTableProvider</implementation>
<role>org.unidal.dal.jdbc.datasource.JdbcDataSourceDescriptorManager</role>
<implementation>org.unidal.dal.jdbc.datasource.JdbcDataSourceDescriptorManager</implementation>
<configuration>
<logical-table-name>graph</logical-table-name>
<physical-table-name>graph</physical-table-name>
<data-source-name>cat</data-source-name>
<datasourceFile>/data/appdatas/cat/datasources.xml</datasourceFile>
</configuration>
</component>
<component>
<role>org.unidal.dal.jdbc.mapping.TableProvider</role>
<role-hint>hostinfo</role-hint>
<implementation>org.unidal.dal.jdbc.mapping.SimpleTableProvider</implementation>
<role>org.unidal.web.mvc.model.ModuleRegistry</role>
<implementation>org.unidal.web.mvc.model.ModuleRegistry</implementation>
<configuration>
<logical-table-name>hostinfo</logical-table-name>
<physical-table-name>hostinfo</physical-table-name>
<data-source-name>cat</data-source-name>
<modules>
<module default="true">com.dianping.cat.broker.api.ApiModule</module>
</modules>
</configuration>
</component>
<component>
<role>org.unidal.dal.jdbc.mapping.TableProvider</role>
<role-hint>monthreport</role-hint>
<implementation>org.unidal.dal.jdbc.mapping.SimpleTableProvider</implementation>
<configuration>
<logical-table-name>monthreport</logical-table-name>
<physical-table-name>monthreport</physical-table-name>
<data-source-name>cat</data-source-name>
</configuration>
<role>com.dianping.cat.broker.api.ApiModule</role>
<implementation>com.dianping.cat.broker.api.ApiModule</implementation>
</component>
<component>
<role>org.unidal.dal.jdbc.mapping.TableProvider</role>
<role-hint>project</role-hint>
<implementation>org.unidal.dal.jdbc.mapping.SimpleTableProvider</implementation>
<configuration>
<logical-table-name>project</logical-table-name>
<physical-table-name>project</physical-table-name>
<data-source-name>cat</data-source-name>
</configuration>
</component>
<component>
<role>org.unidal.dal.jdbc.mapping.TableProvider</role>
<role-hint>report</role-hint>
<implementation>org.unidal.dal.jdbc.mapping.SimpleTableProvider</implementation>
<configuration>
<logical-table-name>report</logical-table-name>
<physical-table-name>report</physical-table-name>
<data-source-name>cat</data-source-name>
</configuration>
</component>
<component>
<role>org.unidal.dal.jdbc.mapping.TableProvider</role>
<role-hint>report-content</role-hint>
<implementation>org.unidal.dal.jdbc.mapping.SimpleTableProvider</implementation>
<configuration>
<logical-table-name>report-content</logical-table-name>
<physical-table-name>report_content</physical-table-name>
<data-source-name>cat</data-source-name>
</configuration>
</component>
<component>
<role>org.unidal.dal.jdbc.mapping.TableProvider</role>
<role-hint>task</role-hint>
<implementation>org.unidal.dal.jdbc.mapping.SimpleTableProvider</implementation>
<configuration>
<logical-table-name>task</logical-table-name>
<physical-table-name>task</physical-table-name>
<data-source-name>cat</data-source-name>
</configuration>
</component>
<component>
<role>org.unidal.dal.jdbc.mapping.TableProvider</role>
<role-hint>weeklyreport</role-hint>
<implementation>org.unidal.dal.jdbc.mapping.SimpleTableProvider</implementation>
<configuration>
<logical-table-name>weeklyreport</logical-table-name>
<physical-table-name>weeklyreport</physical-table-name>
<data-source-name>cat</data-source-name>
</configuration>
</component>
<component>
<role>com.dianping.cat.core.dal.DailyGraphDao</role>
<implementation>com.dianping.cat.core.dal.DailyGraphDao</implementation>
<role>com.dianping.cat.broker.api.page.single.Handler</role>
<implementation>com.dianping.cat.broker.api.page.single.Handler</implementation>
<requirements>
<requirement>
<role>org.unidal.dal.jdbc.QueryEngine</role>
<role>com.dianping.cat.broker.api.page.single.JspViewer</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.core.dal.DailyReportDao</role>
<implementation>com.dianping.cat.core.dal.DailyReportDao</implementation>
<requirements>
<requirement>
<role>org.unidal.dal.jdbc.QueryEngine</role>
<role>com.dianping.cat.broker.api.page.MonitorManager</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.core.dal.GraphDao</role>
<implementation>com.dianping.cat.core.dal.GraphDao</implementation>
<requirements>
<requirement>
<role>org.unidal.dal.jdbc.QueryEngine</role>
<role>com.dianping.cat.broker.api.page.RequestUtils</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.core.dal.HostinfoDao</role>
<implementation>com.dianping.cat.core.dal.HostinfoDao</implementation>
<role>com.dianping.cat.broker.api.page.single.JspViewer</role>
<implementation>com.dianping.cat.broker.api.page.single.JspViewer</implementation>
<requirements>
<requirement>
<role>org.unidal.dal.jdbc.QueryEngine</role>
<role>org.unidal.web.mvc.view.model.ModelHandler</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.core.dal.MonthlyReportDao</role>
<implementation>com.dianping.cat.core.dal.MonthlyReportDao</implementation>
<role>com.dianping.cat.broker.api.page.MonitorManager</role>
<implementation>com.dianping.cat.broker.api.page.MonitorManager</implementation>
<requirements>
<requirement>
<role>org.unidal.dal.jdbc.QueryEngine</role>
<role>com.dianping.cat.broker.api.page.IpService</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.core.dal.ProjectDao</role>
<implementation>com.dianping.cat.core.dal.ProjectDao</implementation>
<requirements>
<requirement>
<role>org.unidal.dal.jdbc.QueryEngine</role>
<role>com.dianping.cat.config.UrlPatternConfigManager</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.core.dal.HourlyReportDao</role>
<implementation>com.dianping.cat.core.dal.HourlyReportDao</implementation>
<requirements>
<requirement>
<role>org.unidal.dal.jdbc.QueryEngine</role>
</requirement>
</requirements>
<role>com.dianping.cat.broker.api.page.IpService</role>
<implementation>com.dianping.cat.broker.api.page.IpService</implementation>
</component>
<component>
<role>com.dianping.cat.core.dal.HourlyReportContentDao</role>
<implementation>com.dianping.cat.core.dal.HourlyReportContentDao</implementation>
<role>com.dianping.cat.config.UrlPatternConfigManager</role>
<implementation>com.dianping.cat.config.UrlPatternConfigManager</implementation>
<requirements>
<requirement>
<role>org.unidal.dal.jdbc.QueryEngine</role>
<role>com.dianping.cat.core.config.ConfigDao</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.core.dal.TaskDao</role>
<implementation>com.dianping.cat.core.dal.TaskDao</implementation>
<requirements>
<requirement>
<role>org.unidal.dal.jdbc.QueryEngine</role>
<role>com.dianping.cat.config.UrlPatternHandler</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.core.dal.WeeklyReportDao</role>
<implementation>com.dianping.cat.core.dal.WeeklyReportDao</implementation>
<role>com.dianping.cat.core.config.ConfigDao</role>
<implementation>com.dianping.cat.core.config.ConfigDao</implementation>
<requirements>
<requirement>
<role>org.unidal.dal.jdbc.QueryEngine</role>
......@@ -322,47 +102,30 @@
</requirements>
</component>
<component>
<role>com.dianping.cat.message.spi.codec.BufferWriter</role>
<role-hint>html</role-hint>
<implementation>com.dianping.cat.message.spi.core.HtmlEncodingBufferWriter</implementation>
<role>com.dianping.cat.broker.api.page.RequestUtils</role>
<implementation>com.dianping.cat.broker.api.page.RequestUtils</implementation>
</component>
<component>
<role>com.dianping.cat.message.spi.MessageCodec</role>
<role-hint>html</role-hint>
<implementation>com.dianping.cat.message.spi.core.HtmlMessageCodec</implementation>
<role>com.dianping.cat.broker.api.page.batch.Handler</role>
<implementation>com.dianping.cat.broker.api.page.batch.Handler</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.message.spi.codec.BufferWriter</role>
<role-hint>html</role-hint>
<role>com.dianping.cat.broker.api.page.batch.JspViewer</role>
</requirement>
<requirement>
<role>com.dianping.cat.broker.api.page.MonitorManager</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.message.spi.MessageCodec</role>
<role-hint>waterfall</role-hint>
<implementation>com.dianping.cat.message.spi.core.WaterfallMessageCodec</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.message.spi.codec.BufferWriter</role>
<role-hint>html</role-hint>
<role>com.dianping.cat.broker.api.page.RequestUtils</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.storage.BucketManager</role>
<implementation>com.dianping.cat.storage.DefaultBucketManager</implementation>
</component>
<component>
<role>com.dianping.cat.storage.Bucket</role>
<role-hint>java.lang.String-report</role-hint>
<implementation>com.dianping.cat.storage.report.LocalReportBucket</implementation>
<instantiation-strategy>per-lookup</instantiation-strategy>
<role>com.dianping.cat.broker.api.page.batch.JspViewer</role>
<implementation>com.dianping.cat.broker.api.page.batch.JspViewer</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.ServerConfigManager</role>
</requirement>
<requirement>
<role>com.dianping.cat.message.spi.core.MessagePathBuilder</role>
<role>org.unidal.web.mvc.view.model.ModelHandler</role>
</requirement>
</requirements>
</component>
......
......@@ -142,7 +142,7 @@ public class DefaultUserMonitGraphCreator extends BaseGraphCreator implements Us
int id = segment.getId();
if (key.endsWith(Monitor.HIT)) {
count[id] = segment.getCount();
count[id] = segment.getCount() * 10;
avg[id] = segment.getAvg();
} else if (key.endsWith(Monitor.ERROR)) {
error[id] = segment.getCount();
......@@ -151,12 +151,10 @@ public class DefaultUserMonitGraphCreator extends BaseGraphCreator implements Us
}
for (int i = 0; i < 60; i++) {
double countNumber = count[i] * 10.0;
double errerNumber = error[i];
double sum = countNumber + errerNumber;
double sum = count[i] + error[i];
if (sum > 0) {
successPercent[i] = countNumber * 100 / sum;
successPercent[i] = count[i] * 100 / sum;
} else {
successPercent[i] = 100;
}
......
......@@ -6,6 +6,8 @@ public enum Action implements org.unidal.web.mvc.Action {
PROJECT_UPDATE("update"),
PROJECT_UPDATE_SUBMIT("updateSubmit"),
PROJECT_DELETE("projectDelete"),
AGGREGATION_ALL("aggregations"),
......
......@@ -109,6 +109,17 @@ public class Handler implements PageHandler<Context> {
m_exceptionConfigManager.deleteExceptionLimit(payload.getDomain(), payload.getException());
}
private void deleteProject(Payload payload) {
try {
Project proto = new Project();
proto.setId(payload.getProjectId());
proto.setKeyId(payload.getProjectId());
m_projectDao.deleteByPK(proto);
} catch (Exception e) {
Cat.logError(e);
}
}
private void graphEdgeConfigAdd(Payload payload, Model model) {
String type = payload.getType();
String from = payload.getFrom();
......@@ -203,7 +214,10 @@ public class Handler implements PageHandler<Context> {
updateProject(payload);
model.setProjects(queryAllProjects());
break;
case PROJECT_DELETE:
deleteProject(payload);
model.setProjects(queryAllProjects());
break;
case AGGREGATION_ALL:
model.setAggregationRules(m_aggreationConfigManager.queryAggregationRules());
break;
......
......@@ -16,6 +16,8 @@ public class JspViewer extends BaseJspViewer<SystemPage, Action, Context, Model>
return JspFile.PROJECT_UPATE.getPath();
case PROJECT_UPDATE_SUBMIT:
return JspFile.PROJECT_ALL.getPath();
case PROJECT_DELETE:
return JspFile.PROJECT_ALL.getPath();
case AGGREGATION_ALL:
return JspFile.AGGREGATION_ALL.getPath();
case AGGREGATION_DELETE:
......
......@@ -17,6 +17,9 @@
<script type="text/javascript">
$(document).ready(function() {
$('#projectList').addClass('active');
$(".delete").bind("click", function() {
return confirm("确定要删除此项目吗(不可恢复)?");
});
init();
});
</script>
......@@ -46,7 +49,8 @@
<td>${item.projectLine}</td>
<td>${item.email}</td>
<td>${item.owner}</td>
<td><a class="btn btn-primary btn-small" href="?op=update&projectId=${item.id}">编辑</a></td>
<td><a class="btn btn-primary btn-small" href="?op=update&projectId=${item.id}">编辑</a>
<a class="btn btn-danger btn-small delete" href="?op=projectDelete&projectId=${item.id}">删除</a></td>
</tr>
</c:forEach></tbody>
</table>
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册