public IAOPResult RegisterDispatcher(IEventDispatcher dispatcher) //注册消息分发器 { if (!this.dispatchers.ContainsKey(dispatcher)) { lock (this.dispatchers) { if (!this.dispatchers.ContainsKey(dispatcher)) { var storage = this.GetStorage(this.MainStorageName); storage.Subscribe(this.NotifyQueueName, r => dispatcher.OnMessageReceived(this, r)); dispatchers.Add(dispatcher, storage); } } } return(AOPResult.Success()); }
public IAOPResult RegisterDispatcher(IEventDispatcher dispatcher) { if (!this.dispatchers.ContainsKey(dispatcher)) { lock (this.dispatchers) { if (!this.dispatchers.ContainsKey(dispatcher)) { var redis = new RedisSubscriberConnection(this.Redis.Host, this.Redis.Port); redis.Open(); redis.Subscribe(this.NotifyQueueName, (k, r) => dispatcher.OnMessageReceived(this, r)); dispatchers.Add(dispatcher, redis); } } } return(AOPResult.Success()); }