/// <summary> /// 向指定的多个客户端id发送消息 /// </summary> /// <param name="senderClientId">发送者的客户端id</param> /// <param name="receiveClientId">接收者的客户端id</param> /// <param name="message">消息</param> /// <param name="receipt">是否回执</param> //public void SendMessage(string senderClientId, IEnumerable<string> receiveClientId, object message, bool receipt = false) //{ // receiveClientId = receiveClientId.Distinct().ToArray(); // Dictionary<string, ImSendEventArgs> redata = new Dictionary<string, ImSendEventArgs>(); // foreach (var uid in receiveClientId) // { // string server = SelectServer(uid); // if (redata.ContainsKey(server) == false) redata.Add(server, new ImSendEventArgs(server, senderClientId, message, receipt)); // redata[server].ReceiveClientId.Add(uid); // } // var messageJson = JsonConvert.SerializeObject(message); // foreach (var sendArgs in redata.Values) // { // OnSend?.Invoke(this, sendArgs); // _redis.Publish($"{_redisPrefix}Server{sendArgs.Server}", // JsonConvert.SerializeObject((senderClientId, sendArgs.ReceiveClientId, messageJson, sendArgs.Receipt))); // } //} /// <summary> /// 向指定的多个客户端id发送消息 /// </summary> /// <param name="senderClientId">发送者的客户端id</param> /// <param name="receiveClientId">接收者的客户端id</param> /// <param name="message">消息</param> /// <param name="receipt">是否回执</param> public void SendMessage(string senderClientId, IEnumerable <string> receiveClientId, string queenName, object message, bool receipt = false) { receiveClientId = receiveClientId.Distinct().ToArray(); Dictionary <string, ImSendEventArgs> redata = new Dictionary <string, ImSendEventArgs>(); foreach (var uid in receiveClientId) { string server = SelectServer(uid); if (redata.ContainsKey(server) == false) { redata.Add(server, new ImSendEventArgs(server, senderClientId, message, receipt)); } redata[server].ReceiveClientId.Add(uid); } var messageJson = JsonConvert.SerializeObject(message); foreach (var sendArgs in redata.Values) { try { OnSend?.Invoke(this, sendArgs); //交换机名称 string exchangeName = $"{_redisPrefix}Server{sendArgs.Server}"; var msg = JsonConvert.SerializeObject((senderClientId, sendArgs.ReceiveClientId, messageJson, sendArgs.Receipt)); IRabbitMQHelper rabbmqHelper = ServiceLocator.Instance.GetService <IRabbitMQHelper>(); var connection = rabbmqHelper.CreateMQConnection(); rabbmqHelper.SendMsg(connection, exchangeName, ExchangeType.Direct, queenName, msg, true); } catch { continue; } } }
public LipController(IRabbitMQHelper bus, LipHub hub) { _bus = bus; _hub = hub; //TODO: colocar na injeção de dependência _file = RestService.For <IFileApi>("http://file/"); }
/// <summary> /// 构造函数 /// </summary> /// <param name="iRabbitMQHelper"></param> /// <param name="IProductRepository"></param> /// <param name="logger"></param> /// <param name="ISetting"></param> public InventoryController(IRabbitMQHelper iRabbitMQHelper, IProductRepository IProductRepository, ILog4netHelper logger, ISetting ISetting) { _iRabbitMQHelper = iRabbitMQHelper; _IProductRepository = IProductRepository; _logger = logger; _ISetting = ISetting; }
/// <summary> /// 构造函数 /// </summary> /// <param name="IRabbitMQHelper"></param> /// <param name="ilog4netHelper"></param> /// <param name="ISetting"></param> /// <param name="iUserRepository"></param> public PriceController(IRabbitMQHelper IRabbitMQHelper, ILog4netHelper ilog4netHelper, ISetting ISetting, IUserRepository iUserRepository) { _ilog4netHelper = ilog4netHelper; _ISetting = ISetting; _iUserRepository = iUserRepository; _IRabbitMQHelper = IRabbitMQHelper; }
/// <summary> /// 构造函数 /// </summary> /// <param name="IRabbitMQHelper"></param> /// <param name="iEcmOrder"></param> /// <param name="logger"></param> /// <param name="IUserRepository"></param> public custom311Controller(IRabbitMQHelper IRabbitMQHelper, IEcmOrderRepository iEcmOrder, ILog4netHelper logger, IUserRepository IUserRepository) { _IRabbitMQHelper = IRabbitMQHelper; _iEcmOrder = iEcmOrder; _logger = logger; _IUserRepository = IUserRepository; }
/// <summary> /// 构造函数 /// </summary> /// <param name="IRabbitMQHelper"></param> /// <param name="ILog4netHelper"></param> /// <param name="iEcmOrder"></param> /// <param name="IAlipayRepository"></param> /// <param name="IUserRepository"></param> public custompayController(IRabbitMQHelper IRabbitMQHelper, ILog4netHelper ILog4netHelper, IEcmOrderRepository iEcmOrder, IAlipayRepository IAlipayRepository, IUserRepository IUserRepository) { _IRabbitMQHelper = IRabbitMQHelper; _ILog4netHelper = ILog4netHelper; _iEcmOrder = iEcmOrder; _IAlipayRepository = IAlipayRepository; _IUserRepository = IUserRepository; }
/// <summary> /// 构造函数 /// </summary> /// <param name="IRabbitMQHelper"></param> /// <param name="iEcmOrder"></param> /// <param name="logger"></param> /// <param name="IUserRepository"></param> /// <param name="IPayOrderRepository"></param> public OrdersController(IRabbitMQHelper IRabbitMQHelper, IEcmOrderRepository iEcmOrder, ILog4netHelper logger, IUserRepository IUserRepository, IPayOrderRepository IPayOrderRepository, ISetting ISetting) { _IRabbitMQHelper = IRabbitMQHelper; _iEcmOrder = iEcmOrder; _logger = logger; _IUserRepository = IUserRepository; _IPayOrderRepository = IPayOrderRepository; _ISetting = ISetting; }
/// <summary> /// 构造函数 /// </summary> /// <param name="IRabbitMQHelper"></param> /// <param name="ILog4netHelper"></param> /// <param name="ICustomsRepository"></param> /// <param name="IpayExInfoRepository"></param> public PayController( IRabbitMQHelper IRabbitMQHelper, ILog4netHelper ILog4netHelper, ICustomsRepository ICustomsRepository, IpayExInfoRepository IpayExInfoRepository) { _IRabbitMQHelper = IRabbitMQHelper; _ILog4netHelper = ILog4netHelper; _ICustomsRepository = ICustomsRepository; _IpayExInfoRepository = IpayExInfoRepository; }
public SMARAPDAppMetricsHandleMiddleware(AppFunc next, string client, string application, string environment, int interval = 30) { _next = next; _container = UnityConfig.GetMainContainer(); _rabbitMQHelper = _container.Resolve <IRabbitMQHelper>(); _client = client; _application = application; _environment = environment; _interval = interval; ApplicationMetrics(); }
public ConsumerService(IRabbitMQHelper mq) { this.mq = mq; }
public PublishService(IRabbitMQHelper mq) { this.mq = mq; }
public VotesCommandHandler(IVotesRepository votesRepository, IRabbitMQHelper rabbitMQHelper) { _votesRepository = votesRepository; _rabbitMQHelper = rabbitMQHelper; }
/// <summary> /// /// </summary> /// <param name="iRabbitMQHelper"></param> /// <param name="iUserRepository"></param> /// <param name="iLog4netHelper"></param> public UserManagerController(IRabbitMQHelper iRabbitMQHelper, IUserRepository iUserRepository, ILog4netHelper iLog4netHelper) { _iRabbitMQHelper = iRabbitMQHelper; _iUserRepository = iUserRepository; _iLog4netHelper = iLog4netHelper; }
/// <summary> /// /// </summary> /// <param name="logger"></param> /// <param name="iEcmOrder"></param> /// <param name="IRabbitMQHelper"></param> public WMSOrdersController(ILog4netHelper logger, IEcmOrderRepository iEcmOrder, IRabbitMQHelper IRabbitMQHelper) { _logger = logger; _iEcmOrder = iEcmOrder; _IRabbitMQHelper = IRabbitMQHelper; }