diff --git a/plugins/networktables/src/main/java/edu/wpi/first/shuffleboard/plugin/networktables/sources/CompositeNetworkTableSource.java b/plugins/networktables/src/main/java/edu/wpi/first/shuffleboard/plugin/networktables/sources/CompositeNetworkTableSource.java index 6544d9361..1276908d0 100644 --- a/plugins/networktables/src/main/java/edu/wpi/first/shuffleboard/plugin/networktables/sources/CompositeNetworkTableSource.java +++ b/plugins/networktables/src/main/java/edu/wpi/first/shuffleboard/plugin/networktables/sources/CompositeNetworkTableSource.java @@ -2,7 +2,6 @@ import edu.wpi.first.shuffleboard.api.data.ComplexData; import edu.wpi.first.shuffleboard.api.data.ComplexDataType; -import edu.wpi.first.shuffleboard.api.data.DataTypes; import edu.wpi.first.shuffleboard.api.data.IncompleteDataException; import edu.wpi.first.shuffleboard.api.sources.Sources; import edu.wpi.first.shuffleboard.plugin.networktables.util.NetworkTableUtils; diff --git a/plugins/networktables/src/main/java/edu/wpi/first/shuffleboard/plugin/networktables/sources/NetworkTableSourceType.java b/plugins/networktables/src/main/java/edu/wpi/first/shuffleboard/plugin/networktables/sources/NetworkTableSourceType.java index cf8ad4b0f..6829c0655 100644 --- a/plugins/networktables/src/main/java/edu/wpi/first/shuffleboard/plugin/networktables/sources/NetworkTableSourceType.java +++ b/plugins/networktables/src/main/java/edu/wpi/first/shuffleboard/plugin/networktables/sources/NetworkTableSourceType.java @@ -25,7 +25,7 @@ import javafx.collections.ObservableList; import javafx.collections.ObservableMap; -public final class NetworkTableSourceType extends SourceType { +public final class NetworkTableSourceType extends SourceType implements AutoCloseable { private static NetworkTableSourceType instance; @@ -33,6 +33,7 @@ public final class NetworkTableSourceType extends SourceType { private final ObservableMap availableSources = FXCollections.observableHashMap(); private final NetworkTablesPlugin plugin; private final MultiSubscriber subscriber; + private final int listener; @SuppressWarnings("JavadocMethod") public NetworkTableSourceType(NetworkTablesPlugin plugin) { @@ -77,6 +78,12 @@ public NetworkTableSourceType(NetworkTablesPlugin plugin) { }); } + @Override + public void close() { + subscriber.close(); + NetworkTableInstance.getDefault().removeListener(listener); + } + private void setConnectionStatus(String serverId, boolean connected) { Platform.runLater(() -> { String host;