From ab7e9536a7bd3f658fead51bc83e1d616d944e7a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=A2=81=E6=98=BE=E4=BC=98?= <237809796@qq.com>
Date: Wed, 17 Nov 2021 18:33:18 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=EF=BC=9A=20=E5=90=88?=
=?UTF-8?q?=E5=B9=B6=20zhub=20=E9=85=8D=E7=BD=AE=EF=BC=8Caddr=3D"host:port?=
=?UTF-8?q?",=20=E5=8E=BB=E9=99=A4=E5=8E=9F=E6=9C=89=20port=E5=8F=82?=
=?UTF-8?q?=E6=95=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
conf/application.xml | 2 +-
src/com/zdemo/zhub/ZHubClient.java | 24 +++++++++++++++++-------
2 files changed, 18 insertions(+), 8 deletions(-)
diff --git a/conf/application.xml b/conf/application.xml
index 68f0ce3..c519a89 100644
--- a/conf/application.xml
+++ b/conf/application.xml
@@ -4,7 +4,7 @@
-
+
diff --git a/src/com/zdemo/zhub/ZHubClient.java b/src/com/zdemo/zhub/ZHubClient.java
index 8d7d9f6..21b4637 100644
--- a/src/com/zdemo/zhub/ZHubClient.java
+++ b/src/com/zdemo/zhub/ZHubClient.java
@@ -35,11 +35,11 @@ public class ZHubClient extends AbstractConsumer implements IConsumer, IProducer
public Logger logger = Logger.getLogger(ZHubClient.class.getSimpleName());
@Resource(name = "property.zhub.host")
- private String host = "127.0.0.1";
+ private String addr = "127.0.0.1:1216";
@Resource(name = "property.zhub.password")
private String password = "";
- @Resource(name = "property.zhub.port")
- private int port = 1216;
+ /*@Resource(name = "property.zhub.port")
+ private int port = 1216;*/
@Resource(name = "property.zhub.groupid")
private String groupid = "";
@@ -72,8 +72,14 @@ public class ZHubClient extends AbstractConsumer implements IConsumer, IProducer
// 自动注入
if (config != null) {
- host = config.getValue("addr", host);
- port = config.getIntValue("port", port);
+ addr = config.getValue("addr", addr);
+
+ // 合并 addr = host:port, 做历史兼容
+ int port = config.getIntValue("port", 0);
+ if (port != 0 && !addr.contains(":")) {
+ addr = addr + ":" + port;
+ }
+
groupid = config.getValue("groupid", groupid);
}
@@ -82,8 +88,8 @@ public class ZHubClient extends AbstractConsumer implements IConsumer, IProducer
isMain = true;
isFirst = false;
}*/
- if (!mainHub.containsKey(host + ":" + port)) { // 确保同步执行此 init 逻辑
- mainHub.put(host + ":" + port, this);
+ if (!mainHub.containsKey(addr)) { // 确保同步执行此 init 逻辑
+ mainHub.put(addr, this);
}
if (!initSocket(0)) {
@@ -330,6 +336,10 @@ public class ZHubClient extends AbstractConsumer implements IConsumer, IProducer
protected boolean initSocket(int retry) {
for (int i = 0; i <= retry; i++) {
try {
+ String[] hostPort = addr.split(":");
+ String host = hostPort[0];
+ int port = Integer.parseInt(hostPort[1]);
+
client = new Socket();
client.connect(new InetSocketAddress(host, port));
client.setKeepAlive(true);