4 Commits

Author SHA1 Message Date
1e23fc383b 新增:Java通用ZHub客户端分支 2024-04-24 22:58:34 +08:00
94b1ac4822 . 2024-04-24 20:26:25 +08:00
3fe08e92a8 修改:包结构名称 2024-04-23 19:20:16 +08:00
a0126582bd . 2024-04-22 00:21:54 +08:00
23 changed files with 89 additions and 129 deletions

35
pom.xml
View File

@@ -4,43 +4,33 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<groupId>net.tccn</groupId> <groupId>dev.zhub</groupId>
<artifactId>zhub-client-spring</artifactId> <artifactId>zhub-client</artifactId>
<version>17.0.0409.dev</version> <version>0.1.0424.dev</version>
<parent> <description>ZHub-Java 通用客户端</description>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.1.10</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties> <properties>
<maven.compiler.source>17</maven.compiler.source> <maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target> <maven.compiler.target>1.8</maven.compiler.target>
</properties> </properties>
<dependencies> <dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<scope>provided</scope>
</dependency>
<dependency> <dependency>
<groupId>com.google.code.gson</groupId> <groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId> <artifactId>gson</artifactId>
<version>2.10.1</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>junit</groupId> <groupId>junit</groupId>
<artifactId>junit</artifactId> <artifactId>junit</artifactId>
<!--<version>4.13.1</version>--> <version>4.13.1</version>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.projectlombok</groupId> <groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId> <artifactId>lombok</artifactId>
<!--<version>1.18.30</version>--> <version>1.18.30</version>
<scope>provided</scope> <scope>provided</scope>
</dependency> </dependency>
</dependencies> </dependencies>
@@ -59,5 +49,12 @@
<url>https://nexus.1216.top/repository/maven-releases/</url> <url>https://nexus.1216.top/repository/maven-releases/</url>
</repository> </repository>
</distributionManagement> </distributionManagement>
<!--<distributionManagement>
<repository>
<id>mvn-recloud</id>
<name>mvn-release</name>
<url>http://nexus.recloud.cn/repository/maven-releases/</url>
</repository>
</distributionManagement>-->
</project> </project>

View File

@@ -1,10 +1,9 @@
package tccn; package dev.zhub;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken; import com.google.gson.reflect.TypeToken;
import tccn.zhub.Rpc; import dev.zhub.client.Rpc;
import java.util.HashMap;
import java.util.HashSet; import java.util.HashSet;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;

View File

