private void SendRequest(ClientType clientType, string subject, string group, RequestType requestType = RequestType.Heartbeat) { var datagram = new Datagram(); var remotingHeader = new RemotingHeader { Version = RemotingHeader.Version8, Code = 35, Flag = 0, Opaque = 0 }; datagram.Header = remotingHeader; var request = new MetaInfoRequest { Subject = subject, ConsumerGroup = group, AppCode = _appCode, ClientType = (int)clientType, RequestType = (int)requestType, ClientId = ClientId.CurrentClientId }; datagram.PayloadHolder = new MetaInfoRequestPayloadHolder(request); _client.Send(datagram); }
public Datagram TransformRequest(Request request) { var header = new RemotingHeader { MagicCode = RemotingHeader.QmqMagicCode, Version = RemotingHeader.Version8, Code = CommandCode.PullMessage, Flag = 0, Opaque = (int)request.Id }; var payloadHolder = new MesssagePullPayloadHolder((PullMessageRequest)request.Args); return(new Datagram { Header = header, PayloadHolder = payloadHolder }); }
protected override void Ping(TransportClient client) { var heartbeat = new Request(null); var header = new RemotingHeader() { MagicCode = RemotingHeader.QmqMagicCode, Version = RemotingHeader.Version8, Code = CommandCode.Heartbeat, Flag = 0, Opaque = (int)heartbeat.Id, }; client.Send(new Datagram() { Header = header, PayloadHolder = null, }); }
public Datagram TransformRequest(Request request) { var header = new RemotingHeader { MagicCode = RemotingHeader.QmqMagicCode, Version = RemotingHeader.Version8, Code = CommandCode.SendMessage, Flag = 0, Opaque = (int)request.Id // TODO(keli.wang): don't use request id here? }; var payloadHolder = new MessageSendPayloadHolder((List <Message>)request.Args); return(new Datagram { Header = header, PayloadHolder = payloadHolder }); }