TopologySessionListener is not AutoCloseable 45/100745/1
authorRobert Varga <robert.varga@pantheon.tech>
Thu, 21 Apr 2022 17:28:52 +0000 (19:28 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Sat, 23 Apr 2022 04:26:50 +0000 (06:26 +0200)
Using AutoCloseable hides internal callers. We also will need an
asynchronous shutdown facility, so let's just define a close() method
we can evolve.

JIRA: BGPCEP-1005
Change-Id: I95be847237ad38644e57bc6400bb38be64af2784
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit 4937b82f81630d9393ef2f169583f30d20037d4e)

pcep/topology/topology-provider/src/main/java/org/opendaylight/bgpcep/pcep/topology/provider/AbstractTopologySessionListener.java
pcep/topology/topology-provider/src/main/java/org/opendaylight/bgpcep/pcep/topology/provider/TopologySessionListener.java

index b2b9fe568d81c45a2988e0bc34a83326d7bfe476..c1eac689875bbac079955f2c6254eab1e06c6bdc 100644 (file)
@@ -371,6 +371,7 @@ public abstract class AbstractTopologySessionListener implements TopologySession
      */
     protected abstract boolean onMessage(MessageContext ctx, Message message);
 
+    // Non-final for mocking
     @Override
     public void close() {
         synchronized (serverSessionManager) {
index 8aa5855a65ce81a500bc698b1455c4de6b80eda0..c7d0272a8511008ede0c4bf0248ab41b05a0e4c1 100644 (file)
@@ -9,7 +9,7 @@ package org.opendaylight.bgpcep.pcep.topology.provider;
 
 import org.opendaylight.protocol.pcep.PCEPSessionListener;
 
-interface TopologySessionListener extends AutoCloseable, PCEPSessionListener, TopologySessionRPCs {
-    @Override
+interface TopologySessionListener extends PCEPSessionListener, TopologySessionRPCs {
+    // FIXME: this needs to provide a future which completes when everything is cleaned up
     void close();
 }
\ No newline at end of file