@@ -1,4 +1,4 @@
package tccn; package dev.zhub;
/** /**
* 发布订阅 事件 * 发布订阅 事件

View File

@@ -1,4 +1,4 @@
package tccn; package dev.zhub;
import com.google.gson.reflect.TypeToken; import com.google.gson.reflect.TypeToken;

View File

@@ -1,4 +1,4 @@
package tccn; package dev.zhub;
import com.google.gson.reflect.TypeToken; import com.google.gson.reflect.TypeToken;

View File

@@ -1,4 +1,4 @@
package tccn; package dev.zhub;
import java.util.logging.Logger; import java.util.logging.Logger;

View File

@@ -0,0 +1,27 @@
package dev.zhub;
import com.google.gson.reflect.TypeToken;
import java.util.List;
import java.util.Map;
public interface IType {
TypeToken<String> STRING = new TypeToken<String>() {
};
TypeToken<Short> SHORT = new TypeToken<Short>() {
};
TypeToken<Integer> INT = new TypeToken<Integer>() {
};
TypeToken<Long> LONG = new TypeToken<Long>() {
};
TypeToken<Double> DOUBLE = new TypeToken<Double>() {
};
TypeToken<Map<String, String>> MAP = new TypeToken<Map<String, String>>() {
};
TypeToken<List<Map<String, String>>> LMAP = new TypeToken<List<Map<String, String>>>() {
};
}

View File

@@ -1,4 +1,4 @@
package tccn.zhub; package dev.zhub.client;
// ================================================== lock ================================================== // ================================================== lock ==================================================
public class Lock { public class Lock {

View File

@@ -1,4 +1,4 @@
package tccn.zhub; package dev.zhub.client;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.google.gson.annotations.Expose; import com.google.gson.annotations.Expose;

View File

@@ -0,0 +1,13 @@
package dev.zhub.client;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public class RpcResult<R> {
private String ruk;
private int retcode;
private String retinfo;
private R result;
}

View File

@@ -1,12 +1,9 @@
package tccn.zhub; package dev.zhub.client;
import com.google.gson.reflect.TypeToken; import com.google.gson.reflect.TypeToken;
import jakarta.annotation.PostConstruct; import dev.zhub.*;
import dev.zhub.timer.Timers;
import lombok.Setter; import lombok.Setter;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import tccn.*;
import tccn.timer.Timers;
import java.io.BufferedReader; import java.io.BufferedReader;
import java.io.IOException; import java.io.IOException;
@@ -22,24 +19,18 @@ import java.util.function.Function;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.logging.Logger; import java.util.logging.Logger;
@Component
public class ZHubClient extends AbstractConsumer implements IConsumer, IProducer { public class ZHubClient extends AbstractConsumer implements IConsumer, IProducer {
public Logger logger = Logger.getLogger(ZHubClient.class.getSimpleName()); public Logger logger = Logger.getLogger(ZHubClient.class.getSimpleName());
@Setter @Setter
@Value("${zhub.addr}")
private String addr = "127.0.0.1:1216"; private String addr = "127.0.0.1:1216";
@Setter @Setter
@Value("${zhub.groupid}")
private String groupid = ""; private String groupid = "";
@Setter @Setter
@Value("${zhub.auth}")
private String auth = ""; private String auth = "";
@Setter @Setter
@Value("${zhub.appid}")
protected String appid = ""; protected String appid = "";
@PostConstruct
public void init() { public void init() {
init(null); init(null);
} }
@@ -638,7 +629,7 @@ public class ZHubClient extends AbstractConsumer implements IConsumer, IProducer
TypeToken typeToken = rpc.getTypeToken(); TypeToken typeToken = rpc.getTypeToken();
if (typeToken.getType() != ((RpcResult<?>) value).getResult().getClass()) { if (typeToken.getType() != ((RpcResult<?>) value).getResult().getClass()) {
Object result = gson.fromJson(toStr(((RpcResult<?>) value).getResult()), typeToken.getType()); Object result = gson.fromJson(toStr(((RpcResult<?>) value).getResult()), typeToken.getType());
((RpcResult<?>) value).setResult(result); ((RpcResult<Object>) value).setResult(result);
} }
rpc.setRpcResult((RpcResult) value); rpc.setRpcResult((RpcResult) value);

View File

@@ -1,7 +1,7 @@
package tccn.timer; package dev.zhub.timer;
import tccn.timer.queue.TimerQueue; import dev.zhub.timer.queue.TimerQueue;
import tccn.timer.task.Task; import dev.zhub.timer.task.Task;
import java.util.concurrent.ExecutorService; import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors; import java.util.concurrent.Executors;

View File

@@ -1,8 +1,8 @@
package tccn.timer; package dev.zhub.timer;
import tccn.timer.scheduled.Scheduled; import dev.zhub.timer.scheduled.Scheduled;
import tccn.timer.task.Job; import dev.zhub.timer.task.Job;
import tccn.timer.task.Task; import dev.zhub.timer.task.Task;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.ZoneId; import java.time.ZoneId;

View File

@@ -1,6 +1,6 @@
package tccn.timer; package dev.zhub.timer;
import tccn.timer.scheduled.ScheduledCycle; import dev.zhub.timer.scheduled.ScheduledCycle;
import java.util.UUID; import java.util.UUID;
import java.util.function.Supplier; import java.util.function.Supplier;

View File

@@ -1,6 +1,6 @@
package tccn.timer.queue; package dev.zhub.timer.queue;
import tccn.timer.task.Task; import dev.zhub.timer.task.Task;
import java.util.LinkedList; import java.util.LinkedList;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;

View File

@@ -1,4 +1,4 @@
package tccn.timer.scheduled; package dev.zhub.timer.scheduled;
import java.time.LocalDateTime; import java.time.LocalDateTime;

View File

@@ -1,4 +1,4 @@
package tccn.timer.scheduled; package dev.zhub.timer.scheduled;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.temporal.ChronoUnit; import java.time.temporal.ChronoUnit;

View File

@@ -1,4 +1,4 @@
package tccn.timer.scheduled; package dev.zhub.timer.scheduled;
import java.time.LocalDate; import java.time.LocalDate;
import java.time.LocalDateTime; import java.time.LocalDateTime;

View File

@@ -1,4 +1,4 @@
package tccn.timer.task; package dev.zhub.timer.task;
/** /**
* @author: liangxianyou at 2018/12/8 17:24. * @author: liangxianyou at 2018/12/8 17:24.

View File

@@ -1,7 +1,7 @@
package tccn.timer.task; package dev.zhub.timer.task;
import tccn.timer.TimerExecutor; import dev.zhub.timer.TimerExecutor;
import tccn.timer.scheduled.Scheduled; import dev.zhub.timer.scheduled.Scheduled;
/** /**
* @author: liangxianyou at 2018/8/5 19:32. * @author: liangxianyou at 2018/8/5 19:32.

View File

@@ -1,27 +0,0 @@
package tccn;
import com.google.gson.reflect.TypeToken;
import java.util.List;
import java.util.Map;
public interface IType {
TypeToken<String> STRING = new TypeToken<>() {
};
TypeToken<Short> SHORT = new TypeToken<>() {
};
TypeToken<Integer> INT = new TypeToken<>() {
};
TypeToken<Long> LONG = new TypeToken<>() {
};
TypeToken<Double> DOUBLE = new TypeToken<>() {
};
TypeToken<Map<String, String>> MAP = new TypeToken<>() {
};
TypeToken<List<Map<String, String>>> LMAP = new TypeToken<List<Map<String, String>>>() {
};
}

View File

@@ -1,40 +0,0 @@
package tccn.zhub;
public class RpcResult<R> {
private String ruk;
private int retcode;
private String retinfo;
private R result;
public String getRuk() {
return ruk;
}
public void setRuk(String ruk) {
this.ruk = ruk;
}
public int getRetcode() {
return retcode;
}
public void setRetcode(int retcode) {
this.retcode = retcode;
}
public String getRetinfo() {
return retinfo;
}
public void setRetinfo(String retinfo) {
this.retinfo = retinfo;
}
public R getResult() {
return result;
}
public void setResult(Object result) {
this.result = (R) result;
}
}

View File

@@ -1,8 +1,8 @@
import org.junit.Before; import org.junit.Before;
import org.junit.Test; import org.junit.Test;
import tccn.IType; import net.tccn.IType;
import tccn.zhub.Lock; import net.tccn.zhub.Lock;
import tccn.zhub.ZHubClient; import net.tccn.zhub.ZHubClient;
// @RestService(automapping = true) // @RestService(automapping = true)
public class HelloService { public class HelloService {