X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=bmp%2Fbmp-impl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fprotocol%2Fbmp%2Fimpl%2Fconfig%2FBmpDeployerImpl.java;fp=bmp%2Fbmp-impl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fprotocol%2Fbmp%2Fimpl%2Fconfig%2FBmpDeployerImpl.java;h=6225e275b48ed6e581889105d28e0ae9c9d369fe;hb=0e58a6008620d1ee29d2b1b041387f59c3ec9544;hp=acaffc64f24d85fb79b2beccc9fd6cfca9e4ec44;hpb=be720ad508ad7b630e250ff9c2b96a3ac6f1ad79;p=bgpcep.git diff --git a/bmp/bmp-impl/src/main/java/org/opendaylight/protocol/bmp/impl/config/BmpDeployerImpl.java b/bmp/bmp-impl/src/main/java/org/opendaylight/protocol/bmp/impl/config/BmpDeployerImpl.java index acaffc64f2..6225e275b4 100644 --- a/bmp/bmp-impl/src/main/java/org/opendaylight/protocol/bmp/impl/config/BmpDeployerImpl.java +++ b/bmp/bmp-impl/src/main/java/org/opendaylight/protocol/bmp/impl/config/BmpDeployerImpl.java @@ -17,6 +17,9 @@ import java.util.Collection; import java.util.HashMap; import java.util.Map; import java.util.concurrent.TimeUnit; +import javax.annotation.PreDestroy; +import javax.inject.Inject; +import javax.inject.Singleton; import org.checkerframework.checker.lock.qual.GuardedBy; import org.opendaylight.mdsal.binding.api.ClusteredDataTreeChangeListener; import org.opendaylight.mdsal.binding.api.DataBroker; @@ -49,10 +52,15 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdent import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; +import org.osgi.service.component.annotations.Activate; +import org.osgi.service.component.annotations.Component; +import org.osgi.service.component.annotations.Deactivate; import org.osgi.service.component.annotations.Reference; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +@Singleton +@Component(service = {}) public final class BmpDeployerImpl implements ClusteredDataTreeChangeListener, AutoCloseable { private static final Logger LOG = LoggerFactory.getLogger(BmpDeployerImpl.class); @@ -66,7 +74,6 @@ public final class BmpDeployerImpl implements ClusteredDataTreeChangeListener registration; + @Activate + @Inject public BmpDeployerImpl(@Reference final BmpDispatcher dispatcher, @Reference final DataBroker dataBroker, @Reference final DOMDataBroker domDataBroker, @Reference final RIBExtensionConsumerContext extensions, @Reference final BindingCodecTree codecTree, @Reference final ClusterSingletonServiceProvider singletonProvider) { this.dispatcher = requireNonNull(dispatcher); - this.dataBroker = requireNonNull(dataBroker); this.domDataBroker = requireNonNull(domDataBroker); this.extensions = requireNonNull(extensions); this.codecTree = requireNonNull(codecTree); this.singletonProvider = requireNonNull(singletonProvider); - } - public synchronized void init() { - final DOMDataTreeWriteTransaction wTx = this.domDataBroker.newWriteOnlyTransaction(); + final DOMDataTreeWriteTransaction wTx = domDataBroker.newWriteOnlyTransaction(); wTx.merge(LogicalDatastoreType.OPERATIONAL, BMP_MONITOR_YII, EMPTY_PARENT_NODE); wTx.commit().addCallback(new FutureCallback() { @Override @@ -103,7 +109,7 @@ public final class BmpDeployerImpl implements ClusteredDataTreeChangeListener