X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;ds=sidebyside;f=opendaylight%2Fconfig%2Fnetty-event-executor-config%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fconfig%2Fyang%2Fnetty%2Feventexecutor%2FGlobalEventExecutorModule.java;h=476b2029215f42cc1d45517cac1ca207986a5155;hb=828f1ee4c7726282fb41a43840b3d69078723992;hp=8751a80b8d163838b08e8b014abc5371be777978;hpb=f6b5466e99888936c69e12d732162e9ee4e0e490;p=controller.git diff --git a/opendaylight/config/netty-event-executor-config/src/main/java/org/opendaylight/controller/config/yang/netty/eventexecutor/GlobalEventExecutorModule.java b/opendaylight/config/netty-event-executor-config/src/main/java/org/opendaylight/controller/config/yang/netty/eventexecutor/GlobalEventExecutorModule.java index 8751a80b8d..476b202921 100644 --- a/opendaylight/config/netty-event-executor-config/src/main/java/org/opendaylight/controller/config/yang/netty/eventexecutor/GlobalEventExecutorModule.java +++ b/opendaylight/config/netty-event-executor-config/src/main/java/org/opendaylight/controller/config/yang/netty/eventexecutor/GlobalEventExecutorModule.java @@ -18,11 +18,17 @@ package org.opendaylight.controller.config.yang.netty.eventexecutor; import io.netty.util.concurrent.EventExecutor; -import io.netty.util.concurrent.GlobalEventExecutor; +import org.opendaylight.controller.config.api.osgi.WaitingServiceTracker; import org.opendaylight.controller.config.yang.netty.eventexecutor.AutoCloseableEventExecutor.CloseableEventExecutorMixin; +import org.osgi.framework.BundleContext; +/** + * @deprecated Replaced by blueprint wiring + */ +@Deprecated public final class GlobalEventExecutorModule extends org.opendaylight.controller.config.yang.netty.eventexecutor.AbstractGlobalEventExecutorModule { + private BundleContext bundleContext; public GlobalEventExecutorModule(org.opendaylight.controller.config.api.ModuleIdentifier identifier, org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) { @@ -41,11 +47,15 @@ public final class GlobalEventExecutorModule extends } @Override - public java.lang.AutoCloseable createInstance() { - EventExecutor eventExecutor = GlobalEventExecutor.INSTANCE; - return CloseableEventExecutorMixin.createCloseableProxy(eventExecutor); + public AutoCloseable createInstance() { + // The service is provided via blueprint so wait for and return it here for backwards compatibility. + final WaitingServiceTracker tracker = WaitingServiceTracker.create( + EventExecutor.class, bundleContext, "(type=global-event-executor)"); + EventExecutor eventExecutor = tracker.waitForService(WaitingServiceTracker.FIVE_MINUTES); + return CloseableEventExecutorMixin.forwardingEventExecutor(eventExecutor, tracker); } - - + public void setBundleContext(final BundleContext bundleContext) { + this.bundleContext = bundleContext; + } }