diff --git a/src/main/java/earth/krakatao/protocol/KraSocketClientProtocol.java b/src/main/java/earth/krakatao/protocol/KraSocketClientProtocol.java index d47405d..525011c 100644 --- a/src/main/java/earth/krakatao/protocol/KraSocketClientProtocol.java +++ b/src/main/java/earth/krakatao/protocol/KraSocketClientProtocol.java @@ -5,6 +5,7 @@ import earth.krakatao.KraSocketClient; import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.HashMap; +import java.util.Iterator; import java.util.function.Consumer; import lombok.Getter; @@ -131,7 +132,17 @@ public class KraSocketClientProtocol { } public void removeData(int cmdID) { - this.cmdIDs.remove(cmdID); + Iterator iterator = this.cmdIDs.iterator(); + + KraSocketClient.getLogger().info("before: " + this.cmdIDs); + + while (iterator.hasNext()) { + if (iterator.next() == cmdID) { + iterator.remove(); + } + } + KraSocketClient.getLogger().info("after: " + this.cmdIDs); + this.consumerHashMap.remove(cmdID); } }