static AutoInit()
{
MetaData.SetServiceId(typeof(ILoginNotifyImpl), Login);
MetaData.SetMethodSerializer(typeof(ILoginNotifyImpl), LoginNotifySerializer.Instance);
MetaData.SetServiceMethodDispatcher(typeof(ILoginNotifyImpl), LoginNotifyDispatcher.Instance);
MetaData.SetServiceId(typeof(IDbClientNotifyImpl), DbClient);
MetaData.SetMethodSerializer(typeof(IDbClientNotifyImpl), DbClientNotifySerializer.Instance);
MetaData.SetServiceMethodDispatcher(typeof(IDbClientNotifyImpl), DbClientNotifyDispatcher.Instance);
MetaData.SetServiceId(typeof(IWatcherServiceNotifyImpl), WatcherService);
MetaData.SetMethodSerializer(typeof(IWatcherServiceNotifyImpl), WatcherServiceNotifySerializer.Instance);
MetaData.SetServiceMethodDispatcher(typeof(IWatcherServiceNotifyImpl), WatcherServiceNotifyDispatcher.Instance);
MetaData.SetServiceId(typeof(ICli2LogicImpl), Cli2Logic);
MetaData.SetMethodSerializer(typeof(ICli2LogicImpl), Cli2LogicSerializer.Instance);
MetaData.SetServiceMethodDispatcher(typeof(ICli2LogicImpl), Cli2LogicDispatcher.Instance);
MetaData.SetServiceId(typeof(ICli2SceneImpl), Cli2Scene);
MetaData.SetMethodSerializer(typeof(ICli2SceneImpl), Cli2SceneSerializer.Instance);
MetaData.SetServiceMethodDispatcher(typeof(ICli2SceneImpl), Cli2SceneDispatcher.Instance);
MetaData.SetServiceId(typeof(ICli2LoginImpl), Cli2Login);
MetaData.SetMethodSerializer(typeof(ICli2LoginImpl), Cli2LoginSerializer.Instance);
MetaData.SetServiceMethodDispatcher(typeof(ICli2LoginImpl), Cli2LoginDispatcher.Instance);
MetaData.SetServiceId(typeof(ILogic2SchedulerImpl), Logic2Scheduler);
MetaData.SetMethodSerializer(typeof(ILogic2SchedulerImpl), Logic2SchedulerSerializer.Instance);
MetaData.SetServiceMethodDispatcher(typeof(ILogic2SchedulerImpl), Logic2SchedulerDispatcher.Instance);
MetaData.SetServiceRoutingRule(Login, new RoutingRule()
{
AmqpRule = new RoutingRule.AmqpRoutingRule()
{
ImplBindingKey = (districts, uuid) => "padding.Login.notify",
DelegateRoutingKey = (districts, fid) => "padding.Login.notify",
DelegateExchangeName = () => "Login.notify",
ImplExchangeName = () => "Login.notify",
},
GateRule = new RoutingRule.GateRoutingRule() {ServiceId = s => 1,},
ZkRule = new RoutingRule.ZkRoutingRule()
{
ServicePath = (districts) => string.Format("/{0}/{1}", districts, Login),
},
});
MetaData.SetServiceRoutingRule(DbClient, new RoutingRule()
{
AmqpRule = new RoutingRule.AmqpRoutingRule()
{
ImplBindingKey = (districts, uuid) => "padding.DbClient.notify",
DelegateRoutingKey = (districts, fid) => "padding.DbClient.notify",
DelegateExchangeName = () => "DbClient.notify",
ImplExchangeName = () => "DbClient.notify",
},
GateRule = new RoutingRule.GateRoutingRule() {ServiceId = s => 2,},
ZkRule = new RoutingRule.ZkRoutingRule()
{
ServicePath = (districts) => string.Format("/{0}/{1}", districts, DbClient),
},
});
MetaData.SetServiceRoutingRule(WatcherService, new RoutingRule()
{
AmqpRule = new RoutingRule.AmqpRoutingRule()
{
ImplBindingKey = (districts, uuid) => "padding.WatcherService.notify",
DelegateRoutingKey = (districts, fid) => "padding.WatcherService.notify",
DelegateExchangeName = () => "WatcherService.notify",
ImplExchangeName = () => "WatcherService.notify",
},
GateRule = new RoutingRule.GateRoutingRule() {ServiceId = s => 3,},
ZkRule = new RoutingRule.ZkRoutingRule()
{
ServicePath = (districts) => string.Format("/{0}/{1}", districts, WatcherService),
},
});
MetaData.SetServiceRoutingRule(Cli2Logic, new RoutingRule()
{
AmqpRule = new RoutingRule.AmqpRoutingRule()
{
ImplBindingKey = (districts, uuid) => string.Format("{0}.Cli2Logic.invoke", districts),
ReturnRoutingKey = (districts, uuid) => string.Format("{0}.Cli2Logic.return.{1}", districts, uuid),
ReturnExchangeName = () => "amq.topic",
ImplExchangeName = () => "Cli2Logic.invoke",
ImplQueueName = districts => string.Format("{0}.Cli2Logic.invoke", districts),
},
GateRule = new RoutingRule.GateRoutingRule() {ServiceId = s => 4,},
ZkRule = new RoutingRule.ZkRoutingRule()
{
ServicePath = (districts) => string.Format("/{0}/{1}", districts, Cli2Logic),
},
});
MetaData.SetServiceRoutingRule(Scene2Cli, new RoutingRule()
{
AmqpRule = new RoutingRule.AmqpRoutingRule()
{
DelegateRoutingKey = (districts, uuid) => string.Format("{0}.Scene2Cli.sync.{1}", districts, uuid),
DelegateExchangeName = () => "amq.topic",
},
GateRule = new RoutingRule.GateRoutingRule() {ServiceId = s => 5,},
ZkRule = new RoutingRule.ZkRoutingRule()
{
ServicePath = (districts) => string.Format("/{0}/{1}", districts, Scene2Cli),
},
});
MetaData.SetServiceRoutingRule(Cli2Scene, new RoutingRule()
{
AmqpRule = new RoutingRule.AmqpRoutingRule()
{
ImplBindingKey = (districts, uuid) => string.Format("{0}.Cli2Scene.invoke", districts),
ReturnRoutingKey = (districts, uuid) => string.Format("{0}.Cli2Scene.return.{1}", districts, uuid),
ReturnExchangeName = () => "amq.topic",
ImplExchangeName = () => "Cli2Scene.invoke",
ImplQueueName = districts => string.Format("{0}.Cli2Scene.invoke", districts),
},
GateRule = new RoutingRule.GateRoutingRule() {ServiceId = s => 6,},
ZkRule = new RoutingRule.ZkRoutingRule()
{
ServicePath = (districts) => string.Format("/{0}/{1}", districts, Cli2Scene),
},
});
MetaData.SetServiceRoutingRule(Cli2Login, new RoutingRule()
{
AmqpRule = new RoutingRule.AmqpRoutingRule()
{
ImplBindingKey = (districts, uuid) => string.Format("{0}.Cli2Login.invoke", districts),
ReturnRoutingKey = (districts, uuid) => string.Format("{0}.Cli2Login.return.{1}", districts, uuid),
ReturnExchangeName = () => "amq.topic",
ImplExchangeName = () => "Cli2Login.invoke",
ImplQueueName = districts => string.Format("{0}.Cli2Login.invoke", districts),
},
GateRule = new RoutingRule.GateRoutingRule() {ServiceId = s => 7,},
ZkRule = new RoutingRule.ZkRoutingRule()
{
ServicePath = (districts) => string.Format("/{0}/{1}", districts, Cli2Login),
},
});
MetaData.SetServiceRoutingRule(Logic2Cli, new RoutingRule()
{
AmqpRule = new RoutingRule.AmqpRoutingRule()
{
DelegateRoutingKey = (districts, uuid) => string.Format("{0}.Logic2Cli.sync.{1}", districts, uuid),
DelegateExchangeName = () => "amq.topic",
},
GateRule = new RoutingRule.GateRoutingRule() {ServiceId = s => 8,},
ZkRule = new RoutingRule.ZkRoutingRule()
{
ServicePath = (districts) => string.Format("/{0}/{1}", districts, Logic2Cli),
},
});
MetaData.SetServiceRoutingRule(Logic2Scheduler, new RoutingRule()
{
AmqpRule = new RoutingRule.AmqpRoutingRule()
{
ImplBindingKey = (districts, uuid) => string.Format("{0}.Logic2Scheduler.invoke", districts),
DelegateRoutingKey = (districts, uuid) => string.Format("{0}.Logic2Scheduler.invoke", districts),
ReturnBindingKey = (districts, uuid) => string.Format("{0}.Logic2Scheduler.return.{1}", districts, uuid),
ReturnRoutingKey = (districts, uuid) => string.Format("{0}.Logic2Scheduler.return.{1}", districts, uuid),
ReturnExchangeName = () => "Logic2Scheduler.return",
DelegateExchangeName = () => "Logic2Scheduler.invoke",
ImplExchangeName = () => "Logic2Scheduler.invoke",
ImplQueueName = districts => string.Format("{0}.Logic2Scheduler.invoke", districts),
},
GateRule = new RoutingRule.GateRoutingRule() {ServiceId = s => 9,},
ZkRule = new RoutingRule.ZkRoutingRule()
{
ServicePath = (districts) => string.Format("/{0}/{1}", districts, Logic2Scheduler),
},
});
} public static void Init() {}
}