BlueMapAPIConnector.shutdown()'s unregisterListener calls likely no-op
src/main/java/com/tpwalke2/bluemapsignmarkers/core/bluemap/BlueMapAPIConnector.java:41-44
public void shutdown() {
BlueMapAPI.unregisterListener(this::onEnable);
BlueMapAPI.unregisterListener(this::onDisable);
}
this::onEnable evaluated here creates a new method-reference object, distinct by identity/default equals
from the this::onEnable passed to BlueMapAPI.onEnable(...) in the constructor (line 37). Unless
BlueMapAPI.unregisterListener does something other than identity/equals-based list removal, this fails to
detach the connector from BlueMap's callbacks — a "shut down" connector keeps reacting to future enable/disable
events. Caveat: confirming this needs the BlueMap API's own listener-registration source, which wasn't in the
review's file set — flagged High rather than Critical for that reason.
BlueMapAPIConnector.shutdown()'sunregisterListenercalls likely no-opsrc/main/java/com/tpwalke2/bluemapsignmarkers/core/bluemap/BlueMapAPIConnector.java:41-44this::onEnableevaluated here creates a new method-reference object, distinct by identity/defaultequalsfrom the
this::onEnablepassed toBlueMapAPI.onEnable(...)in the constructor (line 37). UnlessBlueMapAPI.unregisterListenerdoes something other than identity/equals-based list removal, this fails todetach the connector from BlueMap's callbacks — a "shut down" connector keeps reacting to future enable/disable
events. Caveat: confirming this needs the BlueMap API's own listener-registration source, which wasn't in the
review's file set — flagged High rather than Critical for that reason.