X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-binding-api%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Fbinding%2Fapi%2FAbstractBrokerAwareActivator.java;h=a489e63410125ed0486c86626af9871bf19a03f8;hp=6047f058b7ab667c6383b3b6431844f12b125de1;hb=fdebf2737d87e8be6e29b7ae42d5c4812c95fa8d;hpb=1ee71ae58a03de1c1f8fd8c789e7921508ba9f59 diff --git a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/AbstractBrokerAwareActivator.java b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/AbstractBrokerAwareActivator.java index 6047f058b7..a489e63410 100644 --- a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/AbstractBrokerAwareActivator.java +++ b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/AbstractBrokerAwareActivator.java @@ -27,26 +27,20 @@ public abstract class AbstractBrokerAwareActivator implements BundleActivator { @Override public BindingAwareBroker addingService(ServiceReference reference) { broker = context.getService(reference); - mdActivationPool.execute(new Runnable() { - - @Override - public void run() { - onBrokerAvailable(broker, context);; - } - }); + mdActivationPool.execute(() -> onBrokerAvailable(broker, context)); return broker; } @Override public void modifiedService(ServiceReference reference, BindingAwareBroker service) { - // TODO Auto-generated method stub - + removedService(reference, service); + addingService(reference); } @Override public void removedService(ServiceReference reference, BindingAwareBroker service) { - // TODO Auto-generated method stub - + broker = context.getService(reference); + mdActivationPool.execute(() -> onBrokerRemoved(broker, context)); } }; @@ -72,7 +66,7 @@ public abstract class AbstractBrokerAwareActivator implements BundleActivator { /** * Called when this bundle is started (before - * {@link #onSessionInitiated(ProviderContext)} so the Framework can perform + * {@link BindingAwareProvider#onSessionInitiated(ProviderContext)} so the Framework can perform * the bundle-specific activities necessary to start this bundle. This * method can be used to register services or to allocate any resources that * this bundle needs. @@ -82,7 +76,7 @@ public abstract class AbstractBrokerAwareActivator implements BundleActivator { * * @param context * The execution context of the bundle being started. - * @throws Exception + * @throws RuntimeException * If this method throws an exception, this bundle is marked as * stopped and the Framework will remove this bundle's * listeners, unregister all services registered by this bundle, @@ -104,7 +98,7 @@ public abstract class AbstractBrokerAwareActivator implements BundleActivator { * This method must complete and return to its caller in a timely manner. * * @param context The execution context of the bundle being stopped. - * @throws Exception If this method throws an exception, the bundle is still + * @throws RuntimeException If this method throws an exception, the bundle is still * marked as stopped, and the Framework will remove the bundle's * listeners, unregister all services registered by the bundle, and * release all services used by the bundle. @@ -117,6 +111,6 @@ public abstract class AbstractBrokerAwareActivator implements BundleActivator { protected abstract void onBrokerAvailable(BindingAwareBroker broker, BundleContext context); protected void onBrokerRemoved(BindingAwareBroker broker, BundleContext context) { - + stopImpl(context); } }