From 6dae46fa18d67b5f5257f6ae280120203f4ab42e Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Thu, 3 Nov 2022 11:04:34 +0100 Subject: [PATCH] Use constructor injection in OSGiClusterAdmin Remove @Beta and inject services directly into RPC service. Change-Id: I6d836c84099f17945d0e1e6af8a38e8dbd03f123 Signed-off-by: Robert Varga --- .../datastore/admin/OSGiClusterAdmin.java | 27 +++++++------------ 1 file changed, 10 insertions(+), 17 deletions(-) diff --git a/opendaylight/md-sal/sal-cluster-admin-impl/src/main/java/org/opendaylight/controller/cluster/datastore/admin/OSGiClusterAdmin.java b/opendaylight/md-sal/sal-cluster-admin-impl/src/main/java/org/opendaylight/controller/cluster/datastore/admin/OSGiClusterAdmin.java index 82a669e166..c0218244f1 100644 --- a/opendaylight/md-sal/sal-cluster-admin-impl/src/main/java/org/opendaylight/controller/cluster/datastore/admin/OSGiClusterAdmin.java +++ b/opendaylight/md-sal/sal-cluster-admin-impl/src/main/java/org/opendaylight/controller/cluster/datastore/admin/OSGiClusterAdmin.java @@ -7,13 +7,12 @@ */ package org.opendaylight.controller.cluster.datastore.admin; -import com.google.common.annotations.Beta; import org.opendaylight.controller.cluster.datastore.DistributedDataStoreInterface; import org.opendaylight.controller.eos.akka.DataCenterControl; import org.opendaylight.mdsal.binding.api.RpcProviderService; import org.opendaylight.mdsal.binding.dom.codec.api.BindingNormalizedNodeSerializer; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.cluster.admin.rev151013.ClusterAdminService; -import org.opendaylight.yangtools.concepts.ObjectRegistration; +import org.opendaylight.yangtools.concepts.Registration; import org.osgi.service.component.annotations.Activate; import org.osgi.service.component.annotations.Component; import org.osgi.service.component.annotations.Deactivate; @@ -21,26 +20,20 @@ import org.osgi.service.component.annotations.Reference; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -@Beta -@Component(immediate = true) +@Component(service = { }) public final class OSGiClusterAdmin { private static final Logger LOG = LoggerFactory.getLogger(OSGiClusterAdmin.class); - @Reference(target = "(type=distributed-config)") - DistributedDataStoreInterface configDatastore = null; - @Reference(target = "(type=distributed-operational)") - DistributedDataStoreInterface operDatastore = null; - @Reference - BindingNormalizedNodeSerializer serializer = null; - @Reference - RpcProviderService rpcProviderService = null; - @Reference - DataCenterControl dataCenterControl = null; - - private ObjectRegistration reg; + private final Registration reg; @Activate - void activate() { + public OSGiClusterAdmin( + @Reference(target = "(type=distributed-config)") final DistributedDataStoreInterface configDatastore, + @Reference(target = "(type=distributed-operational)") final DistributedDataStoreInterface operDatastore, + @Reference final BindingNormalizedNodeSerializer serializer, + @Reference final RpcProviderService rpcProviderService, + @Reference final DataCenterControl dataCenterControls, + @Reference final DataCenterControl dataCenterControl) { reg = rpcProviderService.registerRpcImplementation(ClusterAdminService.class, new ClusterAdminRpcService(configDatastore, operDatastore, serializer, dataCenterControl)); LOG.info("Cluster Admin services started"); -- 2.36.6