[ONOS-5607] Revise LISP ctrl impl class to track msgs and routers
Change-Id: I4a51a8ef9162e3feee543f40fa92a0435186d1c9
diff --git a/protocols/lisp/ctl/src/main/java/org/onosproject/lisp/ctl/impl/LispControllerBootstrap.java b/protocols/lisp/ctl/src/main/java/org/onosproject/lisp/ctl/impl/LispControllerBootstrap.java
index 29af596..449983a 100644
--- a/protocols/lisp/ctl/src/main/java/org/onosproject/lisp/ctl/impl/LispControllerBootstrap.java
+++ b/protocols/lisp/ctl/src/main/java/org/onosproject/lisp/ctl/impl/LispControllerBootstrap.java
@@ -48,6 +48,7 @@
private EventLoopGroup eventLoopGroup;
private Class<? extends AbstractChannel> channelClass;
+ private List<ChannelFuture> channelFutures = Lists.newArrayList();
/**
* Stitches all channel handlers into server bootstrap.
@@ -59,8 +60,6 @@
configBootstrapOptions(bootstrap);
- List<ChannelFuture> channelFutures = Lists.newArrayList();
-
lispPorts.forEach(p -> {
InetSocketAddress sa = new InetSocketAddress(p);
channelFutures.add(bootstrap.bind(sa));
@@ -152,6 +151,7 @@
try {
// try to shutdown all open event groups
eventLoopGroup.shutdownGracefully().sync();
+ closeChannels(channelFutures);
} catch (InterruptedException e) {
log.warn("Failed to stop LISP controller. Reasons: {}.", e.getMessage());
}