From 70f61b0638e32274d0e5f9b972ce2a18f139f1b4 Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期四, 12 六月 2025 09:51:30 +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/channel/mqtt/MqttClientPooledObjectFactory.java |   15 ++++++++++++---
 1 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/channel/mqtt/MqttClientPooledObjectFactory.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/channel/mqtt/MqttClientPooledObjectFactory.java
index bd2eb0f..86fc682 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/channel/mqtt/MqttClientPooledObjectFactory.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/channel/mqtt/MqttClientPooledObjectFactory.java
@@ -5,6 +5,7 @@
 import org.apache.commons.pool2.impl.DefaultPooledObject;
 import org.eclipse.paho.client.mqttv3.MqttClient;
 import org.eclipse.paho.client.mqttv3.MqttConnectOptions;
+import org.eclipse.paho.client.mqttv3.persist.MemoryPersistence;
 
 /**
  * @Author: liurunyu
@@ -16,18 +17,26 @@
     private final String broker;
     private final String username;
     private final String password;
+    private final Boolean useMemoryPersistence;
 
-    public MqttClientPooledObjectFactory(String broker, String username, String password) {
+    public MqttClientPooledObjectFactory(String broker, String username, String password, boolean useMemoryPersistence) {
         this.broker = broker;
         this.username = username;
         this.password = password;
+        this.useMemoryPersistence = useMemoryPersistence;
     }
 
     @Override
     public MqttClient create() throws Exception {
         String clientId = MqttClient.generateClientId();
-        MqttClient client = new MqttClient(broker, clientId);
-
+        MqttClient client = null ;
+        // 浣跨敤鍐呭瓨鎸佷箙鍖栬�岄潪榛樿鐨勬枃浠舵寔涔呭寲
+        if (useMemoryPersistence) {
+            MemoryPersistence persistence = new MemoryPersistence();
+            client = new MqttClient(broker, clientId, persistence);
+        }else{
+            client = new MqttClient(broker, clientId);
+        }
         MqttConnectOptions options = new MqttConnectOptions();
         options.setUserName(username);
         options.setPassword(password.toCharArray());

--
Gitblit v1.8.0