📄 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 + -