public void subscribe(SDKClient.IReceiver messageListener) { TLQMSG_INFO tLQMSG_INFO = default(TLQMSG_INFO); TLQMSG_OPT tLQMSG_OPT = default(TLQMSG_OPT); TLQInterface.Tlq_InitMsgInfo(ref tLQMSG_INFO); TLQInterface.Tlq_InitMsgOpt(ref tLQMSG_OPT); tLQMSG_INFO.Persistence = 1; tLQMSG_INFO.Priority = 5; tLQMSG_INFO.Expiry = -1; tLQMSG_INFO.MsgSize = 10; tLQMSG_OPT.OperateType = 5; tLQMSG_OPT.PubSubScope = 3; tLQMSG_OPT.Topic = this.topicName; tLQMSG_OPT.QueName = this.rcvQueName; bool flag = this.cancelsubFlag == 0; if (flag) { int num = TLQInterface.Tlq_PutMsg(ref this.gid, ref this.qcuId, ref tLQMSG_INFO, ref tLQMSG_OPT, (IntPtr)0, null, ref this.errstru); bool flag2 = num < 0; if (flag2) { throw new Exception("Sub topic faild.Error:" + this.errstru.errstr); } this.CorrMsgId = tLQMSG_INFO.MsgId; this.receiveData(messageListener); } else { this.receiveData(messageListener); } }
public bool pubMessage(string message, int serviceType) { int num = 0; TLQMSG_INFO tLQMSG_INFO = default(TLQMSG_INFO); TLQMSG_OPT tLQMSG_OPT = default(TLQMSG_OPT); TLQError tLQError = default(TLQError); byte[] bytes = encoding.GetBytes(message); bool flag = this.cancelpubFlag == 0; if (flag) { TLQInterface.Tlq_InitMsgInfo(ref tLQMSG_INFO); TLQInterface.Tlq_InitMsgOpt(ref tLQMSG_OPT); tLQMSG_INFO.Persistence = 1; tLQMSG_INFO.Priority = 5; tLQMSG_INFO.Expiry = -1; tLQMSG_OPT.OperateType = 3; tLQMSG_OPT.PubSubScope = 3; tLQMSG_OPT.Topic = this.topicName; tLQMSG_INFO.MsgSize = bytes.Length; while (true) { int num2 = TLQInterface.Tlq_PutMsg(ref this.gid, ref this.qcuId, ref tLQMSG_INFO, ref tLQMSG_OPT, (IntPtr)0, bytes, ref tLQError); bool flag2 = num2 < 0; if (!flag2) { return(true); } num++; bool flag3 = num > 3; if (flag3) { break; } num2 = this.GetProcByTLQError(ref tLQError); bool flag4 = num2 == 2; if (!flag4) { bool flag5 = num2 == 1; if (!flag5) { goto IL_109; } num2 = this.ReConnectToTLQ(); } } throw new Exception("Send message faild.Error:" + tLQError.errstr); IL_109: throw new Exception("Send message faild.Error:" + tLQError.errstr); } throw new Exception("Pub flag is cancel"); }
public bool sendMessage(string message) { int num = 0; TLQMSG_INFO tLQMSG_INFO = default(TLQMSG_INFO); TLQMSG_OPT tLQMSG_OPT = default(TLQMSG_OPT); TLQError tLQError = default(TLQError); TLQInterface.Tlq_InitMsgInfo(ref tLQMSG_INFO); TLQInterface.Tlq_InitMsgOpt(ref tLQMSG_OPT); tLQMSG_INFO.MsgType = 0; tLQMSG_INFO.Persistence = 1; tLQMSG_INFO.Priority = 4; tLQMSG_INFO.Expiry = -1; tLQMSG_OPT.QueName = this.queueName; byte[] bytes = encoding.GetBytes(message); string @string = encoding.GetString(bytes); tLQMSG_INFO.MsgSize = encoding.GetByteCount(@string); while (true) { int num2 = TLQInterface.Tlq_PutMsg(ref this.gid, ref this.qcuId, ref tLQMSG_INFO, ref tLQMSG_OPT, (IntPtr)0, bytes, ref tLQError); bool flag = num2 < 0; if (!flag) { return(true); } num++; bool flag2 = num > 3; if (flag2) { break; } num2 = this.GetProcByTLQError(ref tLQError); bool flag3 = num2 == 2; if (!flag3) { bool flag4 = num2 == 1; if (!flag4) { goto IL_104; } num2 = this.ReConnectToTLQ(); } } throw new Exception("Send message faild.Error:" + tLQError.errstr); IL_104: throw new Exception("Send message faild.Error:" + tLQError.errstr); }
public void unSubscribe() { TLQMSG_INFO tLQMSG_INFO = default(TLQMSG_INFO); TLQMSG_OPT tLQMSG_OPT = default(TLQMSG_OPT); TLQError tLQError = default(TLQError); tLQMSG_INFO.CorrMsgId = this.CorrMsgId; tLQMSG_OPT.OperateType = 6; this.ret = TLQInterface.Tlq_PutMsg(ref this.gid, ref this.qcuId, ref tLQMSG_INFO, ref tLQMSG_OPT, (IntPtr)0, null, ref tLQError); bool flag = this.ret < 0; if (flag) { throw new Exception("Unsub topic faild.Error:" + tLQError.errstr); } }