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