From 8e2779f2d8c221c9066358c7c7322d2cf2a24c0e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=BB=9D=E5=B0=98?= <237809796@qq.com>
Date: Sat, 21 Oct 2023 10:23:59 +0800
Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=EF=BC=9Aspringboot=20?=
=?UTF-8?q?=E7=BB=84=E4=BB=B6=E5=88=9D=E5=A7=8B=E5=8C=96=20zhub=20?=
=?UTF-8?q?=E5=AE=9E=E4=BE=8B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pom.xml | 10 ++++++--
src/main/java/tccn/AbstractConsumer.java | 3 ---
src/main/java/tccn/zhub/ZHubClient.java | 29 ++++++++++++++++++------
src/main/resources/application.yml | 7 ++++++
4 files changed, 37 insertions(+), 12 deletions(-)
create mode 100644 src/main/resources/application.yml
diff --git a/pom.xml b/pom.xml
index 9ca48fe..053b226 100644
--- a/pom.xml
+++ b/pom.xml
@@ -14,6 +14,12 @@
+
+ org.springframework.boot
+ spring-boot-starter-web
+ 2.5.4
+
+
com.google.code.gson
gson
@@ -27,7 +33,7 @@
-
+
\ No newline at end of file
diff --git a/src/main/java/tccn/AbstractConsumer.java b/src/main/java/tccn/AbstractConsumer.java
index 7663642..784b8f7 100644
--- a/src/main/java/tccn/AbstractConsumer.java
+++ b/src/main/java/tccn/AbstractConsumer.java
@@ -18,9 +18,6 @@ public abstract class AbstractConsumer implements IConsumer {
public Gson gson = Rpc.gson;
- // @Resource(name = "APP_NAME")
- protected String APP_ID = "";
-
private Map eventMap = new HashMap<>();
protected abstract String getGroupid();
diff --git a/src/main/java/tccn/zhub/ZHubClient.java b/src/main/java/tccn/zhub/ZHubClient.java
index ee62ec1..ed6dd9a 100644
--- a/src/main/java/tccn/zhub/ZHubClient.java
+++ b/src/main/java/tccn/zhub/ZHubClient.java
@@ -1,12 +1,15 @@
package tccn.zhub;
import com.google.gson.reflect.TypeToken;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Component;
import tccn.AbstractConsumer;
import tccn.Event;
import tccn.IConsumer;
import tccn.IProducer;
import tccn.timer.Timers;
+import javax.annotation.PostConstruct;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
@@ -27,15 +30,27 @@ import java.util.function.Function;
import java.util.logging.Level;
import java.util.logging.Logger;
-
+@Component
public class ZHubClient extends AbstractConsumer implements IConsumer, IProducer {
public Logger logger = Logger.getLogger(ZHubClient.class.getSimpleName());
+ @Value("${zhub.addr}")
private String addr = "127.0.0.1:1216";
- //private String password = "";
+
+ @Value("${zhub.groupid}")
private String groupid = "";
+
+ @Value("${zhub.auth}")
private String auth = "";
+ @Value("${zhub.appid}")
+ protected String appid = "";
+
+ @PostConstruct
+ public void init() {
+ init(null);
+ }
+
private OutputStream writer;
private BufferedReader reader;
@@ -58,7 +73,7 @@ public class ZHubClient extends AbstractConsumer implements IConsumer, IProducer
public ZHubClient(String addr, String groupid, String appid, String auth) {
this.addr = addr;
this.groupid = groupid;
- this.APP_ID = appid;
+ this.appid = appid;
this.auth = auth;
init(null);
}
@@ -72,7 +87,7 @@ public class ZHubClient extends AbstractConsumer implements IConsumer, IProducer
if (config != null) {
addr = config.getOrDefault("addr", addr);
groupid = config.getOrDefault("groupid", groupid);
- APP_ID = config.getOrDefault("appname", APP_ID);
+ appid = config.getOrDefault("appname", appid);
}
// 设置第一个启动的 实例为主实例
@@ -142,7 +157,7 @@ public class ZHubClient extends AbstractConsumer implements IConsumer, IProducer
continue;
}
// rpc back msg
- if (APP_ID.equals(topic)) {
+ if (appid.equals(topic)) {
rpcBackQueue.add(Event.of(topic, value));
continue;
}
@@ -359,7 +374,7 @@ public class ZHubClient extends AbstractConsumer implements IConsumer, IProducer
/*if (isMain) {
}*/
if (mainHub.containsValue(this)) {
- buf.append(" ").append(APP_ID);
+ buf.append(" ").append(appid);
}
for (String topic : getTopics()) {
buf.append(" ").append(topic);
@@ -533,7 +548,7 @@ public class ZHubClient extends AbstractConsumer implements IConsumer, IProducer
// rpc call
public RpcResult rpc(String topic, T v, TypeToken typeToken, long timeout) {
- Rpc rpc = new Rpc<>(APP_ID, UUID.randomUUID().toString().replaceAll("-", ""), topic, v);
+ Rpc rpc = new Rpc<>(appid, UUID.randomUUID().toString().replaceAll("-", ""), topic, v);
String ruk = rpc.getRuk();
rpcMap.put(ruk, rpc);
if (typeToken != null) {
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
new file mode 100644
index 0000000..848100d
--- /dev/null
+++ b/src/main/resources/application.yml
@@ -0,0 +1,7 @@
+
+# zhub 配置
+zhub:
+ appid: local_api
+ addr: 127.0.0.1:1216
+ groupid: hub-api
+ auth: token-12345