提交 90d0bb9d 编写于 作者: Y yong.you

refator componment

上级 b0b0b1e5
......@@ -12,20 +12,11 @@ import org.unidal.lookup.configuration.Component;
import com.dianping.cat.CatHomeModule;
import com.dianping.cat.configuration.ServerConfigManager;
import com.dianping.cat.consumer.DomainManager;
import com.dianping.cat.consumer.RealtimeConsumer;
import com.dianping.cat.consumer.advanced.dal.BusinessReportDao;
import com.dianping.cat.consumer.core.config.ConfigDao;
import com.dianping.cat.consumer.core.dal.ProjectDao;
import com.dianping.cat.consumer.core.dal.ReportDao;
import com.dianping.cat.consumer.core.dal.TaskDao;
import com.dianping.cat.home.dal.report.DailygraphDao;
import com.dianping.cat.home.dal.report.DailyreportDao;
import com.dianping.cat.home.dal.report.EventDao;
import com.dianping.cat.home.dal.report.GraphDao;
import com.dianping.cat.home.dal.report.MonthreportDao;
import com.dianping.cat.home.dal.report.TopologyGraphDao;
import com.dianping.cat.home.dal.report.WeeklyreportDao;
import com.dianping.cat.message.spi.MessageConsumer;
import com.dianping.cat.message.spi.MessageConsumerRegistry;
import com.dianping.cat.message.spi.internal.DefaultMessageConsumerRegistry;
......@@ -42,46 +33,7 @@ import com.dianping.cat.report.page.externalError.EventCollectManager;
import com.dianping.cat.report.page.health.HistoryGraphs;
import com.dianping.cat.report.page.model.spi.ModelService;
import com.dianping.cat.report.page.state.StateGraphs;
import com.dianping.cat.report.service.DailyReportService;
import com.dianping.cat.report.service.HourlyReportService;
import com.dianping.cat.report.service.MonthReportCache;
import com.dianping.cat.report.service.MonthReportService;
import com.dianping.cat.report.service.ReportService;
import com.dianping.cat.report.service.WeeklyReportCache;
import com.dianping.cat.report.service.WeeklyReportService;
import com.dianping.cat.report.service.impl.DailyReportServiceImpl;
import com.dianping.cat.report.service.impl.HourlyReportServiceImpl;
import com.dianping.cat.report.service.impl.MonthReportServiceImpl;
import com.dianping.cat.report.service.impl.ReportServiceImpl;
import com.dianping.cat.report.service.impl.WeeklyReportServiceImpl;
import com.dianping.cat.report.task.cross.CrossMerger;
import com.dianping.cat.report.task.cross.CrossReportBuilder;
import com.dianping.cat.report.task.database.DatabaseMerger;
import com.dianping.cat.report.task.database.DatabaseReportBuilder;
import com.dianping.cat.report.task.dependency.DependencyReportBuilder;
import com.dianping.cat.report.task.event.EventGraphCreator;
import com.dianping.cat.report.task.event.EventMerger;
import com.dianping.cat.report.task.event.EventReportBuilder;
import com.dianping.cat.report.task.health.HealthReportBuilder;
import com.dianping.cat.report.task.health.HealthServiceCollector;
import com.dianping.cat.report.task.heartbeat.HeartbeatGraphCreator;
import com.dianping.cat.report.task.heartbeat.HeartbeatMerger;
import com.dianping.cat.report.task.heartbeat.HeartbeatReportBuilder;
import com.dianping.cat.report.task.matrix.MatrixMerger;
import com.dianping.cat.report.task.matrix.MatrixReportBuilder;
import com.dianping.cat.report.task.problem.ProblemGraphCreator;
import com.dianping.cat.report.task.problem.ProblemMerger;
import com.dianping.cat.report.task.problem.ProblemReportBuilder;
import com.dianping.cat.report.task.spi.ReportFacade;
import com.dianping.cat.report.task.sql.SqlMerger;
import com.dianping.cat.report.task.sql.SqlReportBuilder;
import com.dianping.cat.report.task.state.StateMerger;
import com.dianping.cat.report.task.state.StateReportBuilder;
import com.dianping.cat.report.task.thread.DefaultTaskConsumer;
import com.dianping.cat.report.task.thread.TaskProducer;
import com.dianping.cat.report.task.transaction.TransactionGraphCreator;
import com.dianping.cat.report.task.transaction.TransactionMerger;
import com.dianping.cat.report.task.transaction.TransactionReportBuilder;
import com.dianping.cat.report.view.DomainNavManager;
import com.dianping.cat.system.config.ProductLineConfigManager;
......@@ -101,88 +53,8 @@ public class ComponentsConfigurator extends AbstractResourceConfigurator {
all.add(C(GraphBuilder.class, DefaultGraphBuilder.class) //
.req(ValueTranslater.class));
all.add(C(DefaultTaskConsumer.class) //
.req(TaskDao.class, ReportFacade.class));
all.add(C(TransactionGraphCreator.class));
all.add(C(EventGraphCreator.class));
all.add(C(ProblemGraphCreator.class));
all.add(C(HeartbeatGraphCreator.class));
all.add(C(TransactionMerger.class));
all.add(C(EventMerger.class));
all.add(C(ProblemMerger.class));
all.add(C(HeartbeatMerger.class));
all.add(C(CrossMerger.class));
all.add(C(DatabaseMerger.class));
all.add(C(MatrixMerger.class));
all.add(C(SqlMerger.class));
all.add(C(StateMerger.class));
all.add(C(TransactionReportBuilder.class) //
.req(GraphDao.class, DailygraphDao.class, ReportDao.class, DailyreportDao.class,
TransactionGraphCreator.class)//
.req(TransactionMerger.class, WeeklyreportDao.class, MonthreportDao.class));
all.add(C(EventReportBuilder.class) //
.req(GraphDao.class, DailygraphDao.class, ReportDao.class, DailyreportDao.class, EventGraphCreator.class,
EventMerger.class)//
.req(WeeklyreportDao.class, MonthreportDao.class));
all.add(C(ProblemReportBuilder.class) //
.req(GraphDao.class, DailygraphDao.class, ReportDao.class, DailyreportDao.class, ProblemGraphCreator.class) //
.req(WeeklyreportDao.class, MonthreportDao.class, ProblemMerger.class));
all.add(C(HeartbeatReportBuilder.class) //
.req(GraphDao.class, DailygraphDao.class, ReportDao.class, DailyreportDao.class) //
.req(HeartbeatGraphCreator.class, HeartbeatMerger.class, WeeklyreportDao.class, MonthreportDao.class));
all.add(C(DatabaseReportBuilder.class) //
.req(GraphDao.class, DailygraphDao.class, ReportDao.class, DailyreportDao.class, DatabaseMerger.class)//
.req(WeeklyreportDao.class, MonthreportDao.class));
all.add(C(MatrixReportBuilder.class) //
.req(GraphDao.class, DailygraphDao.class, ReportDao.class, DailyreportDao.class, MatrixMerger.class)//
.req(WeeklyreportDao.class, MonthreportDao.class));
all.add(C(SqlReportBuilder.class) //
.req(GraphDao.class, DailygraphDao.class, ReportDao.class, DailyreportDao.class, SqlMerger.class)//
.req(WeeklyreportDao.class, MonthreportDao.class));
all.add(C(CrossReportBuilder.class) //
.req(GraphDao.class, DailygraphDao.class, ReportDao.class, DailyreportDao.class, CrossMerger.class)//
.req(WeeklyreportDao.class, MonthreportDao.class));
all.add(C(CrossReportBuilder.class) //
.req(GraphDao.class, DailygraphDao.class, ReportDao.class, DailyreportDao.class, CrossMerger.class)//
.req(WeeklyreportDao.class, MonthreportDao.class));
all.add(C(StateReportBuilder.class) //
.req(GraphDao.class, DailygraphDao.class, ReportDao.class, DailyreportDao.class, StateMerger.class)//
.req(WeeklyreportDao.class, MonthreportDao.class));
all.add(C(DependencyReportBuilder.class) //
.req(GraphDao.class, DailygraphDao.class, ReportDao.class, DailyreportDao.class)//
.req(WeeklyreportDao.class, MonthreportDao.class)//
.req(ReportService.class, TopologyGraphBuilder.class, TopologyGraphDao.class));
all.add(C(TaskProducer.class, TaskProducer.class) //
.req(TaskDao.class, ReportDao.class));
all.add(C(HealthReportBuilder.class) //
.req(GraphDao.class, ReportDao.class, DailyreportDao.class)//
.req(WeeklyreportDao.class, MonthreportDao.class, HealthServiceCollector.class));
all.add(C(ReportFacade.class)//
.req(TransactionReportBuilder.class, EventReportBuilder.class, ProblemReportBuilder.class,//
HeartbeatReportBuilder.class, MatrixReportBuilder.class, CrossReportBuilder.class,//
DatabaseReportBuilder.class, SqlReportBuilder.class, HealthReportBuilder.class,//
StateReportBuilder.class, DependencyReportBuilder.class));
all.add(C(PayloadNormalizer.class).req(ServerConfigManager.class));
all.add(C(HealthServiceCollector.class).req(DomainManager.class, ReportDao.class));
all.add(C(HistoryGraphs.class, HistoryGraphs.class).//
req(ReportService.class));
......@@ -193,28 +65,6 @@ public class ComponentsConfigurator extends AbstractResourceConfigurator {
all.add(C(ModuleManager.class, DefaultModuleManager.class) //
.config(E("topLevelModules").value(CatHomeModule.ID)));
all.add(C(DomainNavManager.class).req(ProjectDao.class, ServerConfigManager.class));
all.add(C(HourlyReportService.class, HourlyReportServiceImpl.class) //
.req(ReportDao.class, BusinessReportDao.class));
all.add(C(DailyReportService.class, DailyReportServiceImpl.class)//
.req(DailyreportDao.class));
all.add(C(WeeklyReportService.class, WeeklyReportServiceImpl.class)//
.req(WeeklyreportDao.class));
all.add(C(MonthReportService.class, MonthReportServiceImpl.class)//
.req(MonthreportDao.class));
all.add(C(WeeklyReportCache.class)//
.req(DailyReportService.class, HourlyReportService.class, ServerConfigManager.class));
all.add(C(MonthReportCache.class)//
.req(DailyReportService.class, HourlyReportService.class, ServerConfigManager.class));
all.add(C(ReportService.class, ReportServiceImpl.class)//
.req(HourlyReportService.class, DailyReportService.class, WeeklyReportService.class,
MonthReportService.class)//
.req(WeeklyReportCache.class, MonthReportCache.class));
all.add(C(EventCollectManager.class).req(EventDao.class, ServerConfigManager.class));
......@@ -225,14 +75,19 @@ public class ComponentsConfigurator extends AbstractResourceConfigurator {
all.add(C(TopologyGraphItemBuilder.class).req(TopologyGraphConfigManager.class));
all.add(C(TopologyGraphBuilder.class).req(TopologyGraphItemBuilder.class).is(PER_LOOKUP));
// model service
all.addAll(new ServiceComponentConfigurator().defineComponents());
all.add(C(TopologyGraphManager.class).req(TopologyGraphBuilder.class, ServerConfigManager.class) //
.req(ProductLineConfigManager.class, TopologyGraphDao.class)//
.req(ModelService.class, "dependency"));
// report serivce
all.addAll(new ReportServiceComponentConfigurator().defineComponents());
// task
all.addAll(new TaskComponentConfigurator().defineComponents());
// model service
all.addAll(new ServiceComponentConfigurator().defineComponents());
// database
all.add(C(JdbcDataSourceConfigurationManager.class) //
.config(E("datasourceFile").value("/data/appdatas/cat/datasources.xml")));
......
package com.dianping.cat.build;
import java.util.ArrayList;
import java.util.List;
import org.unidal.lookup.configuration.AbstractResourceConfigurator;
import org.unidal.lookup.configuration.Component;
import com.dianping.cat.configuration.ServerConfigManager;
import com.dianping.cat.consumer.advanced.dal.BusinessReportDao;
import com.dianping.cat.consumer.core.dal.ReportDao;
import com.dianping.cat.home.dal.report.DailyreportDao;
import com.dianping.cat.home.dal.report.MonthreportDao;
import com.dianping.cat.home.dal.report.WeeklyreportDao;
import com.dianping.cat.report.service.DailyReportService;
import com.dianping.cat.report.service.HourlyReportService;
import com.dianping.cat.report.service.MonthReportCache;
import com.dianping.cat.report.service.MonthReportService;
import com.dianping.cat.report.service.ReportService;
import com.dianping.cat.report.service.WeeklyReportCache;
import com.dianping.cat.report.service.WeeklyReportService;
import com.dianping.cat.report.service.impl.DailyReportServiceImpl;
import com.dianping.cat.report.service.impl.HourlyReportServiceImpl;
import com.dianping.cat.report.service.impl.MonthReportServiceImpl;
import com.dianping.cat.report.service.impl.ReportServiceImpl;
import com.dianping.cat.report.service.impl.WeeklyReportServiceImpl;
public class ReportServiceComponentConfigurator extends AbstractResourceConfigurator {
@Override
public List<Component> defineComponents() {
List<Component> all = new ArrayList<Component>();
all.add(C(HourlyReportService.class, HourlyReportServiceImpl.class) //
.req(ReportDao.class, BusinessReportDao.class));
all.add(C(DailyReportService.class, DailyReportServiceImpl.class)//
.req(DailyreportDao.class));
all.add(C(WeeklyReportService.class, WeeklyReportServiceImpl.class)//
.req(WeeklyreportDao.class));
all.add(C(MonthReportService.class, MonthReportServiceImpl.class)//
.req(MonthreportDao.class));
all.add(C(WeeklyReportCache.class)//
.req(DailyReportService.class, HourlyReportService.class, ServerConfigManager.class));
all.add(C(MonthReportCache.class)//
.req(DailyReportService.class, HourlyReportService.class, ServerConfigManager.class));
all.add(C(ReportService.class, ReportServiceImpl.class)//
.req(HourlyReportService.class, DailyReportService.class, WeeklyReportService.class,
MonthReportService.class)//
.req(WeeklyReportCache.class, MonthReportCache.class));
return all;
}
}
......@@ -6,61 +6,130 @@ import java.util.List;
import org.unidal.lookup.configuration.AbstractResourceConfigurator;
import org.unidal.lookup.configuration.Component;
import com.dianping.cat.configuration.ServerConfigManager;
import com.dianping.cat.consumer.RealtimeConsumer;
import com.dianping.cat.hadoop.hdfs.HdfsMessageBucketManager;
import com.dianping.cat.message.spi.MessageCodec;
import com.dianping.cat.message.spi.MessageConsumer;
import com.dianping.cat.report.page.model.cross.CompositeCrossService;
import com.dianping.cat.report.page.model.cross.HistoricalCrossService;
import com.dianping.cat.report.page.model.cross.LocalCrossService;
import com.dianping.cat.report.page.model.database.CompositeDatabaseService;
import com.dianping.cat.report.page.model.database.HistoricalDatabaseService;
import com.dianping.cat.report.page.model.database.LocalDatabaseService;
import com.dianping.cat.report.page.model.dependency.CompositeDependencyService;
import com.dianping.cat.report.page.model.dependency.HistoricalDependencyService;
import com.dianping.cat.report.page.model.dependency.LocalDependencyService;
import com.dianping.cat.report.page.model.event.CompositeEventService;
import com.dianping.cat.report.page.model.event.HistoricalEventService;
import com.dianping.cat.report.page.model.event.LocalEventService;
import com.dianping.cat.report.page.model.heartbeat.CompositeHeartbeatService;
import com.dianping.cat.report.page.model.heartbeat.HistoricalHeartbeatService;
import com.dianping.cat.report.page.model.heartbeat.LocalHeartbeatService;
import com.dianping.cat.report.page.model.logview.CompositeLogViewService;
import com.dianping.cat.report.page.model.logview.HistoricalMessageService;
import com.dianping.cat.report.page.model.logview.LocalMessageService;
import com.dianping.cat.report.page.model.matrix.CompositeMatrixService;
import com.dianping.cat.report.page.model.matrix.HistoricalMatrixService;
import com.dianping.cat.report.page.model.matrix.LocalMatrixService;
import com.dianping.cat.report.page.model.metric.CompositeMetricService;
import com.dianping.cat.report.page.model.metric.HistoricalMetricService;
import com.dianping.cat.report.page.model.metric.LocalMetricService;
import com.dianping.cat.report.page.model.problem.CompositeProblemService;
import com.dianping.cat.report.page.model.problem.HistoricalProblemService;
import com.dianping.cat.report.page.model.problem.LocalProblemService;
import com.dianping.cat.report.page.model.spi.ModelService;
import com.dianping.cat.report.page.model.sql.CompositeSqlService;
import com.dianping.cat.report.page.model.sql.HistoricalSqlService;
import com.dianping.cat.report.page.model.sql.LocalSqlService;
import com.dianping.cat.report.page.model.state.CompositeStateService;
import com.dianping.cat.report.page.model.state.HistoricalStateService;
import com.dianping.cat.report.page.model.state.LocalStateService;
import com.dianping.cat.report.page.model.top.CompositeTopService;
import com.dianping.cat.report.page.model.top.HistoricalTopService;
import com.dianping.cat.report.page.model.top.LocalTopService;
import com.dianping.cat.report.page.model.transaction.CompositeTransactionService;
import com.dianping.cat.report.page.model.transaction.HistoricalTransactionService;
import com.dianping.cat.report.page.model.transaction.LocalTransactionService;
import com.dianping.cat.consumer.DomainManager;
import com.dianping.cat.consumer.core.dal.ReportDao;
import com.dianping.cat.consumer.core.dal.TaskDao;
import com.dianping.cat.home.dal.report.DailygraphDao;
import com.dianping.cat.home.dal.report.DailyreportDao;
import com.dianping.cat.home.dal.report.GraphDao;
import com.dianping.cat.home.dal.report.MonthreportDao;
import com.dianping.cat.home.dal.report.TopologyGraphDao;
import com.dianping.cat.home.dal.report.WeeklyreportDao;
import com.dianping.cat.report.page.dependency.graph.TopologyGraphBuilder;
import com.dianping.cat.report.service.ReportService;
import com.dianping.cat.storage.BucketManager;
import com.dianping.cat.storage.dump.LocalMessageBucketManager;
import com.dianping.cat.storage.dump.MessageBucketManager;
import com.dianping.cat.report.task.cross.CrossMerger;
import com.dianping.cat.report.task.cross.CrossReportBuilder;
import com.dianping.cat.report.task.database.DatabaseMerger;
import com.dianping.cat.report.task.database.DatabaseReportBuilder;
import com.dianping.cat.report.task.dependency.DependencyReportBuilder;
import com.dianping.cat.report.task.event.EventGraphCreator;
import com.dianping.cat.report.task.event.EventMerger;
import com.dianping.cat.report.task.event.EventReportBuilder;
import com.dianping.cat.report.task.health.HealthReportBuilder;
import com.dianping.cat.report.task.health.HealthServiceCollector;
import com.dianping.cat.report.task.heartbeat.HeartbeatGraphCreator;
import com.dianping.cat.report.task.heartbeat.HeartbeatMerger;
import com.dianping.cat.report.task.heartbeat.HeartbeatReportBuilder;
import com.dianping.cat.report.task.matrix.MatrixMerger;
import com.dianping.cat.report.task.matrix.MatrixReportBuilder;
import com.dianping.cat.report.task.problem.ProblemGraphCreator;
import com.dianping.cat.report.task.problem.ProblemMerger;
import com.dianping.cat.report.task.problem.ProblemReportBuilder;
import com.dianping.cat.report.task.spi.ReportFacade;
import com.dianping.cat.report.task.sql.SqlMerger;
import com.dianping.cat.report.task.sql.SqlReportBuilder;
import com.dianping.cat.report.task.state.StateMerger;
import com.dianping.cat.report.task.state.StateReportBuilder;
import com.dianping.cat.report.task.thread.DefaultTaskConsumer;
import com.dianping.cat.report.task.thread.TaskProducer;
import com.dianping.cat.report.task.transaction.TransactionGraphCreator;
import com.dianping.cat.report.task.transaction.TransactionMerger;
import com.dianping.cat.report.task.transaction.TransactionReportBuilder;
class TaskComponentConfigurator extends AbstractResourceConfigurator {
public class TaskComponentConfigurator extends AbstractResourceConfigurator {
@Override
public List<Component> defineComponents() {
List<Component> all = new ArrayList<Component>();
all.add(C(HealthServiceCollector.class).req(DomainManager.class, ReportDao.class));
all.add(C(DefaultTaskConsumer.class) //
.req(TaskDao.class, ReportFacade.class));
all.add(C(TransactionGraphCreator.class));
all.add(C(EventGraphCreator.class));
all.add(C(ProblemGraphCreator.class));
all.add(C(HeartbeatGraphCreator.class));
all.add(C(TransactionMerger.class));
all.add(C(EventMerger.class));
all.add(C(ProblemMerger.class));
all.add(C(HeartbeatMerger.class));
all.add(C(CrossMerger.class));
all.add(C(DatabaseMerger.class));
all.add(C(MatrixMerger.class));
all.add(C(SqlMerger.class));
all.add(C(StateMerger.class));
all.add(C(TransactionReportBuilder.class) //
.req(GraphDao.class, DailygraphDao.class, ReportDao.class, DailyreportDao.class,
TransactionGraphCreator.class)//
.req(TransactionMerger.class, WeeklyreportDao.class, MonthreportDao.class));
all.add(C(EventReportBuilder.class) //
.req(GraphDao.class, DailygraphDao.class, ReportDao.class, DailyreportDao.class, EventGraphCreator.class,
EventMerger.class)//
.req(WeeklyreportDao.class, MonthreportDao.class));
all.add(C(ProblemReportBuilder.class) //
.req(GraphDao.class, DailygraphDao.class, ReportDao.class, DailyreportDao.class, ProblemGraphCreator.class) //
.req(WeeklyreportDao.class, MonthreportDao.class, ProblemMerger.class));
all.add(C(HeartbeatReportBuilder.class) //
.req(GraphDao.class, DailygraphDao.class, ReportDao.class, DailyreportDao.class) //
.req(HeartbeatGraphCreator.class, HeartbeatMerger.class, WeeklyreportDao.class, MonthreportDao.class));
all.add(C(DatabaseReportBuilder.class) //
.req(GraphDao.class, DailygraphDao.class, ReportDao.class, DailyreportDao.class, DatabaseMerger.class)//
.req(WeeklyreportDao.class, MonthreportDao.class));
all.add(C(MatrixReportBuilder.class) //
.req(GraphDao.class, DailygraphDao.class, ReportDao.class, DailyreportDao.class, MatrixMerger.class)//
.req(WeeklyreportDao.class, MonthreportDao.class));
all.add(C(SqlReportBuilder.class) //
.req(GraphDao.class, DailygraphDao.class, ReportDao.class, DailyreportDao.class, SqlMerger.class)//
.req(WeeklyreportDao.class, MonthreportDao.class));
all.add(C(CrossReportBuilder.class) //
.req(GraphDao.class, DailygraphDao.class, ReportDao.class, DailyreportDao.class, CrossMerger.class)//
.req(WeeklyreportDao.class, MonthreportDao.class));
all.add(C(CrossReportBuilder.class) //
.req(GraphDao.class, DailygraphDao.class, ReportDao.class, DailyreportDao.class, CrossMerger.class)//
.req(WeeklyreportDao.class, MonthreportDao.class));
all.add(C(StateReportBuilder.class) //
.req(GraphDao.class, DailygraphDao.class, ReportDao.class, DailyreportDao.class, StateMerger.class)//
.req(WeeklyreportDao.class, MonthreportDao.class));
all.add(C(DependencyReportBuilder.class) //
.req(GraphDao.class, DailygraphDao.class, ReportDao.class, DailyreportDao.class)//
.req(WeeklyreportDao.class, MonthreportDao.class)//
.req(ReportService.class, TopologyGraphBuilder.class, TopologyGraphDao.class));
all.add(C(TaskProducer.class, TaskProducer.class) //
.req(TaskDao.class, ReportDao.class));
all.add(C(HealthReportBuilder.class) //
.req(GraphDao.class, ReportDao.class, DailyreportDao.class)//
.req(WeeklyreportDao.class, MonthreportDao.class, HealthServiceCollector.class));
all.add(C(ReportFacade.class)//
.req(TransactionReportBuilder.class, EventReportBuilder.class, ProblemReportBuilder.class,//
HeartbeatReportBuilder.class, MatrixReportBuilder.class, CrossReportBuilder.class,//
DatabaseReportBuilder.class, SqlReportBuilder.class, HealthReportBuilder.class,//
StateReportBuilder.class, DependencyReportBuilder.class));
return all;
}
......
......@@ -26,6 +26,233 @@
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.page.PayloadNormalizer</role>
<implementation>com.dianping.cat.report.page.PayloadNormalizer</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.configuration.ServerConfigManager</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.page.health.HistoryGraphs</role>
<implementation>com.dianping.cat.report.page.health.HistoryGraphs</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.report.service.ReportService</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.page.state.StateGraphs</role>
<implementation>com.dianping.cat.report.page.state.StateGraphs</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.report.service.ReportService</role>
</requirement>
</requirements>
</component>
<component>
<role>org.unidal.initialization.Module</role>
<role-hint>cat-home</role-hint>
<implementation>com.dianping.cat.CatHomeModule</implementation>
</component>
<component>
<role>org.unidal.initialization.ModuleManager</role>
<implementation>org.unidal.initialization.DefaultModuleManager</implementation>
<configuration>
<topLevelModules>cat-home</topLevelModules>
</configuration>
</component>
<component>
<role>com.dianping.cat.report.view.DomainNavManager</role>
<implementation>com.dianping.cat.report.view.DomainNavManager</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.consumer.core.dal.ProjectDao</role>
</requirement>
<requirement>
<role>com.dianping.cat.configuration.ServerConfigManager</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.page.externalError.EventCollectManager</role>
<implementation>com.dianping.cat.report.page.externalError.EventCollectManager</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.home.dal.report.EventDao</role>
</requirement>
<requirement>
<role>com.dianping.cat.configuration.ServerConfigManager</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.system.config.ProductLineConfigManager</role>
<implementation>com.dianping.cat.system.config.ProductLineConfigManager</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.consumer.core.config.ConfigDao</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.page.dependency.graph.TopologyGraphConfigManager</role>
<implementation>com.dianping.cat.report.page.dependency.graph.TopologyGraphConfigManager</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.consumer.core.config.ConfigDao</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.page.dependency.graph.TopologyGraphItemBuilder</role>
<implementation>com.dianping.cat.report.page.dependency.graph.TopologyGraphItemBuilder</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.report.page.dependency.graph.TopologyGraphConfigManager</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.page.dependency.graph.TopologyGraphBuilder</role>
<implementation>com.dianping.cat.report.page.dependency.graph.TopologyGraphBuilder</implementation>
<instantiation-strategy>per-lookup</instantiation-strategy>
<requirements>
<requirement>
<role>com.dianping.cat.report.page.dependency.graph.TopologyGraphItemBuilder</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.page.dependency.graph.TopologyGraphManager</role>
<implementation>com.dianping.cat.report.page.dependency.graph.TopologyGraphManager</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.report.page.dependency.graph.TopologyGraphBuilder</role>
</requirement>
<requirement>
<role>com.dianping.cat.configuration.ServerConfigManager</role>
</requirement>
<requirement>
<role>com.dianping.cat.system.config.ProductLineConfigManager</role>
</requirement>
<requirement>
<role>com.dianping.cat.home.dal.report.TopologyGraphDao</role>
</requirement>
<requirement>
<role>com.dianping.cat.report.page.model.spi.ModelService</role>
<role-hint>dependency</role-hint>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.service.HourlyReportService</role>
<implementation>com.dianping.cat.report.service.impl.HourlyReportServiceImpl</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.consumer.core.dal.ReportDao</role>
</requirement>
<requirement>
<role>com.dianping.cat.consumer.advanced.dal.BusinessReportDao</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.service.DailyReportService</role>
<implementation>com.dianping.cat.report.service.impl.DailyReportServiceImpl</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.home.dal.report.DailyreportDao</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.service.WeeklyReportService</role>
<implementation>com.dianping.cat.report.service.impl.WeeklyReportServiceImpl</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.home.dal.report.WeeklyreportDao</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.service.MonthReportService</role>
<implementation>com.dianping.cat.report.service.impl.MonthReportServiceImpl</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.home.dal.report.MonthreportDao</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.service.WeeklyReportCache</role>
<implementation>com.dianping.cat.report.service.WeeklyReportCache</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.report.service.DailyReportService</role>
</requirement>
<requirement>
<role>com.dianping.cat.report.service.HourlyReportService</role>
</requirement>
<requirement>
<role>com.dianping.cat.configuration.ServerConfigManager</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.service.MonthReportCache</role>
<implementation>com.dianping.cat.report.service.MonthReportCache</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.report.service.DailyReportService</role>
</requirement>
<requirement>
<role>com.dianping.cat.report.service.HourlyReportService</role>
</requirement>
<requirement>
<role>com.dianping.cat.configuration.ServerConfigManager</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.service.ReportService</role>
<implementation>com.dianping.cat.report.service.impl.ReportServiceImpl</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.report.service.HourlyReportService</role>
</requirement>
<requirement>
<role>com.dianping.cat.report.service.DailyReportService</role>
</requirement>
<requirement>
<role>com.dianping.cat.report.service.WeeklyReportService</role>
</requirement>
<requirement>
<role>com.dianping.cat.report.service.MonthReportService</role>
</requirement>
<requirement>
<role>com.dianping.cat.report.service.WeeklyReportCache</role>
</requirement>
<requirement>
<role>com.dianping.cat.report.service.MonthReportCache</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.task.health.HealthServiceCollector</role>
<implementation>com.dianping.cat.report.task.health.HealthServiceCollector</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.consumer.DomainManager</role>
</requirement>
<requirement>
<role>com.dianping.cat.consumer.core.dal.ReportDao</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.task.thread.DefaultTaskConsumer</role>
<implementation>com.dianping.cat.report.task.thread.DefaultTaskConsumer</implementation>
......@@ -480,211 +707,6 @@
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.page.PayloadNormalizer</role>
<implementation>com.dianping.cat.report.page.PayloadNormalizer</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.configuration.ServerConfigManager</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.task.health.HealthServiceCollector</role>
<implementation>com.dianping.cat.report.task.health.HealthServiceCollector</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.consumer.DomainManager</role>
</requirement>
<requirement>
<role>com.dianping.cat.consumer.core.dal.ReportDao</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.page.health.HistoryGraphs</role>
<implementation>com.dianping.cat.report.page.health.HistoryGraphs</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.report.service.ReportService</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.page.state.StateGraphs</role>
<implementation>com.dianping.cat.report.page.state.StateGraphs</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.report.service.ReportService</role>
</requirement>
</requirements>
</component>
<component>
<role>org.unidal.initialization.Module</role>
<role-hint>cat-home</role-hint>
<implementation>com.dianping.cat.CatHomeModule</implementation>
</component>
<component>
<role>org.unidal.initialization.ModuleManager</role>
<implementation>org.unidal.initialization.DefaultModuleManager</implementation>
<configuration>
<topLevelModules>cat-home</topLevelModules>
</configuration>
</component>
<component>
<role>com.dianping.cat.report.view.DomainNavManager</role>
<implementation>com.dianping.cat.report.view.DomainNavManager</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.consumer.core.dal.ProjectDao</role>
</requirement>
<requirement>
<role>com.dianping.cat.configuration.ServerConfigManager</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.service.HourlyReportService</role>
<implementation>com.dianping.cat.report.service.impl.HourlyReportServiceImpl</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.consumer.core.dal.ReportDao</role>
</requirement>
<requirement>
<role>com.dianping.cat.consumer.advanced.dal.BusinessReportDao</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.service.DailyReportService</role>
<implementation>com.dianping.cat.report.service.impl.DailyReportServiceImpl</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.home.dal.report.DailyreportDao</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.service.WeeklyReportService</role>
<implementation>com.dianping.cat.report.service.impl.WeeklyReportServiceImpl</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.home.dal.report.WeeklyreportDao</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.service.MonthReportService</role>
<implementation>com.dianping.cat.report.service.impl.MonthReportServiceImpl</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.home.dal.report.MonthreportDao</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.service.WeeklyReportCache</role>
<implementation>com.dianping.cat.report.service.WeeklyReportCache</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.report.service.DailyReportService</role>
</requirement>
<requirement>
<role>com.dianping.cat.report.service.HourlyReportService</role>
</requirement>
<requirement>
<role>com.dianping.cat.configuration.ServerConfigManager</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.service.MonthReportCache</role>
<implementation>com.dianping.cat.report.service.MonthReportCache</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.report.service.DailyReportService</role>
</requirement>
<requirement>
<role>com.dianping.cat.report.service.HourlyReportService</role>
</requirement>
<requirement>
<role>com.dianping.cat.configuration.ServerConfigManager</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.service.ReportService</role>
<implementation>com.dianping.cat.report.service.impl.ReportServiceImpl</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.report.service.HourlyReportService</role>
</requirement>
<requirement>
<role>com.dianping.cat.report.service.DailyReportService</role>
</requirement>
<requirement>
<role>com.dianping.cat.report.service.WeeklyReportService</role>
</requirement>
<requirement>
<role>com.dianping.cat.report.service.MonthReportService</role>
</requirement>
<requirement>
<role>com.dianping.cat.report.service.WeeklyReportCache</role>
</requirement>
<requirement>
<role>com.dianping.cat.report.service.MonthReportCache</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.page.externalError.EventCollectManager</role>
<implementation>com.dianping.cat.report.page.externalError.EventCollectManager</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.home.dal.report.EventDao</role>
</requirement>
<requirement>
<role>com.dianping.cat.configuration.ServerConfigManager</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.system.config.ProductLineConfigManager</role>
<implementation>com.dianping.cat.system.config.ProductLineConfigManager</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.consumer.core.config.ConfigDao</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.page.dependency.graph.TopologyGraphConfigManager</role>
<implementation>com.dianping.cat.report.page.dependency.graph.TopologyGraphConfigManager</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.consumer.core.config.ConfigDao</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.page.dependency.graph.TopologyGraphItemBuilder</role>
<implementation>com.dianping.cat.report.page.dependency.graph.TopologyGraphItemBuilder</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.report.page.dependency.graph.TopologyGraphConfigManager</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.page.dependency.graph.TopologyGraphBuilder</role>
<implementation>com.dianping.cat.report.page.dependency.graph.TopologyGraphBuilder</implementation>
<instantiation-strategy>per-lookup</instantiation-strategy>
<requirements>
<requirement>
<role>com.dianping.cat.report.page.dependency.graph.TopologyGraphItemBuilder</role>
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.page.model.spi.ModelService</role>
<role-hint>transaction-local</role-hint>
......@@ -1271,28 +1293,6 @@
</requirement>
</requirements>
</component>
<component>
<role>com.dianping.cat.report.page.dependency.graph.TopologyGraphManager</role>
<implementation>com.dianping.cat.report.page.dependency.graph.TopologyGraphManager</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.report.page.dependency.graph.TopologyGraphBuilder</role>
</requirement>
<requirement>
<role>com.dianping.cat.configuration.ServerConfigManager</role>
</requirement>
<requirement>
<role>com.dianping.cat.system.config.ProductLineConfigManager</role>
</requirement>
<requirement>
<role>com.dianping.cat.home.dal.report.TopologyGraphDao</role>
</requirement>
<requirement>
<role>com.dianping.cat.report.page.model.spi.ModelService</role>
<role-hint>dependency</role-hint>
</requirement>
</requirements>
</component>
<component>
<role>org.unidal.dal.jdbc.datasource.JdbcDataSourceConfigurationManager</role>
<implementation>org.unidal.dal.jdbc.datasource.JdbcDataSourceConfigurationManager</implementation>
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册