From: Robert Varga Date: Wed, 7 Feb 2024 13:48:59 +0000 (+0100) Subject: Clean up ForwardingRulesManager interface X-Git-Tag: release/calcium~46 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F85%2F110185%2F5;p=openflowplugin.git Clean up ForwardingRulesManager interface start()/close() should not be exposed from the interface, as they are lifecycle methods of the implementation. JIRA: OPNFLWPLUG-1112 Change-Id: I5609dba0d8777eed2ddc99f18fd5a12a4d318c58 Signed-off-by: Robert Varga --- diff --git a/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/ForwardingRulesManager.java b/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/ForwardingRulesManager.java index 8f748cf72c..abb2697b82 100644 --- a/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/ForwardingRulesManager.java +++ b/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/ForwardingRulesManager.java @@ -32,10 +32,7 @@ import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; * * @author Vaclav Demcak */ -public interface ForwardingRulesManager extends ConfigurationListener, AutoCloseable { - - void start(); - +public interface ForwardingRulesManager extends ConfigurationListener { /** * Method returns information : "is Node with send InstanceIdentifier * connected"?. diff --git a/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/impl/ForwardingRulesManagerImpl.java b/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/impl/ForwardingRulesManagerImpl.java index 9b6094c911..b4e7bd4886 100644 --- a/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/impl/ForwardingRulesManagerImpl.java +++ b/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/impl/ForwardingRulesManagerImpl.java @@ -10,12 +10,10 @@ package org.opendaylight.openflowplugin.applications.frm.impl; import static java.util.Objects.requireNonNull; import com.google.common.annotations.VisibleForTesting; -import com.google.common.base.Preconditions; import com.google.common.util.concurrent.ListenableFuture; import java.util.Optional; import java.util.concurrent.ExecutionException; import java.util.concurrent.atomic.AtomicLong; -import javax.annotation.PostConstruct; import javax.annotation.PreDestroy; import javax.inject.Inject; import javax.inject.Singleton; @@ -68,45 +66,41 @@ import org.slf4j.LoggerFactory; * */ @Singleton -public final class ForwardingRulesManagerImpl implements ForwardingRulesManager { +public final class ForwardingRulesManagerImpl implements ForwardingRulesManager, AutoCloseable { private static final Logger LOG = LoggerFactory.getLogger(ForwardingRulesManagerImpl.class); private static final int FRM_RECONCILIATION_PRIORITY = Integer.getInteger("frm.reconciliation.priority", 1); private static final String SERVICE_NAME = "FRM"; + private final FlowNodeConnectorInventoryTranslatorImpl flowNodeConnectorInventoryTranslatorImpl; + private final DevicesGroupRegistry devicesGroupRegistry = new DevicesGroupRegistry(); + private final NodeConfigurator nodeConfigurator = new NodeConfiguratorImpl(); + private final ClusterSingletonServiceProvider clusterSingletonServiceProvider; + private final OpenflowServiceRecoveryHandler openflowServiceRecoveryHandler; + private final ArbitratorReconcileService arbitratorReconciliationManager; + private final BundleMessagesCommiter bundleGroupListener; + private final BundleMessagesCommiter bundleFlowListener; + private final ServiceRecoveryRegistry serviceRecoveryRegistry; private final AtomicLong txNum = new AtomicLong(); private final DataBroker dataService; private final SalFlowService salFlowService; private final SalGroupService salGroupService; private final SalMeterService salMeterService; private final SalTableService salTableService; - private final ClusterSingletonServiceProvider clusterSingletonServiceProvider; private final SalBundleService salBundleService; + private final AutoCloseable configurationServiceRegistration; - private final MastershipChangeServiceManager mastershipChangeServiceManager; - private final RpcProviderService rpcProviderService; private ForwardingRulesCommiter flowListener; private ForwardingRulesCommiter groupListener; private ForwardingRulesCommiter meterListener; private ForwardingRulesCommiter tableListener; - private BundleMessagesCommiter bundleFlowListener; - private BundleMessagesCommiter bundleGroupListener; private FlowNodeReconciliation nodeListener; private NotificationRegistration reconciliationNotificationRegistration; - private FlowNodeConnectorInventoryTranslatorImpl flowNodeConnectorInventoryTranslatorImpl; private DeviceMastershipManager deviceMastershipManager; - private final ReconciliationManager reconciliationManager; - private DevicesGroupRegistry devicesGroupRegistry; - private NodeConfigurator nodeConfigurator; - private final ArbitratorReconcileService arbitratorReconciliationManager; private boolean disableReconciliation; private boolean staleMarkingEnabled; private int reconciliationRetryCount; private boolean isBundleBasedReconciliationEnabled; - private final OpenflowServiceRecoveryHandler openflowServiceRecoveryHandler; - private final ServiceRecoveryRegistry serviceRecoveryRegistry; - private final FlowGroupCacheManager flowGroupCacheManager; - private final ListenerRegistrationHelper registrationHelper; @Inject public ForwardingRulesManagerImpl(final DataBroker dataBroker, @@ -126,16 +120,8 @@ public final class ForwardingRulesManagerImpl implements ForwardingRulesManager reconciliationRetryCount = config.getReconciliationRetryCount().toJava(); isBundleBasedReconciliationEnabled = config.getBundleBasedReconciliationEnabled(); configurationServiceRegistration = configurationService.registerListener(this); - dataService = requireNonNull(dataBroker, "DataBroker can not be null!"); - this.registrationHelper = requireNonNull(registrationHelper, "RegistrationHelper cannot be null"); - clusterSingletonServiceProvider = requireNonNull(clusterSingletonService, - "ClusterSingletonService provider can not be null"); - this.reconciliationManager = reconciliationManager; - this.rpcProviderService = rpcProviderService; - this.mastershipChangeServiceManager = mastershipChangeServiceManager; - this.flowGroupCacheManager = flowGroupCacheManager; - - Preconditions.checkArgument(rpcRegistry != null, "RpcProviderRegistry can not be null !"); + dataService = requireNonNull(dataBroker); + clusterSingletonServiceProvider = requireNonNull(clusterSingletonService); salFlowService = requireNonNull(rpcRegistry.getRpcService(SalFlowService.class), "RPC SalFlowService not found."); @@ -154,13 +140,7 @@ public final class ForwardingRulesManagerImpl implements ForwardingRulesManager arbitratorReconciliationManager = requireNonNull(rpcRegistry.getRpcService(ArbitratorReconcileService.class), "ArbitratorReconciliationManager can not be null!"); - } - @Override - @PostConstruct - public void start() { - nodeConfigurator = new NodeConfiguratorImpl(); - devicesGroupRegistry = new DevicesGroupRegistry(); nodeListener = new FlowNodeReconciliationImpl(this, dataService, SERVICE_NAME, FRM_RECONCILIATION_PRIORITY, ResultState.DONOTHING, flowGroupCacheManager); if (isReconciliationDisabled()) { diff --git a/applications/forwardingrules-manager/src/main/resources/OSGI-INF/blueprint/forwardingrules-manager.xml b/applications/forwardingrules-manager/src/main/resources/OSGI-INF/blueprint/forwardingrules-manager.xml index e0b9ec028b..46e483c582 100644 --- a/applications/forwardingrules-manager/src/main/resources/OSGI-INF/blueprint/forwardingrules-manager.xml +++ b/applications/forwardingrules-manager/src/main/resources/OSGI-INF/blueprint/forwardingrules-manager.xml @@ -11,7 +11,6 @@ diff --git a/applications/forwardingrules-manager/src/test/java/test/mock/util/AbstractFRMTest.java b/applications/forwardingrules-manager/src/test/java/test/mock/util/AbstractFRMTest.java index d556f7f6b7..415463d87a 100644 --- a/applications/forwardingrules-manager/src/test/java/test/mock/util/AbstractFRMTest.java +++ b/applications/forwardingrules-manager/src/test/java/test/mock/util/AbstractFRMTest.java @@ -88,7 +88,6 @@ public abstract class AbstractFRMTest extends AbstractDataBrokerTest { rpcProviderService, getConfig(), mastershipChangeServiceManager, clusterSingletonService, getConfigurationService(), reconciliationManager, openflowServiceRecoveryHandler, serviceRecoveryRegistry, flowGroupCacheManager, new ListenerRegistrationHelperImpl(dataBroker)); - forwardingRulesManager.start(); } protected void setDeviceMastership(final NodeId nodeId) {