From 8d9a2d656e4ae007590c622e5f7c228adacdca49 Mon Sep 17 00:00:00 2001
From: rain <167982779@qq.com>
Date: Fri, 14 Jun 2024 10:11:36 +0800
Subject: [PATCH] 统一风格
---
src/main/java/com/dji/sample/component/mqtt/config/MqttConfiguration.java | 29 ++++++++++++++++++++++++++++-
1 files changed, 28 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/dji/sample/component/mqtt/config/MqttConfiguration.java b/src/main/java/com/dji/sample/component/mqtt/config/MqttConfiguration.java
index 69c6398..86ad1d9 100644
--- a/src/main/java/com/dji/sample/component/mqtt/config/MqttConfiguration.java
+++ b/src/main/java/com/dji/sample/component/mqtt/config/MqttConfiguration.java
@@ -5,6 +5,7 @@
import com.dji.sample.component.mqtt.model.MqttClientOptions;
import com.dji.sample.component.mqtt.model.MqttProtocolEnum;
import com.dji.sample.component.mqtt.model.MqttUseEnum;
+import com.dji.sample.control.model.dto.MqttBrokerDTO;
import lombok.Data;
import org.eclipse.paho.client.mqttv3.MqttConnectOptions;
import org.springframework.boot.context.properties.ConfigurationProperties;
@@ -39,7 +40,7 @@
*/
static MqttClientOptions getBasicClientOptions() {
if (!mqtt.containsKey(MqttUseEnum.BASIC)) {
- throw new Error("Please configure the basic mqtt connection parameters first, otherwise application cannot be started.");
+ throw new Error("请先配置基本的mqtt连接参数,否则应用程序无法启动。");
}
return mqtt.get(MqttUseEnum.BASIC);
}
@@ -70,6 +71,32 @@
return addr.toString();
}
+ /**
+ * Get the connection parameters of the mqtt client of the drc link.
+ * @param clientId
+ * @param username
+ * @param age The validity period of the token. unit: s
+ * @param map Custom data added in token.
+ * @return
+ */
+ public static MqttBrokerDTO getMqttBrokerWithDrc(String clientId, String username, Long age, Map<String, ?> map) {
+ if (!mqtt.containsKey(MqttUseEnum.DRC)) {
+ throw new RuntimeException("请先在后端配置文件中配置mqtt的drc链接参数。");
+ }
+ Algorithm algorithm = JwtUtil.algorithm;
+
+ String token = JwtUtil.createToken(map, age, algorithm, null, null);
+
+ return MqttBrokerDTO.builder()
+ .address(getMqttAddress(mqtt.get(MqttUseEnum.DRC)))
+ .username("root")
+ .clientId(clientId)
+ .expireTime(System.currentTimeMillis() / 1000 + age)
+ .password("root")
+ .build();
+ }
+
+
@Bean
public MqttConnectOptions mqttConnectOptions() {
MqttClientOptions customizeOptions = getBasicClientOptions();
--
Gitblit v1.9.3