From f750945e6e7d5b526279e4c80972ffbf62b12e66 Mon Sep 17 00:00:00 2001 From: Alex Date: Sun, 27 Mar 2022 19:32:32 +0200 Subject: [PATCH] library changed to redisson --- pom.xml | 6 +++--- .../java/net/krakatoa/proxy/ProxySystem.java | 4 ++-- .../proxy/listener/PostLoginListener.java | 15 ++++++++++--- .../net/krakatoa/proxy/redis/PlayerTest.java | 12 +++++++++++ .../proxy/redis/RedisHashCommands.java | 19 ----------------- .../proxy/redis/RedisKeyCommands.java | 17 --------------- .../krakatoa/proxy/redis/RedisManager.java | 21 ++++++++++--------- 7 files changed, 40 insertions(+), 54 deletions(-) create mode 100644 src/main/java/net/krakatoa/proxy/redis/PlayerTest.java delete mode 100644 src/main/java/net/krakatoa/proxy/redis/RedisHashCommands.java delete mode 100644 src/main/java/net/krakatoa/proxy/redis/RedisKeyCommands.java diff --git a/pom.xml b/pom.xml index c285631..9dfec7b 100644 --- a/pom.xml +++ b/pom.xml @@ -51,9 +51,9 @@ 0.9.0 - io.lettuce - lettuce-core - 6.1.8.RELEASE + org.redisson + redisson + 3.17.0 net.md-5 diff --git a/src/main/java/net/krakatoa/proxy/ProxySystem.java b/src/main/java/net/krakatoa/proxy/ProxySystem.java index d8845cd..32d1f60 100644 --- a/src/main/java/net/krakatoa/proxy/ProxySystem.java +++ b/src/main/java/net/krakatoa/proxy/ProxySystem.java @@ -73,7 +73,7 @@ public class ProxySystem extends Plugin { this.players = this.mongoManager.getMongoDatabase().getCollection("players"); - this.redisManager = new RedisManager("redis://localhost"); + this.redisManager = new RedisManager("redis://127.0.0.1:6379"); this.redisManager.connect(); loadListeners(); @@ -88,7 +88,7 @@ public class ProxySystem extends Plugin { this.mongoManager.getMongoClient().close(); //this.redisManager.getConnection().close(); - this.redisManager.getClient().shutdown(); + //this.redisManager.getClient().shutdown(); instance = null; } diff --git a/src/main/java/net/krakatoa/proxy/listener/PostLoginListener.java b/src/main/java/net/krakatoa/proxy/listener/PostLoginListener.java index 8deb959..434a31a 100644 --- a/src/main/java/net/krakatoa/proxy/listener/PostLoginListener.java +++ b/src/main/java/net/krakatoa/proxy/listener/PostLoginListener.java @@ -13,6 +13,7 @@ import java.util.Map; import java.util.concurrent.TimeUnit; import java.util.function.Consumer; import net.krakatoa.proxy.ProxySystem; +import net.krakatoa.proxy.redis.PlayerTest; import net.md_5.bungee.api.ProxyServer; import net.md_5.bungee.api.chat.ClickEvent; import net.md_5.bungee.api.chat.HoverEvent; @@ -30,6 +31,7 @@ import org.bson.conversions.Bson; import org.msgpack.core.MessageBufferPacker; import org.msgpack.core.MessagePack; import org.msgpack.core.MessageUnpacker; +import org.redisson.api.RBucket; public class PostLoginListener implements Listener { @@ -114,7 +116,7 @@ public class PostLoginListener implements Listener { packer.close(); - ProxySystem.getInstance().getRedisManager().getRedisKeyCommands() + /* ProxySystem.getInstance().getRedisManager().getRedisKeyCommands() .set("player:" + proxiedPlayer.getUniqueId().toString(), packer.toByteArray()); /* @@ -125,8 +127,15 @@ public class PostLoginListener implements Listener { map.put("skin", "steve"); map.put("money", "101001"); map.put("state", "online"); - ProxySystem.getInstance().getRedisManager().getRedisHashCommands() - .hset("player", proxiedPlayer.getUniqueId().toString(), map); + //ProxySystem.getInstance().getRedisManager().getRedisHashCommands() + // .hset("player", proxiedPlayer.getUniqueId().toString(), map); + + RBucket bucket = ProxySystem.getInstance().getRedisManager().getRedissonClient() + .getBucket("player:" + proxiedPlayer.getUniqueId().toString()); + + PlayerTest playerTest = bucket.get(); + + ProxySystem.getInstance().getLogger().info("playerTest " + playerTest); MessageUnpacker unpacker = MessagePack.newDefaultUnpacker(packer.toByteArray()); diff --git a/src/main/java/net/krakatoa/proxy/redis/PlayerTest.java b/src/main/java/net/krakatoa/proxy/redis/PlayerTest.java new file mode 100644 index 0000000..220b826 --- /dev/null +++ b/src/main/java/net/krakatoa/proxy/redis/PlayerTest.java @@ -0,0 +1,12 @@ +package net.krakatoa.proxy.redis; + +import lombok.Data; + +@Data +public class PlayerTest { + + private String name; + private int money; + private String car; + +} diff --git a/src/main/java/net/krakatoa/proxy/redis/RedisHashCommands.java b/src/main/java/net/krakatoa/proxy/redis/RedisHashCommands.java deleted file mode 100644 index 25fa389..0000000 --- a/src/main/java/net/krakatoa/proxy/redis/RedisHashCommands.java +++ /dev/null @@ -1,19 +0,0 @@ -package net.krakatoa.proxy.redis; - -import io.lettuce.core.dynamic.Commands; -import java.util.Map; - -public interface RedisHashCommands extends Commands { - - //Mono hdel(Key key, Key... fields); - - //Mono hset(Key key, Key field, Value value); - - Boolean hset(String key, String field, String value); - - Long hset(String key, String field, String... value); - - Long hset(String key, String field, Map map); - - //Mono hmset(Key key, Map map); -} diff --git a/src/main/java/net/krakatoa/proxy/redis/RedisKeyCommands.java b/src/main/java/net/krakatoa/proxy/redis/RedisKeyCommands.java deleted file mode 100644 index 634eb3b..0000000 --- a/src/main/java/net/krakatoa/proxy/redis/RedisKeyCommands.java +++ /dev/null @@ -1,17 +0,0 @@ -package net.krakatoa.proxy.redis; - -import io.lettuce.core.dynamic.Commands; -import io.lettuce.core.dynamic.annotation.Key; - -public interface RedisKeyCommands extends Commands { - - String get(String key); - - String set(String key, byte[] byteArray); - - String set(String key, String value); - - Long del(Key... keys); - - Long del(String key); -} diff --git a/src/main/java/net/krakatoa/proxy/redis/RedisManager.java b/src/main/java/net/krakatoa/proxy/redis/RedisManager.java index 6b8e565..e58b0d4 100644 --- a/src/main/java/net/krakatoa/proxy/redis/RedisManager.java +++ b/src/main/java/net/krakatoa/proxy/redis/RedisManager.java @@ -1,28 +1,29 @@ package net.krakatoa.proxy.redis; -import io.lettuce.core.RedisClient; -import io.lettuce.core.dynamic.RedisCommandFactory; import lombok.Data; +import org.redisson.Redisson; +import org.redisson.api.RedissonClient; +import org.redisson.config.Config; @Data public class RedisManager { private final String connectionUri; - private RedisClient client; + private Config config; + private RedissonClient redissonClient; + //private StatefulRedisConnection connection; //private RedisStringCommands commands; //private RedisKeyReactiveCommands keyReactiveCommands; - private RedisKeyCommands redisKeyCommands; - private RedisHashCommands redisHashCommands; public void connect() { - this.client = RedisClient.create(this.getConnectionUri()); - RedisCommandFactory factory = new RedisCommandFactory(client.connect()); - factory.setVerifyCommandMethods(false); - this.redisKeyCommands = factory.getCommands(RedisKeyCommands.class); - this.redisHashCommands = factory.getCommands(RedisHashCommands.class); + this.config = new Config(); + this.config.useSingleServer().setAddress(this.connectionUri); + + this.redissonClient = Redisson.create(this.config); + //this.connection = client.connect(); //this.commands = connection.sync(); //this.keyReactiveCommands = this.connection.reactive();