📄 reportsearchsupport.java
字号:
package com.sms.platform.switchcenter.support;
import org.apache.log4j.Logger;
import com.sms.platform.switchcenter.parameter.BerkeleyDBParameter;
import com.sms.platform.switchcenter.parameter.SenderParameter;
import com.sms.protocol.standard12.Standard_Inner_Report;
import com.sms.protocol.standard12.Standard_Inner_Response;
public class ReportSearchSupport extends Support{
public static Logger log = Logger.getLogger(ReportSenderSupport.class);
public ReportSearchSupport(){
}
protected boolean resolve() {
SenderParameter sp = SenderParameter.getInstance();
Standard_Inner_Report sir = (Standard_Inner_Report) super.inner;
if (sir.getDesClientID() == 0) {
// 查询Response队列,找到相应的response,获得ClientID
Standard_Inner_Response sre = new Standard_Inner_Response();
sre.setMessageID(sir.getMessageID());
sre.setSrcClientID(sir.getSrcClientID());
int stat = BerkeleyDBParameter.getInstance().getRespQueue().searchPop(sre);
if (stat == 0) {
sir.setSequenceId(sre.getSequenceId());
sir.setDesClientID(sre.getDesClientID());
log.debug("search DesClientID : " + sir.getDesClientID()
+ " SequenceId : " + sir.getSequenceId()
+ " messageID : " + sir.getMessageID());
} else {
log.debug(" no search Response, stat : " + stat + " " + sir);
// 非第一次没有找到,插入到重发队列,一小时后被执行下一次
return false;
}
}
return true;
}
protected void fail(){
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -