From fb3751616dd80c547c1de33f2fab1ac70b363a74 Mon Sep 17 00:00:00 2001 From: Tom Pantelis Date: Tue, 19 Apr 2016 01:09:39 -0400 Subject: [PATCH] Enable netty config modules to restart when blueprint container restarts Added the necessary service properties such that when the blueprint container is restarted on config change the associated config system Module instances are recreated/restarted. This for backwards compatibility for existing CSS modules that inject the netty CSS modules. Change-Id: Icb12968805d8760cb03d3eea1e8ceda5ec1de2f5 Signed-off-by: Tom Pantelis --- .../protocol/framework/AbstractDispatcher.java | 18 +++++------------- .../netty-config-api/src/main/yang/netty.yang | 4 ++++ .../blueprint/netty-threadgroup.xml | 16 ++++++++++++++-- .../org/opendaylight/blueprint/netty-timer.xml | 8 +++++++- 4 files changed, 30 insertions(+), 16 deletions(-) diff --git a/opendaylight/commons/protocol-framework/src/main/java/org/opendaylight/protocol/framework/AbstractDispatcher.java b/opendaylight/commons/protocol-framework/src/main/java/org/opendaylight/protocol/framework/AbstractDispatcher.java index 17663d982c..0aae75dedd 100644 --- a/opendaylight/commons/protocol-framework/src/main/java/org/opendaylight/protocol/framework/AbstractDispatcher.java +++ b/opendaylight/commons/protocol-framework/src/main/java/org/opendaylight/protocol/framework/AbstractDispatcher.java @@ -7,15 +7,7 @@ */ package org.opendaylight.protocol.framework; -import java.io.Closeable; -import java.net.InetSocketAddress; -import java.net.SocketAddress; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - import com.google.common.base.Preconditions; - import io.netty.bootstrap.Bootstrap; import io.netty.bootstrap.ServerBootstrap; import io.netty.buffer.PooledByteBufAllocator; @@ -34,6 +26,11 @@ import io.netty.util.concurrent.EventExecutor; import io.netty.util.concurrent.Future; import io.netty.util.concurrent.GlobalEventExecutor; import io.netty.util.concurrent.Promise; +import java.io.Closeable; +import java.net.InetSocketAddress; +import java.net.SocketAddress; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** * Dispatcher class for creating servers and clients. The idea is to first create servers and clients and the run the @@ -274,10 +271,5 @@ public abstract class AbstractDispatcher, L extends @Deprecated @Override public void close() { - try { - this.workerGroup.shutdownGracefully(); - } finally { - this.bossGroup.shutdownGracefully(); - } } } diff --git a/opendaylight/config/netty-config-api/src/main/yang/netty.yang b/opendaylight/config/netty-config-api/src/main/yang/netty.yang index e274b058dc..281b76c1b8 100644 --- a/opendaylight/config/netty-config-api/src/main/yang/netty.yang +++ b/opendaylight/config/netty-config-api/src/main/yang/netty.yang @@ -32,6 +32,7 @@ module netty { base "config:service-type"; config:java-class "io.netty.channel.EventLoopGroup"; + config:disable-osgi-service-registration; } identity netty-event-executor { @@ -40,6 +41,7 @@ module netty { base "config:service-type"; config:java-class "io.netty.util.concurrent.EventExecutor"; + config:disable-osgi-service-registration; } identity netty-timer { @@ -48,6 +50,7 @@ module netty { base "config:service-type"; config:java-class "io.netty.util.Timer"; + config:disable-osgi-service-registration; } identity channel-factory { @@ -56,5 +59,6 @@ module netty { base "config:service-type"; config:java-class "io.netty.bootstrap.ChannelFactory"; + config:disable-osgi-service-registration; } } diff --git a/opendaylight/config/netty-threadgroup-config/src/main/resources/org/opendaylight/blueprint/netty-threadgroup.xml b/opendaylight/config/netty-threadgroup-config/src/main/resources/org/opendaylight/blueprint/netty-threadgroup.xml index 527b04303a..bfb088f765 100644 --- a/opendaylight/config/netty-threadgroup-config/src/main/resources/org/opendaylight/blueprint/netty-threadgroup.xml +++ b/opendaylight/config/netty-threadgroup-config/src/main/resources/org/opendaylight/blueprint/netty-threadgroup.xml @@ -17,13 +17,25 @@ - + + + + + + + - + + + + + + + diff --git a/opendaylight/config/netty-timer-config/src/main/resources/org/opendaylight/blueprint/netty-timer.xml b/opendaylight/config/netty-timer-config/src/main/resources/org/opendaylight/blueprint/netty-timer.xml index 60822d504e..cd897be515 100644 --- a/opendaylight/config/netty-timer-config/src/main/resources/org/opendaylight/blueprint/netty-timer.xml +++ b/opendaylight/config/netty-timer-config/src/main/resources/org/opendaylight/blueprint/netty-timer.xml @@ -18,6 +18,12 @@ - + + + + + + + -- 2.36.6