diff --git a/src/main/java/earth/krakatao/KraSocketClient.java b/src/main/java/earth/krakatao/KraSocketClient.java index ad2478a..b526606 100644 --- a/src/main/java/earth/krakatao/KraSocketClient.java +++ b/src/main/java/earth/krakatao/KraSocketClient.java @@ -3,7 +3,6 @@ package earth.krakatao; import earth.krakatao.events.KraSocketClientEventInitiater; import earth.krakatao.events.KraSocketClientEventInterface; import earth.krakatao.protocol.KraSocketClientProtocol; -import earth.krakatao.protocol.KraSocketClientProtocolMessage; import java.net.URI; import java.net.URISyntaxException; import java.util.logging.Logger; diff --git a/src/main/java/earth/krakatao/protocol/KraSocketClientProtocol.java b/src/main/java/earth/krakatao/protocol/KraSocketClientProtocol.java index da0e253..83a07ee 100644 --- a/src/main/java/earth/krakatao/protocol/KraSocketClientProtocol.java +++ b/src/main/java/earth/krakatao/protocol/KraSocketClientProtocol.java @@ -18,19 +18,20 @@ public class KraSocketClientProtocol { @Getter HashMap> consumerHashMap = new HashMap<>(); - public int getCmdID() { - if (cmdIDs.isEmpty()) { - cmdIDs.add(10); - return 10; + private int currentCmdIDIndex = 10; + + public int generateCmdID() { + // TODO: check max int value 2^32 + if (this.currentCmdIDIndex < 10 || this.currentCmdIDIndex > 15000) { + this.currentCmdIDIndex = 10; + return this.currentCmdIDIndex; } - int cmdID = cmdIDs.get(cmdIDs.size() - 1) + 1; + this.currentCmdIDIndex++; - cmdIDs.add(cmdID); + KraSocketClient.getLogger().info("currentCmdIDIndex:" + currentCmdIDIndex); - // TODO: check max int value 2^32 - - return cmdID; + return this.currentCmdIDIndex; } public byte[] EncodeMessage(KraSocketClientProtocolMessage kraProtocolMessage) {