private BrokerConnection BuildAndStartBrokerConnection(BrokerInfo brokerInfo) { IPEndPoint brokerEndpoint; if (_producer != null) { brokerEndpoint = brokerInfo.ProducerAddress.ToEndPoint(); } else if (_consumer != null) { brokerEndpoint = brokerInfo.ConsumerAddress.ToEndPoint(); } else { throw new Exception("ClientService must set producer or consumer."); } var brokerAdminEndpoint = brokerInfo.AdminAddress.ToEndPoint(); var remotingClient = new SocketRemotingClient(_setting.ClientName, brokerEndpoint, _setting.SocketSetting); var adminRemotingClient = new SocketRemotingClient(_setting.ClientName, brokerAdminEndpoint, _setting.SocketSetting); var brokerConnection = new BrokerConnection(brokerInfo, remotingClient, adminRemotingClient); if (_producer != null && _producer.ResponseHandler != null) { remotingClient.RegisterResponseHandler((int)BrokerRequestCode.SendMessage, _producer.ResponseHandler); remotingClient.RegisterResponseHandler((int)BrokerRequestCode.BatchSendMessage, _producer.ResponseHandler); } brokerConnection.Start(); return(brokerConnection); }
private BrokerConnection BuildAndStartBrokerConnection(BrokerInfo brokerInfo) { IPEndPoint brokerEndpoint; if (_producer != null) { brokerEndpoint = brokerInfo.ProducerAddress.ToEndPoint(); } else if (_consumer != null) { brokerEndpoint = brokerInfo.ConsumerAddress.ToEndPoint(); } else { throw new Exception("ClientService must set producer or consumer."); } var brokerAdminEndpoint = brokerInfo.AdminAddress.ToEndPoint(); var remotingClient = new SocketRemotingClient(brokerEndpoint, _setting.SocketSetting); var adminRemotingClient = new SocketRemotingClient(brokerAdminEndpoint, _setting.SocketSetting); var brokerConnection = new BrokerConnection(brokerInfo, remotingClient, adminRemotingClient); if (_producer != null && _producer.ResponseHandler != null) { remotingClient.RegisterResponseHandler((int)BrokerRequestCode.SendMessage, _producer.ResponseHandler); } brokerConnection.Start(); return brokerConnection; }