From 60bd6a383b3f7c0d4922517974da9525a0166b68 Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期四, 07 十二月 2023 10:45:36 +0800 Subject: [PATCH] 文件误删除后,本地重新找回后提交 --- pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/tasks/ToRtuConstantTask.java | 48 +++++++++++++++++++++++++++++++++--------------- 1 files changed, 33 insertions(+), 15 deletions(-) diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/tasks/ToRtuConstantTask.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/tasks/ToRtuConstantTask.java index 08721c8..291184a 100644 --- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/tasks/ToRtuConstantTask.java +++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/tasks/ToRtuConstantTask.java @@ -5,7 +5,7 @@ import com.dy.common.queue.Node; import com.dy.common.mw.core.CoreTask; -import com.dy.aceMw.server.forTcp.TcpDownCommandCach; +import com.dy.aceMw.server.forTcp.TcpDownCommandCache; import com.dy.aceMw.server.forTcp.TcpDownCommandObj; import com.dy.aceMw.server.forTcp.TcpSessionCach; @@ -40,16 +40,12 @@ * 澶勭悊涓嬭鍛戒护 */ public Integer dealDownCommand(Long now) { - try{ - Node first = TcpDownCommandCach.getFirstQueueNode() ; - if(first != null){ - Integer count = TcpDownCommandCach.size() ; - Node last = TcpDownCommandCach.getLastQueueNode() ; - this.doDealDownCommand(now, first, last); - return count ; - } - }catch(Exception e){ - log.error(e); + Node first = TcpDownCommandCache.getFirstQueueNode() ; + if(first != null){ + Integer count = TcpDownCommandCache.size() ; + Node last = TcpDownCommandCache.getLastQueueNode() ; + this.doDealDownCommand(now, first, last); + return count ; } return null ; } @@ -57,9 +53,9 @@ * 澶勭悊缂撳瓨鐨勪笅琛屽懡浠よ妭鐐� * @param now 褰撳墠鏃跺埢 * @param first 绗竴涓妭鐐� - * @param last 鏄悗涓�涓妭鐐� + * @param last 鏈�鍚庝竴涓妭鐐� */ - private void doDealDownCommand(Long now, Node first, Node last){ + private void doDealDownCommand1(Long now, Node first, Node last){ if(first != null){ //鍦╠ealNode鏂规硶涓紝鍙兘瑕佹妸first浠庨槦鍒椾腑绉婚櫎锛岃繖鏃秄irst.next涓虹┖锛屾墍浠ユ彁鍓嶆妸first.next鍙栧嚭鏉� Node next = first.next ; @@ -74,7 +70,29 @@ } } } - + + /** + * 澶勭悊缂撳瓨鐨勪笅琛屽懡浠よ妭鐐� + * @param now 褰撳墠鏃跺埢 + * @param first 绗竴涓妭鐐� + * @param last 鏈�鍚庝竴涓妭鐐� + */ + private void doDealDownCommand(Long now, Node first, Node last){ + if(last != null){ + //鍦╠ealNode鏂规硶涓紝鍙兘瑕佹妸last浠庨槦鍒椾腑绉婚櫎锛岃繖鏃秎ast.pre涓虹┖锛屾墍浠ユ彁鍓嶆妸last.pre鍙栧嚭鏉� + Node pre = last.pre ; + dealNode(now, last) ; + if(first != null && first != last){ + doDealDownCommand(now, first, pre) ; + }else if(first != null && first == last){ + //鍋滄 + }else if(first == null){ + //杩欑鎯呭喌涓嶄細瀛樺湪 + doDealDownCommand(now, null, pre) ; + } + } + } + /** * 澶勭悊涓�涓妭鐐� * @param now 鐜板湪鏃跺埢 @@ -84,7 +102,7 @@ TcpDownCommandObj obj = (TcpDownCommandObj)node.obj ; boolean removeNode = obj.dealSelf(now) ; if(removeNode){ - TcpDownCommandCach.removeNode(node); + TcpDownCommandCache.removeNode(node); } } -- Gitblit v1.8.0