?? crbtagentappdefine.java
字號:
package com.aceway.vas.xjcrgw.crbtagent;
import javax.xml.namespace.QName;
import org.codehaus.xfire.service.Service;
import org.codehaus.xfire.service.binding.ObjectServiceFactory;
import org.codehaus.xfire.service.invoker.BeanInvoker;
import com.aceway.common.app.AbstractAppDefine;
import com.aceway.vas.commons.tcp.IClientHandler;
import com.aceway.vas.commons.tcp.TcpClient;
import com.aceway.vas.commons.tcp.Util;
import com.aceway.vas.commons.util.logger.AcewayLogger;
import com.aceway.vas.xjcrgw.ws.agent.agentcrbtservice.AgentCrbtService;
import com.aceway.vas.xjcrgw.ws.crbtservice.HuaweiCrbtServiceImpl;
import com.aceway.vas.xjcrgw.ws.crbtservice.ZTECrbtServiceImpl;
import com.aceway.vas.xjcrgw.ws.handler.AgentCrbtClientHandler;
import com.aceway.vas.xjcrgw.ws.handler.AgentCrbtNetConnectHandler;
import com.aceway.vas.xjcrgw.ws.handler.AgentCrbtWSHandler;
import com.aceway.vas.xjcrgw.ws.handler.IMsgReceiveable;
import com.aceway.vas.xjcrgw.ws.server.WSServer;
public class CrbtAgentAppDefine extends AbstractAppDefine {
private AcewayLogger acewayLogger = (AcewayLogger) AcewayLogger.getLogger("CrbtAgentLogger");
private WSServer wsServer = new WSServer();
public String getAppName() {
return "CrbtAgent";
}
public String getAppType() {
return "CrbtAgent";
}
public int getExitPort() {
return 8881;
}
/**
* 啟動消息處理器,添加網絡連接和業務操作消息處理器,連接響應服務器彩鈴平臺
*
*/
private void init() {
// WEB SERVICES請求處理對象,業務操作請求應答消息處理對象
IMsgReceiveable crbtHandler = AgentCrbtWSHandler.getInstance();
// 與華為彩鈴平臺通訊相關的網絡連接對象
IMsgReceiveable crbtnetConnHandler = AgentCrbtNetConnectHandler.getInstance();
// CBGP消息包轉發器
IClientHandler clientHandler = AgentCrbtClientHandler.getInstance();
clientHandler.addMsgReceiver(crbtHandler);
clientHandler.addMsgReceiver(crbtnetConnHandler);
// TCP客戶端實例
TcpClient tcpClient = Util.getClient();
int maxPacketSize = 1024;
tcpClient.setDataHandler(clientHandler, maxPacketSize);
boolean isConnSuccess = tcpClient.connect("", 0);
if (isConnSuccess) {
acewayLogger.info("成功連接華為彩鈴平臺");
} else {
acewayLogger.error("連接華為彩鈴平臺失敗");
}
}
public void start() {
Service[] services = new Service[2];
ObjectServiceFactory serviceFactory = new ObjectServiceFactory();
services[0] = serviceFactory.create(AgentCrbtService.class);
services[0].setInvoker(new BeanInvoker(new HuaweiCrbtServiceImpl()));
services[0].setName(new QName(
"http://AgentCrbtService.agent.ws.xjcrgw.vas.aceway.com/",
"HuaweiCrbtService"));
services[1] = serviceFactory.create(AgentCrbtService.class);
services[1].setInvoker(new BeanInvoker(new ZTECrbtServiceImpl()));
services[1].setName(new QName(
"http://AgentCrbtService.agent.ws.xjcrgw.vas.aceway.com/",
"ZTECrbtService"));
try {
acewayLogger.info("華為CRBT_ATENT模塊啟動,");
wsServer.start(services, 9991);
init();
} catch (Exception e) {
acewayLogger.error("華為CRBT_ATENT模塊啟動失敗", e);
}
}
public void stop() {
try {
wsServer.stop();
} catch (Exception e) {
e.printStackTrace();
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -