From b5cd784d0cde5b7c82ea78aef4ac0e5a161d8c5d Mon Sep 17 00:00:00 2001
From: liusuyi <1951119284@qq.com>
Date: Mon, 18 May 2026 14:42:43 +0800
Subject: [PATCH] 优化
---
ard-modules/ard-modules-work/src/main/java/com/ard/work/sdk/factory/CameraSDKFactory.java | 63 +++++++++++--------------------
1 files changed, 23 insertions(+), 40 deletions(-)
diff --git a/ard-modules/ard-modules-work/src/main/java/com/ard/work/sdk/factory/CameraSDKFactory.java b/ard-modules/ard-modules-work/src/main/java/com/ard/work/sdk/factory/CameraSDKFactory.java
index e9591ab..245dd1c 100644
--- a/ard-modules/ard-modules-work/src/main/java/com/ard/work/sdk/factory/CameraSDKFactory.java
+++ b/ard-modules/ard-modules-work/src/main/java/com/ard/work/sdk/factory/CameraSDKFactory.java
@@ -3,14 +3,13 @@
import com.ard.work.sdk.dh.service.DaHuaSDK;
import com.ard.work.sdk.fjr.service.FjrSDK;
import com.ard.work.sdk.hb.service.HbSDK;
-import com.ard.work.sdk.hik.service.AbstractHikVisionSDK;
import com.ard.work.sdk.hik.service.HikSDK;
import com.ard.work.sdk.hp.service.HpSDK;
import com.ard.work.sdk.service.CameraSDK;
import com.ard.work.sdk.zlxd.service.ZlxdSDK;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Component;
+
+import java.util.Map;
/**
@@ -22,29 +21,24 @@
@Component
public class CameraSDKFactory {
- @Autowired
- @Qualifier("hikSDK")
- private HikSDK hikSDK;
+ private final Map<String, CameraSDK> sdkRegistry;
- @Autowired
- @Qualifier("dahuaSDK")
- private DaHuaSDK dahuaSDK;
+ public CameraSDKFactory(HikSDK hikSDK,
+ DaHuaSDK dahuaSDK,
+ HpSDK hpSDK,
+ ZlxdSDK zlxdSDK,
+ HbSDK hbSDK,
+ FjrSDK fjrSDK) {
+ this.sdkRegistry = Map.of(
+ "1", hikSDK,
+ "2", dahuaSDK,
+ "4", zlxdSDK,
+ "5", hpSDK,
+ "7", hbSDK,
+ "8", fjrSDK
+ );
+ }
- @Autowired
- @Qualifier("hpSDK")
- private HpSDK hpSDK;
-
- @Autowired
- @Qualifier("zlxdSDK")
- private ZlxdSDK zlxdSDK;
-
- @Autowired
- @Qualifier("hbSDK")
- private HbSDK hbSDK;
-
- @Autowired
- @Qualifier("fjrSDK")
- private FjrSDK fjrSDK;
/**
* 根据传入的工厂参数创建相应的相机SDK实例
*
@@ -53,21 +47,10 @@
* @throws IllegalArgumentException 如果传入的工厂参数不支持
*/
public CameraSDK createCameraSDK(String factory) {
- switch (factory) {
- case "1":
- return hikSDK;
- case "2":
- return dahuaSDK;
- case "4":
- return zlxdSDK;
- case "5":
- return hpSDK;
- case "7":
- return hbSDK;
- case "8":
- return fjrSDK;
- default:
- throw new IllegalArgumentException("Unsupported device: " + factory);
+ CameraSDK sdk = sdkRegistry.get(factory);
+ if (sdk == null) {
+ throw new IllegalArgumentException("Unsupported camera factory: " + factory);
}
+ return sdk;
}
-}
\ No newline at end of file
+}
--
Gitblit v1.9.3