X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=binding%2Fmdsal-binding-dom-codec-osgi%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fmdsal%2Fbinding%2Fdom%2Fcodec%2Fosgi%2Fimpl%2FGlobalBindingDOMCodecServices.java;h=63ed199e9f02892395aed3b312e741a37754f84e;hb=d3c0035fc97dea4008850d58fd719c41af1265ca;hp=db2420c26093436cdb40dc7dc1f421b3408435ab;hpb=18cc77eca8b2440cb8c1f22db62c845c6fd7b9ae;p=mdsal.git diff --git a/binding/mdsal-binding-dom-codec-osgi/src/main/java/org/opendaylight/mdsal/binding/dom/codec/osgi/impl/GlobalBindingDOMCodecServices.java b/binding/mdsal-binding-dom-codec-osgi/src/main/java/org/opendaylight/mdsal/binding/dom/codec/osgi/impl/GlobalBindingDOMCodecServices.java index db2420c260..63ed199e9f 100644 --- a/binding/mdsal-binding-dom-codec-osgi/src/main/java/org/opendaylight/mdsal/binding/dom/codec/osgi/impl/GlobalBindingDOMCodecServices.java +++ b/binding/mdsal-binding-dom-codec-osgi/src/main/java/org/opendaylight/mdsal/binding/dom/codec/osgi/impl/GlobalBindingDOMCodecServices.java @@ -45,12 +45,31 @@ import org.slf4j.LoggerFactory; public final class GlobalBindingDOMCodecServices extends ForwardingBindingDOMCodecServices { private static final Logger LOG = LoggerFactory.getLogger(GlobalBindingDOMCodecServices.class); - @Reference(updated = "update") - volatile OSGiBindingDOMCodecServices osgi = null; - private BindingDOMCodecServices delegate; private UnsignedLong generation; + @Activate + public GlobalBindingDOMCodecServices(@Reference(updated = "update") final OSGiBindingDOMCodecServices services) { + updateDelegate(services); + LOG.info("Global Binding/DOM Codec activated with generation {}", generation); + } + + @Deactivate + void deactivate() { + delegate = null; + LOG.info("Global Binding/DOM Codec deactivated"); + } + + void update(final OSGiBindingDOMCodecServices services) { + updateDelegate(services); + LOG.info("Global Binding/DOM Codec updated to generation {}", generation); + } + + private void updateDelegate(final OSGiBindingDOMCodecServices services) { + generation = services.getGeneration(); + delegate = services.getService(); + } + @Override public BindingLazyContainerNode toLazyNormalizedNodeActionInput( final Class> action, final NodeIdentifier identifier, final RpcInput input) { @@ -67,26 +86,4 @@ public final class GlobalBindingDOMCodecServices extends ForwardingBindingDOMCod protected BindingDOMCodecServices delegate() { return verifyNotNull(delegate); } - - void update() { - updateDelegate(); - LOG.info("Global Binding/DOM Codec updated to generation {}", generation); - } - - @Activate - void activate() { - updateDelegate(); - LOG.info("Global Binding/DOM Codec activated with generation {}", generation); - } - - @Deactivate - void deactivate() { - delegate = null; - LOG.info("Global Binding/DOM Codec deactivated"); - } - - private void updateDelegate() { - generation = osgi.getGeneration(); - delegate = osgi.getService(); - } }