|
@@ -61,7 +61,6 @@ public class EartagServerHandler2 extends ChannelInboundHandlerAdapter {
|
|
public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception {
|
|
public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception {
|
|
ByteBuf data = (ByteBuf) msg;
|
|
ByteBuf data = (ByteBuf) msg;
|
|
String clientAskText = data.toString(CharsetUtil.UTF_8);
|
|
String clientAskText = data.toString(CharsetUtil.UTF_8);
|
|
-// System.out.println((++num)+"次, 客户端消息clientAskText>>"+clientAskText);
|
|
|
|
//保存实例内的客户端请求
|
|
//保存实例内的客户端请求
|
|
appendClientAsk(clientAskText);
|
|
appendClientAsk(clientAskText);
|
|
}
|
|
}
|
|
@@ -69,27 +68,19 @@ public class EartagServerHandler2 extends ChannelInboundHandlerAdapter {
|
|
@Override
|
|
@Override
|
|
public void channelReadComplete(ChannelHandlerContext ctx) throws Exception {
|
|
public void channelReadComplete(ChannelHandlerContext ctx) throws Exception {
|
|
// ctx.writeAndFlush("111");
|
|
// ctx.writeAndFlush("111");
|
|
-// System.out.println("EchoServerHandle channelReadComplete");
|
|
|
|
if(askTextSb.toString().indexOf("end") != -1){
|
|
if(askTextSb.toString().indexOf("end") != -1){
|
|
-// System.out.println("askTextSb.内容()>>"+askTextSb.toString());
|
|
|
|
-// System.out.println("askTextSb.内容长度>>"+askTextSb.length());
|
|
|
|
-// System.out.println("输入完成.");
|
|
|
|
- // 处理客户端消息
|
|
|
|
|
|
+ // 业务处理入口 //
|
|
handleClientEartagMessage(askTextSb.toString(),ctx);
|
|
handleClientEartagMessage(askTextSb.toString(),ctx);
|
|
- //清空重置;
|
|
|
|
askTextSb.delete(0,askTextSb.length());
|
|
askTextSb.delete(0,askTextSb.length());
|
|
num = 0;
|
|
num = 0;
|
|
-// System.out.println("清空sb实例. 长度>>"+askTextSb.length());
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) throws Exception {
|
|
public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) throws Exception {
|
|
-// System.out.println("cause.getMessage()>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"+cause.getMessage());
|
|
|
|
if(cause.getMessage().indexOf("Connection reset") != -1){
|
|
if(cause.getMessage().indexOf("Connection reset") != -1){
|
|
log.info("相关采集器设备正在重启:"+cause.toString());
|
|
log.info("相关采集器设备正在重启:"+cause.toString());
|
|
}
|
|
}
|
|
-// cause.printStackTrace();
|
|
|
|
ctx.close();
|
|
ctx.close();
|
|
}
|
|
}
|
|
|
|
|
|
@@ -104,39 +95,31 @@ public class EartagServerHandler2 extends ChannelInboundHandlerAdapter {
|
|
* @Time : 17:36
|
|
* @Time : 17:36
|
|
*/
|
|
*/
|
|
private void handleClientEartagMessage(String clientAskText, ChannelHandlerContext ctx) throws ParseException {
|
|
private void handleClientEartagMessage(String clientAskText, ChannelHandlerContext ctx) throws ParseException {
|
|
-// System.out.println("## clientAskText>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> "+clientAskText);
|
|
|
|
clientAskText = clientAskText.replaceAll("\r","").replaceAll("\n","");
|
|
clientAskText = clientAskText.replaceAll("\r","").replaceAll("\n","");
|
|
System.out.println("### 服务端接收数据 >>" + clientAskText);
|
|
System.out.println("### 服务端接收数据 >>" + clientAskText);
|
|
- /////////////////////////////////////////////////////////////
|
|
|
|
//TEST-saveRawData()
|
|
//TEST-saveRawData()
|
|
if(dataTestInput == 1){
|
|
if(dataTestInput == 1){
|
|
deviceService.saveRawData(clientAskText);
|
|
deviceService.saveRawData(clientAskText);
|
|
}
|
|
}
|
|
- /////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
//{}
|
|
//{}
|
|
int countPlus = regexUtil.countPlus(clientAskText);
|
|
int countPlus = regexUtil.countPlus(clientAskText);
|
|
if (countPlus < 4) {
|
|
if (countPlus < 4) {
|
|
System.out.println("当前数据为不完整数据,故丢弃.>>" + clientAskText);
|
|
System.out.println("当前数据为不完整数据,故丢弃.>>" + clientAskText);
|
|
} else {
|
|
} else {
|
|
- //--处理客户端请求数据
|
|
|
|
//{拆分粘包数据}
|
|
//{拆分粘包数据}
|
|
JSONArray askJa = getPerData(clientAskText);
|
|
JSONArray askJa = getPerData(clientAskText);
|
|
-// System.out.println("askJa.size()="+askJa.size());
|
|
|
|
for (int a = 0; a < askJa.size(); a++) {
|
|
for (int a = 0; a < askJa.size(); a++) {
|
|
String askText = askJa.getString(a);
|
|
String askText = askJa.getString(a);
|
|
-// System.out.println((a+1)+",askText"+askText);
|
|
|
|
- /////////////////////////////////////////////////////////////
|
|
|
|
//TEST-saveRawData()
|
|
//TEST-saveRawData()
|
|
// deviceService.saveRawData(askText);
|
|
// deviceService.saveRawData(askText);
|
|
- /////////////////////////////////////////////////////////////
|
|
|
|
- if (dataInputFlow == 1) {
|
|
|
|
- //{处理请求内容}
|
|
|
|
- handleAskText(askText, ctx);
|
|
|
|
- } else {
|
|
|
|
|
|
+// if (dataInputFlow == 1) {
|
|
|
|
+// //{处理请求内容}
|
|
|
|
+// handleAskText(askText, ctx);
|
|
|
|
+// } else {
|
|
//{处理请求内容2}
|
|
//{处理请求内容2}
|
|
handleAskText2(askText, ctx);
|
|
handleAskText2(askText, ctx);
|
|
- }
|
|
|
|
|
|
+// }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|