From 1e6561acc89b7105c1dcbf5395845d6046f1453d Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期五, 21 二月 2025 16:55:09 +0800
Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV

---
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/ProtocolCache.java |   40 +++++++++++++++++++++++++++++++++++-----
 1 files changed, 35 insertions(+), 5 deletions(-)

diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/ProtocolCache.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/ProtocolCache.java
index c076537..81bc5b7 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/ProtocolCache.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/ProtocolCache.java
@@ -19,17 +19,35 @@
 	 * 鍦ㄥ崟绾跨▼鐜涓繍琛�
 	 * 閫氳繃鍗忚椹卞姩鐨勭被鍚嶏紝寰楀埌绫诲崟渚�
 	 * @param protocolName 鍗忚鍚嶇О
+	 * @param protocolVersion 鍗忚鐗堟湰鍙�
 	 * @return 椹卞姩
 	 * @throws Exception 寮傚父
 	 */
-	public static Driver getDriver(String protocolName) throws Exception{
-		Driver dri = drivers.get(protocolName);
+	public static Driver getDriver(String protocolName, short protocolVersion) throws Exception{
+		Driver dri = drivers.get(protocolName + protocolVersion) ;
 		if(dri == null){
-			AnnotationDriverVo vo = driverMap.get(protocolName) ;
+			AnnotationDriverVo vo = driverMap.get(protocolName + protocolVersion) ;
 			if(vo != null && vo.clazz != null){
 				dri = (Driver)vo.clazz.getDeclaredConstructor().newInstance();
-				//dri = (Driver)vo.clazz.newInstance() ;
-				drivers.put(protocolName, dri) ;
+				drivers.put(protocolName + protocolVersion, dri) ;
+			}
+		}
+		return dri ;
+	}
+	/**
+	 * 鍦ㄥ崟绾跨▼鐜涓繍琛�
+	 * 閫氳繃鍗忚椹卞姩鐨勭被鍚嶏紝寰楀埌绫诲崟渚�
+	 * @param protocolNameVersion 鍗忚鍚嶇О鍜岀増鏈彿
+	 * @return 椹卞姩
+	 * @throws Exception 寮傚父
+	 */
+	public static Driver getDriver(String protocolNameVersion) throws Exception{
+		Driver dri = drivers.get(protocolNameVersion) ;
+		if(dri == null){
+			AnnotationDriverVo vo = driverMap.get(protocolNameVersion) ;
+			if(vo != null && vo.clazz != null){
+				dri = (Driver)vo.clazz.getDeclaredConstructor().newInstance();
+				drivers.put(protocolNameVersion, dri) ;
 			}
 		}
 		return dri ;
@@ -79,6 +97,18 @@
 		return onLineMap;
 	}
 
+	protected AnnotationDriverVo getAnnotationDriver(String protocolName, Short protocolVersion){
+		return driverMap.get(protocolName + "" + protocolVersion) ;
+	}
+
+	protected static AnnotationPrefixedDataAvailableVo getAnnotationPrefixedDataAvailable(String protocolName, Short protocolVersion){
+		return prefixedDataAvailableMap.get(protocolName + "" + protocolVersion) ;
+	}
+
+	protected static AnnotationOnLineVo getAnnotationOnLine(String protocolName, Short protocolVersion){
+		return onLineMap.get(protocolName + "" + protocolVersion) ;
+	}
+
     /*
     public static void main(String[] args){
         HashMap<String, Integer> mp = new HashMap<>() ;

--
Gitblit v1.8.0