From e5018dc352fc918dbd8b867d65782c15c9270313 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Fri, 9 Feb 2024 03:49:57 +0100 Subject: [PATCH 1/2] Refactor reconciliation wiring Current wiring is a bit buggy in that it confuses local (e.g. OSGi SR) and global (e.g. RPC) access and uses the latter for OSGi service injection. Remove the confusion by removing the OSGi SR registration, and instead: - expose the interface for ForwardingRulesManager - move the RPC implementation to its sole registrant, where it is a simple wrapper around We have only a single RPC to register, which is now wired through OSGi. // FIXME: finish this up JIRA: OPNFLWPLUG-1112 JIRA: OPNFLWPLUG-1125 Change-Id: I1fa7cb5a94380a8761aba843f8caadaf108fd7dc Signed-off-by: Robert Varga --- .../frm/FlowNodeReconciliation.java | 1 + .../frm/ForwardingRulesManager.java | 8 ++ .../frm/impl/DeviceMastership.java | 17 ++-- .../frm/impl/DeviceMastershipManager.java | 65 ++++++++++--- .../frm/impl/FlowNodeReconciliationImpl.java | 1 - .../frm/impl/ForwardingRulesManagerImpl.java | 24 ++--- .../impl/FrmReconciliationServiceImpl.java | 94 ------------------- .../blueprint/forwardingrules-manager.xml | 7 -- .../frm/impl/DeviceMastershipManagerTest.java | 7 +- .../ReconciliationServiceImpl.java | 43 ++++----- .../OSGI-INF/blueprint/southbound-cli.xml | 9 +- 11 files changed, 104 insertions(+), 172 deletions(-) delete mode 100644 applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/impl/FrmReconciliationServiceImpl.java diff --git a/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/FlowNodeReconciliation.java b/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/FlowNodeReconciliation.java index 92d4c7895..7a0fbc249 100644 --- a/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/FlowNodeReconciliation.java +++ b/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/FlowNodeReconciliation.java @@ -22,6 +22,7 @@ import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; * @author Vaclav Demcak */ public interface FlowNodeReconciliation extends ReconciliationNotificationListener, AutoCloseable { + ListenableFuture reconcileConfiguration(InstanceIdentifier connectedNode); void flowNodeDisconnected(InstanceIdentifier disconnectedNode); 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 abb2697b8..f63d3440e 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 @@ -7,6 +7,7 @@ */ package org.opendaylight.openflowplugin.applications.frm; +import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.mdsal.binding.api.ReadTransaction; import org.opendaylight.openflowplugin.api.openflow.configuration.ConfigurationListener; import org.opendaylight.openflowplugin.applications.frm.impl.DevicesGroupRegistry; @@ -199,6 +200,13 @@ public interface ForwardingRulesManager extends ConfigurationListener { */ NodeConfigurator getNodeConfigurator(); + /** + * Return the {@link FlowNodeReconciliation} associated with this manager. + * + * @return the FlowNodeReconciliation + */ + @NonNull FlowNodeReconciliation getFlowNodeReconciliation(); + /** * Method for register RecoverableListener. * diff --git a/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/impl/DeviceMastership.java b/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/impl/DeviceMastership.java index 4f3a52674..6aa463b3a 100644 --- a/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/impl/DeviceMastership.java +++ b/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/impl/DeviceMastership.java @@ -11,7 +11,6 @@ import com.google.common.collect.ImmutableSet; import com.google.common.util.concurrent.Futures; import com.google.common.util.concurrent.ListenableFuture; import java.util.concurrent.atomic.AtomicBoolean; -import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.mdsal.binding.api.RpcProviderService; import org.opendaylight.mdsal.singleton.common.api.ClusterSingletonService; import org.opendaylight.mdsal.singleton.common.api.ServiceGroupIdentifier; @@ -20,8 +19,8 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId; import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.Nodes; import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node; import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeKey; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.openflowplugin.app.frm.reconciliation.service.rev180227.FrmReconciliationService; -import org.opendaylight.yangtools.concepts.ObjectRegistration; +import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.openflowplugin.app.frm.reconciliation.service.rev180227.ReconcileNode; +import org.opendaylight.yangtools.concepts.Registration; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; import org.opendaylight.yangtools.yang.binding.KeyedInstanceIdentifier; import org.slf4j.Logger; @@ -39,11 +38,11 @@ public class DeviceMastership implements ClusterSingletonService, AutoCloseable private final InstanceIdentifier fcnIID; private final KeyedInstanceIdentifier path; - private ObjectRegistration<@NonNull FrmReconciliationService> reg; + private Registration reg; public DeviceMastership(final NodeId nodeId) { this.nodeId = nodeId; - this.identifier = ServiceGroupIdentifier.create(nodeId.getValue()); + identifier = ServiceGroupIdentifier.create(nodeId.getValue()); fcnIID = InstanceIdentifier.create(Nodes.class).child(Node.class, new NodeKey(nodeId)) .augmentation(FlowCapableNode.class); path = InstanceIdentifier.create(Nodes.class).child(Node.class, new NodeKey(nodeId)); @@ -83,18 +82,16 @@ public class DeviceMastership implements ClusterSingletonService, AutoCloseable deviceMastered.set(true); } - public void registerReconciliationRpc(final RpcProviderService rpcProviderService, - final FrmReconciliationService reconcliationService) { + public void registerReconcileNode(final RpcProviderService rpcProviderService, final ReconcileNode reconcileNode) { if (reg == null) { LOG.debug("The path is registered : {}", path); - reg = rpcProviderService.registerRpcImplementation(FrmReconciliationService.class, reconcliationService, - ImmutableSet.of(path)); + reg = rpcProviderService.registerRpcImplementation(reconcileNode, ImmutableSet.of(path)); } else { LOG.debug("The path is already registered : {}", path); } } - public void deregisterReconciliationRpc() { + public void deregisterReconcileNode() { if (reg != null) { reg.close(); reg = null; diff --git a/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/impl/DeviceMastershipManager.java b/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/impl/DeviceMastershipManager.java index ee063c52c..329904333 100644 --- a/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/impl/DeviceMastershipManager.java +++ b/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/impl/DeviceMastershipManager.java @@ -9,6 +9,11 @@ package org.opendaylight.openflowplugin.applications.frm.impl; import com.google.common.annotations.VisibleForTesting; import com.google.common.collect.Iterables; +import com.google.common.util.concurrent.FutureCallback; +import com.google.common.util.concurrent.Futures; +import com.google.common.util.concurrent.ListenableFuture; +import com.google.common.util.concurrent.MoreExecutors; +import com.google.common.util.concurrent.SettableFuture; import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.util.Collection; import java.util.Set; @@ -23,7 +28,6 @@ import org.opendaylight.mdsal.binding.api.DataTreeIdentifier; import org.opendaylight.mdsal.binding.api.DataTreeModification; import org.opendaylight.mdsal.binding.api.RpcProviderService; import org.opendaylight.mdsal.common.api.LogicalDatastoreType; -import org.opendaylight.mdsal.singleton.common.api.ClusterSingletonServiceProvider; import org.opendaylight.openflowplugin.api.openflow.device.DeviceInfo; import org.opendaylight.openflowplugin.api.openflow.mastership.MastershipChangeRegistration; import org.opendaylight.openflowplugin.api.openflow.mastership.MastershipChangeService; @@ -33,10 +37,16 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.Fl import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId; import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.Nodes; import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node; +import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeBuilder; import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeKey; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.openflowplugin.app.frm.reconciliation.service.rev180227.FrmReconciliationService; -import org.opendaylight.yangtools.concepts.ListenerRegistration; +import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.openflowplugin.app.frm.reconciliation.service.rev180227.ReconcileNodeInput; +import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.openflowplugin.app.frm.reconciliation.service.rev180227.ReconcileNodeOutput; +import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.openflowplugin.app.frm.reconciliation.service.rev180227.ReconcileNodeOutputBuilder; +import org.opendaylight.yangtools.concepts.Registration; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; +import org.opendaylight.yangtools.yang.common.ErrorType; +import org.opendaylight.yangtools.yang.common.RpcResult; +import org.opendaylight.yangtools.yang.common.RpcResultBuilder; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -49,28 +59,22 @@ public class DeviceMastershipManager implements ClusteredDataTreeChangeListener< private static final InstanceIdentifier II_TO_FLOW_CAPABLE_NODE = InstanceIdentifier .builder(Nodes.class).child(Node.class).augmentation(FlowCapableNode.class).build(); - private final ClusterSingletonServiceProvider clusterSingletonService; - private final FlowNodeReconciliation reconcliationAgent; private final ConcurrentHashMap deviceMasterships = new ConcurrentHashMap<>(); private final Set> activeNodes = ConcurrentHashMap.newKeySet(); private final ReentrantLock lock = new ReentrantLock(); + private final FlowNodeReconciliation reconcliationAgent; private final RpcProviderService rpcProviderService; - private final FrmReconciliationService reconcliationService; - private ListenerRegistration listenerRegistration; + private Registration listenerRegistration; private MastershipChangeRegistration mastershipChangeServiceRegistration; @SuppressFBWarnings(value = "MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR", justification = "Non-final for mocking") - public DeviceMastershipManager(final ClusterSingletonServiceProvider clusterSingletonService, - final FlowNodeReconciliation reconcliationAgent, + public DeviceMastershipManager(final FlowNodeReconciliation reconcliationAgent, final DataBroker dataBroker, final MastershipChangeServiceManager mastershipChangeServiceManager, - final RpcProviderService rpcProviderService, - final FrmReconciliationService reconciliationService) { - this.clusterSingletonService = clusterSingletonService; + final RpcProviderService rpcProviderService) { this.reconcliationAgent = reconcliationAgent; this.rpcProviderService = rpcProviderService; - reconcliationService = reconciliationService; listenerRegistration = dataBroker.registerDataTreeChangeListener( DataTreeIdentifier.create(LogicalDatastoreType.OPERATIONAL, InstanceIdentifier.create(Nodes.class).child(Node.class).augmentation(FlowCapableNode.class)), this); @@ -193,14 +197,45 @@ public class DeviceMastershipManager implements ClusteredDataTreeChangeListener< final var membership = deviceMasterships.computeIfAbsent(deviceInfo.getNodeId(), device -> new DeviceMastership(deviceInfo.getNodeId())); membership.reconcile(); - membership.registerReconciliationRpc(rpcProviderService, reconcliationService); + membership.registerReconcileNode(rpcProviderService, this::reconcileNode); + } + + private ListenableFuture> reconcileNode(final ReconcileNodeInput input) { + final var nodeId = input.requireNodeId(); + LOG.debug("Triggering reconciliation for node: {}", nodeId); + + final var nodeDpn = new NodeBuilder().setId(new NodeId("openflow:" + nodeId)).build(); + final var connectedNode = InstanceIdentifier.builder(Nodes.class) + .child(Node.class, nodeDpn.key()).augmentation(FlowCapableNode.class) + .build(); + final var rpcResult = SettableFuture.>create(); + Futures.addCallback(reconcliationAgent.reconcileConfiguration(connectedNode), new FutureCallback<>() { + @Override + public void onSuccess(final Boolean result) { + rpcResult.set(result + ? RpcResultBuilder.success(new ReconcileNodeOutputBuilder().setResult(result).build()).build() + : RpcResultBuilder.failed() + .withError(ErrorType.APPLICATION, "Error while triggering reconciliation") + .build()); + } + + @Override + public void onFailure(final Throwable error) { + LOG.error("initReconciliation failed", error); + rpcResult.set(RpcResultBuilder.failed() + .withError(ErrorType.RPC, "Error while calling RPC").build()); + } + }, MoreExecutors.directExecutor()); + + LOG.debug("Completing reconciliation for node: {}", nodeId); + return rpcResult; } @Override public void onLoseOwnership(@NonNull final DeviceInfo deviceInfo) { final var mastership = deviceMasterships.remove(deviceInfo.getNodeId()); if (mastership != null) { - mastership.deregisterReconciliationRpc(); + mastership.deregisterReconcileNode(); mastership.close(); LOG.debug("Unregistered deviceMastership for device : {}", deviceInfo.getNodeId()); } diff --git a/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/impl/FlowNodeReconciliationImpl.java b/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/impl/FlowNodeReconciliationImpl.java index ded654f3e..300072ccf 100644 --- a/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/impl/FlowNodeReconciliationImpl.java +++ b/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/impl/FlowNodeReconciliationImpl.java @@ -108,7 +108,6 @@ import org.slf4j.LoggerFactory; * @author Vaclav Demcak */ public class FlowNodeReconciliationImpl implements FlowNodeReconciliation { - private static final Logger LOG = LoggerFactory.getLogger(FlowNodeReconciliationImpl.class); private static final Logger OF_EVENT_LOG = LoggerFactory.getLogger("OfEventLog"); 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 b4e7bd488..02e7a2a40 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 @@ -94,7 +94,7 @@ public final class ForwardingRulesManagerImpl implements ForwardingRulesManager, private ForwardingRulesCommiter groupListener; private ForwardingRulesCommiter meterListener; private ForwardingRulesCommiter tableListener; - private FlowNodeReconciliation nodeListener; + private FlowNodeReconciliationImpl flowNodeReconciliation; private NotificationRegistration reconciliationNotificationRegistration; private DeviceMastershipManager deviceMastershipManager; private boolean disableReconciliation; @@ -141,17 +141,16 @@ public final class ForwardingRulesManagerImpl implements ForwardingRulesManager, requireNonNull(rpcRegistry.getRpcService(ArbitratorReconcileService.class), "ArbitratorReconciliationManager can not be null!"); - nodeListener = new FlowNodeReconciliationImpl(this, dataService, SERVICE_NAME, FRM_RECONCILIATION_PRIORITY, - ResultState.DONOTHING, flowGroupCacheManager); + flowNodeReconciliation = new FlowNodeReconciliationImpl(this, dataService, SERVICE_NAME, + FRM_RECONCILIATION_PRIORITY, ResultState.DONOTHING, flowGroupCacheManager); if (isReconciliationDisabled()) { LOG.debug("Reconciliation is disabled by user"); } else { - reconciliationNotificationRegistration = reconciliationManager.registerService(nodeListener); + reconciliationNotificationRegistration = reconciliationManager.registerService(flowNodeReconciliation); LOG.debug("Reconciliation is enabled by user and successfully registered to the reconciliation framework"); } - deviceMastershipManager = new DeviceMastershipManager(clusterSingletonServiceProvider, nodeListener, - dataService, mastershipChangeServiceManager, rpcProviderService, - new FrmReconciliationServiceImpl(this)); + deviceMastershipManager = new DeviceMastershipManager(flowNodeReconciliation, dataService, + mastershipChangeServiceManager, rpcProviderService); flowNodeConnectorInventoryTranslatorImpl = new FlowNodeConnectorInventoryTranslatorImpl(dataService); bundleFlowListener = new BundleFlowForwarder(this); @@ -184,9 +183,9 @@ public final class ForwardingRulesManagerImpl implements ForwardingRulesManager, tableListener.close(); tableListener = null; } - if (nodeListener != null) { - nodeListener.close(); - nodeListener = null; + if (flowNodeReconciliation != null) { + flowNodeReconciliation.close(); + flowNodeReconciliation = null; } if (deviceMastershipManager != null) { deviceMastershipManager.close(); @@ -328,8 +327,9 @@ public final class ForwardingRulesManagerImpl implements ForwardingRulesManager, return nodeConfigurator; } - public FlowNodeReconciliation getNodeListener() { - return nodeListener; + @Override + public FlowNodeReconciliation getFlowNodeReconciliation() { + return flowNodeReconciliation; } @Override diff --git a/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/impl/FrmReconciliationServiceImpl.java b/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/impl/FrmReconciliationServiceImpl.java deleted file mode 100644 index 9e43568b9..000000000 --- a/applications/forwardingrules-manager/src/main/java/org/opendaylight/openflowplugin/applications/frm/impl/FrmReconciliationServiceImpl.java +++ /dev/null @@ -1,94 +0,0 @@ -/* - * Copyright (c) 2018 Ericsson India Global Services Pvt Ltd. and others. All rights reserved. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - */ -package org.opendaylight.openflowplugin.applications.frm.impl; - -import com.google.common.util.concurrent.FutureCallback; -import com.google.common.util.concurrent.Futures; -import com.google.common.util.concurrent.ListenableFuture; -import com.google.common.util.concurrent.MoreExecutors; -import com.google.common.util.concurrent.SettableFuture; -import javax.inject.Inject; -import javax.inject.Singleton; -import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowCapableNode; -import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId; -import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.Nodes; -import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node; -import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeBuilder; -import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeKey; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.openflowplugin.app.frm.reconciliation.service.rev180227.FrmReconciliationService; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.openflowplugin.app.frm.reconciliation.service.rev180227.ReconcileNodeInput; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.openflowplugin.app.frm.reconciliation.service.rev180227.ReconcileNodeOutput; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.openflowplugin.app.frm.reconciliation.service.rev180227.ReconcileNodeOutputBuilder; -import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; -import org.opendaylight.yangtools.yang.common.ErrorType; -import org.opendaylight.yangtools.yang.common.RpcResult; -import org.opendaylight.yangtools.yang.common.RpcResultBuilder; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -@Singleton -public class FrmReconciliationServiceImpl implements FrmReconciliationService { - - private static final Logger LOG = LoggerFactory.getLogger(FrmReconciliationServiceImpl.class); - - private final ForwardingRulesManagerImpl forwardingRulesManagerImpl; - - @Inject - public FrmReconciliationServiceImpl(ForwardingRulesManagerImpl forwardingRulesManagerImpl) { - this.forwardingRulesManagerImpl = forwardingRulesManagerImpl; - } - - private static Node buildNode(long nodeIid) { - NodeId nodeId = new NodeId("openflow:" + nodeIid); - Node nodeDpn = new NodeBuilder().setId(nodeId).withKey(new NodeKey(nodeId)).build(); - return nodeDpn; - } - - @Override - public ListenableFuture> reconcileNode(ReconcileNodeInput input) { - LOG.debug("Triggering reconciliation for node: {}", input.getNodeId()); - Node nodeDpn = buildNode(input.getNodeId().longValue()); - InstanceIdentifier connectedNode = InstanceIdentifier.builder(Nodes.class) - .child(Node.class, nodeDpn.key()).augmentation(FlowCapableNode.class).build(); - SettableFuture> rpcResult = SettableFuture.create(); - ListenableFuture futureResult = forwardingRulesManagerImpl - .getNodeListener().reconcileConfiguration(connectedNode); - Futures.addCallback(futureResult, new ResultCallBack(futureResult, rpcResult), - MoreExecutors.directExecutor()); - LOG.debug("Completing reconciliation for node: {}", input.getNodeId()); - return rpcResult; - } - - private static class ResultCallBack implements FutureCallback { - private final SettableFuture> futureResult; - - ResultCallBack(ListenableFuture rpcResult, - SettableFuture> futureResult) { - this.futureResult = futureResult; - } - - @Override - public void onSuccess(Boolean result) { - if (result) { - ReconcileNodeOutput output = new ReconcileNodeOutputBuilder().setResult(result).build(); - futureResult.set(RpcResultBuilder.success(output).build()); - } else { - futureResult.set(RpcResultBuilder.failed() - .withError(ErrorType.APPLICATION, "Error while triggering reconciliation").build()); - } - - } - - @Override - public void onFailure(Throwable error) { - LOG.error("initReconciliation failed", error); - futureResult.set(RpcResultBuilder.failed() - .withError(ErrorType.RPC, "Error while calling RPC").build()); - } - } -} 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 46e483c58..946f8e347 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 @@ -2,13 +2,6 @@ - - - - - diff --git a/applications/forwardingrules-manager/src/test/java/org/opendaylight/openflowplugin/applications/frm/impl/DeviceMastershipManagerTest.java b/applications/forwardingrules-manager/src/test/java/org/opendaylight/openflowplugin/applications/frm/impl/DeviceMastershipManagerTest.java index 92a0d65c1..aefeff030 100644 --- a/applications/forwardingrules-manager/src/test/java/org/opendaylight/openflowplugin/applications/frm/impl/DeviceMastershipManagerTest.java +++ b/applications/forwardingrules-manager/src/test/java/org/opendaylight/openflowplugin/applications/frm/impl/DeviceMastershipManagerTest.java @@ -23,7 +23,6 @@ import org.opendaylight.openflowplugin.api.openflow.device.DeviceInfo; import org.opendaylight.openflowplugin.api.openflow.mastership.MastershipChangeServiceManager; import org.opendaylight.openflowplugin.applications.frm.FlowNodeReconciliation; import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.openflowplugin.app.frm.reconciliation.service.rev180227.FrmReconciliationService; /** * Test for {@link DeviceMastershipManager}. @@ -47,13 +46,11 @@ public class DeviceMastershipManagerTest { private NodeId nodeId; @Mock private RpcProviderService rpcProviderService; - @Mock - private FrmReconciliationService reconciliationService; @Before public void setUp() { - deviceMastershipManager = new DeviceMastershipManager(clusterSingletonService, reconciliationAgent, dataBroker, - mastershipChangeServiceManager, rpcProviderService, reconciliationService); + deviceMastershipManager = new DeviceMastershipManager(reconciliationAgent, dataBroker, + mastershipChangeServiceManager, rpcProviderService); Mockito.lenient().when(clusterSingletonService .registerClusterSingletonService(ArgumentMatchers.any())) .thenReturn(registration); diff --git a/applications/southbound-cli/src/main/java/org/opendaylight/openflowplugin/applications/southboundcli/ReconciliationServiceImpl.java b/applications/southbound-cli/src/main/java/org/opendaylight/openflowplugin/applications/southboundcli/ReconciliationServiceImpl.java index 6a9118eb6..f09f748fd 100644 --- a/applications/southbound-cli/src/main/java/org/opendaylight/openflowplugin/applications/southboundcli/ReconciliationServiceImpl.java +++ b/applications/southbound-cli/src/main/java/org/opendaylight/openflowplugin/applications/southboundcli/ReconciliationServiceImpl.java @@ -25,26 +25,23 @@ import java.util.Set; import java.util.concurrent.ExecutionException; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; -import java.util.concurrent.Future; import java.util.stream.Collectors; import org.opendaylight.mdsal.binding.api.DataBroker; import org.opendaylight.mdsal.binding.api.ReadWriteTransaction; import org.opendaylight.mdsal.common.api.LogicalDatastoreType; import org.opendaylight.openflowplugin.api.openflow.FlowGroupCacheManager; import org.opendaylight.openflowplugin.api.openflow.ReconciliationState; +import org.opendaylight.openflowplugin.applications.frm.FlowNodeReconciliation; +import org.opendaylight.openflowplugin.applications.frm.ForwardingRulesManager; import org.opendaylight.openflowplugin.applications.southboundcli.alarm.AlarmAgent; import org.opendaylight.openflowplugin.applications.southboundcli.util.OFNode; import org.opendaylight.openflowplugin.applications.southboundcli.util.ShellUtil; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.DateAndTime; +import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowCapableNode; import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId; -import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeRef; import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.Nodes; import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node; import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeKey; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.openflowplugin.app.frm.reconciliation.service.rev180227.FrmReconciliationService; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.openflowplugin.app.frm.reconciliation.service.rev180227.ReconcileNodeInput; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.openflowplugin.app.frm.reconciliation.service.rev180227.ReconcileNodeInputBuilder; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.openflowplugin.app.frm.reconciliation.service.rev180227.ReconcileNodeOutput; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.openflowplugin.app.reconciliation.service.rev180227.ReconcileInput; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.openflowplugin.app.reconciliation.service.rev180227.ReconcileOutput; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.openflowplugin.app.reconciliation.service.rev180227.ReconcileOutputBuilder; @@ -67,20 +64,20 @@ public class ReconciliationServiceImpl implements ReconciliationService, AutoClo private static final Logger LOG = LoggerFactory.getLogger(ReconciliationServiceImpl.class); private final DataBroker broker; - private final FrmReconciliationService frmReconciliationService; + private final FlowNodeReconciliation flowNodeReconciliation; private final AlarmAgent alarmAgent; private final NodeListener nodeListener; private final Map reconciliationStates; private ExecutorService executor = Executors.newWorkStealingPool(10); - public ReconciliationServiceImpl(final DataBroker broker, final FrmReconciliationService frmReconciliationService, - final AlarmAgent alarmAgent, final NodeListener nodeListener, - final FlowGroupCacheManager flowGroupCacheManager) { - this.broker = broker; - this.frmReconciliationService = frmReconciliationService; - this.alarmAgent = alarmAgent; - this.nodeListener = requireNonNull(nodeListener, "NodeListener cannot be null!"); + public ReconciliationServiceImpl(final DataBroker broker, final ForwardingRulesManager frm, + final AlarmAgent alarmAgent, final NodeListener nodeListener, + final FlowGroupCacheManager flowGroupCacheManager) { + this.broker = requireNonNull(broker); + flowNodeReconciliation = frm.getFlowNodeReconciliation(); + this.alarmAgent = requireNonNull(alarmAgent); + this.nodeListener = requireNonNull(nodeListener); reconciliationStates = flowGroupCacheManager.getReconciliationStates(); } @@ -170,22 +167,20 @@ public class ReconciliationServiceImpl implements ReconciliationService, AutoClo @Override public void run() { - ReconcileNodeInput reconInput = new ReconcileNodeInputBuilder() - .setNodeId(nodeId).setNode(new NodeRef(InstanceIdentifier.builder(Nodes.class) - .child(Node.class, nodeKey).build())).build(); updateReconciliationState(STARTED); - Future> reconOutput = frmReconciliationService - .reconcileNode(reconInput); + final var reconOutput = flowNodeReconciliation.reconcileConfiguration( + InstanceIdentifier.create(Nodes.class) + .child(Node.class, nodeKey) + .augmentation(FlowCapableNode.class)); try { - RpcResult rpcResult = reconOutput.get(); - if (rpcResult.isSuccessful()) { - increaseReconcileCount(true); + final boolean rpcResult = reconOutput.get(); + increaseReconcileCount(rpcResult); + if (rpcResult) { updateReconciliationState(COMPLETED); LOG.info("Reconciliation successfully completed for node {}", nodeId); } else { - increaseReconcileCount(false); updateReconciliationState(FAILED); - LOG.error("Reconciliation failed for node {} with error {}", nodeId, rpcResult.getErrors()); + LOG.error("Reconciliation failed for node {}", nodeId); } } catch (ExecutionException | InterruptedException e) { increaseReconcileCount(false); diff --git a/applications/southbound-cli/src/main/resources/OSGI-INF/blueprint/southbound-cli.xml b/applications/southbound-cli/src/main/resources/OSGI-INF/blueprint/southbound-cli.xml index 1c9d8d851..2745a6b5d 100644 --- a/applications/southbound-cli/src/main/resources/OSGI-INF/blueprint/southbound-cli.xml +++ b/applications/southbound-cli/src/main/resources/OSGI-INF/blueprint/southbound-cli.xml @@ -6,10 +6,11 @@ - + + - @@ -23,7 +24,7 @@ class="org.opendaylight.openflowplugin.applications.southboundcli.ReconciliationServiceImpl" destroy-method="close"> - + -- 2.43.0 From b8520114148f79606aa4f5aa102a89dd53cf577e Mon Sep 17 00:00:00 2001 From: jenkins-releng Date: Fri, 9 Feb 2024 12:44:53 +0000 Subject: [PATCH 2/2] Release Validate --- applications/arbitratorreconciliation/api/pom.xml | 2 +- applications/arbitratorreconciliation/impl/pom.xml | 2 +- applications/arbitratorreconciliation/pom.xml | 2 +- applications/bulk-o-matic/pom.xml | 2 +- applications/device-ownership-service/pom.xml | 2 +- applications/forwardingrules-manager/pom.xml | 2 +- applications/forwardingrules-sync/pom.xml | 2 +- applications/lldp-speaker/pom.xml | 2 +- applications/of-switch-config-pusher/pom.xml | 2 +- applications/pom.xml | 2 +- applications/reconciliation-framework/pom.xml | 2 +- applications/southbound-cli/pom.xml | 2 +- applications/table-miss-enforcer/pom.xml | 2 +- applications/topology-lldp-discovery/pom.xml | 4 ++-- applications/topology-manager/pom.xml | 4 ++-- artifacts/pom.xml | 2 +- distribution/karaf/pom.xml | 4 ++-- drop-test-karaf/pom.xml | 2 +- .../features-openflowplugin-extension/pom.xml | 2 +- .../odl-openflowplugin-eric-extensions/pom.xml | 2 +- .../odl-openflowplugin-nxm-extensions/pom.xml | 2 +- .../odl-openflowplugin-onf-extensions/pom.xml | 2 +- extension/features-extension-aggregator/pom.xml | 2 +- extension/openflowjava-extension-eric/pom.xml | 2 +- extension/openflowjava-extension-nicira-api/pom.xml | 2 +- extension/openflowjava-extension-nicira/pom.xml | 2 +- extension/openflowplugin-extension-api/pom.xml | 2 +- extension/openflowplugin-extension-eric/pom.xml | 2 +- extension/openflowplugin-extension-nicira/pom.xml | 2 +- extension/openflowplugin-extension-onf/pom.xml | 2 +- extension/pom.xml | 2 +- extension/test-extension/pom.xml | 2 +- features-aggregator/features-openflowplugin/pom.xml | 2 +- .../odl-openflowplugin-app-arbitratorreconciliation/pom.xml | 2 +- .../odl-openflowplugin-app-bulk-o-matic/pom.xml | 2 +- .../odl-openflowplugin-app-config-pusher/pom.xml | 2 +- .../odl-openflowplugin-app-forwardingrules-manager/pom.xml | 2 +- .../odl-openflowplugin-app-forwardingrules-sync/pom.xml | 2 +- .../odl-openflowplugin-app-lldp-speaker/pom.xml | 2 +- .../odl-openflowplugin-app-reconciliation-framework/pom.xml | 2 +- .../odl-openflowplugin-app-southbound-cli/pom.xml | 2 +- .../odl-openflowplugin-app-table-miss-enforcer/pom.xml | 2 +- .../odl-openflowplugin-app-topology-lldp-discovery/pom.xml | 2 +- .../odl-openflowplugin-app-topology-manager/pom.xml | 2 +- features-aggregator/odl-openflowplugin-app-topology/pom.xml | 2 +- features-aggregator/odl-openflowplugin-drop-test/pom.xml | 2 +- .../odl-openflowplugin-flow-services-rest/pom.xml | 2 +- features-aggregator/odl-openflowplugin-flow-services/pom.xml | 2 +- features-aggregator/odl-openflowplugin-libraries/pom.xml | 2 +- features-aggregator/odl-openflowplugin-nsf-model/pom.xml | 2 +- features-aggregator/odl-openflowplugin-southbound/pom.xml | 4 ++-- features-aggregator/pom.xml | 2 +- libraries/liblldp/pom.xml | 2 +- libraries/pom.xml | 2 +- model/model-flow-base/pom.xml | 2 +- model/model-flow-service/pom.xml | 2 +- model/model-flow-statistics/pom.xml | 2 +- model/model-inventory/pom.xml | 2 +- model/model-topology/pom.xml | 2 +- model/pom.xml | 2 +- .../features-openflowjava/pom.xml | 2 +- .../odl-openflowjava-protocol/pom.xml | 2 +- openflowjava/features-openflowjava-aggregator/pom.xml | 2 +- openflowjava/openflow-protocol-api/pom.xml | 4 ++-- openflowjava/openflow-protocol-impl/pom.xml | 2 +- openflowjava/openflow-protocol-it/pom.xml | 2 +- openflowjava/openflow-protocol-spi/pom.xml | 2 +- openflowjava/openflowjava-blueprint-config/pom.xml | 2 +- openflowjava/openflowjava-util/pom.xml | 2 +- openflowjava/pom.xml | 2 +- openflowplugin-api/pom.xml | 2 +- openflowplugin-blueprint-config/pom.xml | 2 +- openflowplugin-common/pom.xml | 2 +- openflowplugin-impl/pom.xml | 2 +- openflowplugin-it/pom.xml | 2 +- openflowplugin/pom.xml | 2 +- parent/pom.xml | 4 ++-- pom.xml | 4 ++-- samples/learning-switch/pom.xml | 2 +- samples/pom.xml | 2 +- samples/sample-bundles/pom.xml | 2 +- samples/sample-consumer/pom.xml | 2 +- samples/simple-client/pom.xml | 2 +- test-common/pom.xml | 2 +- test-provider/pom.xml | 2 +- 85 files changed, 92 insertions(+), 92 deletions(-) diff --git a/applications/arbitratorreconciliation/api/pom.xml b/applications/arbitratorreconciliation/api/pom.xml index 3fb439acb..ab18f4b4f 100644 --- a/applications/arbitratorreconciliation/api/pom.xml +++ b/applications/arbitratorreconciliation/api/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../../parent diff --git a/applications/arbitratorreconciliation/impl/pom.xml b/applications/arbitratorreconciliation/impl/pom.xml index ef3e845ff..f009c29af 100644 --- a/applications/arbitratorreconciliation/impl/pom.xml +++ b/applications/arbitratorreconciliation/impl/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../../parent diff --git a/applications/arbitratorreconciliation/pom.xml b/applications/arbitratorreconciliation/pom.xml index c6831ef2e..43b139e1c 100644 --- a/applications/arbitratorreconciliation/pom.xml +++ b/applications/arbitratorreconciliation/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin.applications arbitratorreconciliation-aggregator - 0.18.0-SNAPSHOT + 0.18.0 pom ODL :: openflowplugin :: ${project.artifactId} diff --git a/applications/bulk-o-matic/pom.xml b/applications/bulk-o-matic/pom.xml index 567abedfe..6d65f4e9b 100644 --- a/applications/bulk-o-matic/pom.xml +++ b/applications/bulk-o-matic/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/applications/device-ownership-service/pom.xml b/applications/device-ownership-service/pom.xml index 7028f713e..d81deecf8 100644 --- a/applications/device-ownership-service/pom.xml +++ b/applications/device-ownership-service/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/applications/forwardingrules-manager/pom.xml b/applications/forwardingrules-manager/pom.xml index dad42d742..4fa8f98c6 100644 --- a/applications/forwardingrules-manager/pom.xml +++ b/applications/forwardingrules-manager/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/applications/forwardingrules-sync/pom.xml b/applications/forwardingrules-sync/pom.xml index 5266aa91f..b6f372a11 100644 --- a/applications/forwardingrules-sync/pom.xml +++ b/applications/forwardingrules-sync/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/applications/lldp-speaker/pom.xml b/applications/lldp-speaker/pom.xml index 79fdb2466..a6a1f430a 100644 --- a/applications/lldp-speaker/pom.xml +++ b/applications/lldp-speaker/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/applications/of-switch-config-pusher/pom.xml b/applications/of-switch-config-pusher/pom.xml index d7e79d3f0..6e5e3c3f1 100644 --- a/applications/of-switch-config-pusher/pom.xml +++ b/applications/of-switch-config-pusher/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/applications/pom.xml b/applications/pom.xml index 1ea659bf9..618df6895 100644 --- a/applications/pom.xml +++ b/applications/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin applications-aggregator - 0.18.0-SNAPSHOT + 0.18.0 pom diff --git a/applications/reconciliation-framework/pom.xml b/applications/reconciliation-framework/pom.xml index fa8b81ba8..0c5544bb7 100644 --- a/applications/reconciliation-framework/pom.xml +++ b/applications/reconciliation-framework/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/applications/southbound-cli/pom.xml b/applications/southbound-cli/pom.xml index cfa72112c..93d85fb8e 100644 --- a/applications/southbound-cli/pom.xml +++ b/applications/southbound-cli/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/applications/table-miss-enforcer/pom.xml b/applications/table-miss-enforcer/pom.xml index d474cf54d..2514de737 100644 --- a/applications/table-miss-enforcer/pom.xml +++ b/applications/table-miss-enforcer/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/applications/topology-lldp-discovery/pom.xml b/applications/topology-lldp-discovery/pom.xml index ed96629bc..f96a9a0ca 100644 --- a/applications/topology-lldp-discovery/pom.xml +++ b/applications/topology-lldp-discovery/pom.xml @@ -4,12 +4,12 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent org.opendaylight.openflowplugin.applications topology-lldp-discovery - 0.18.0-SNAPSHOT + 0.18.0 bundle diff --git a/applications/topology-manager/pom.xml b/applications/topology-manager/pom.xml index fc93660fd..8f2dd9908 100644 --- a/applications/topology-manager/pom.xml +++ b/applications/topology-manager/pom.xml @@ -4,12 +4,12 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent org.opendaylight.openflowplugin.applications topology-manager - 0.18.0-SNAPSHOT + 0.18.0 bundle diff --git a/artifacts/pom.xml b/artifacts/pom.xml index 6c700f2b2..a91907e07 100644 --- a/artifacts/pom.xml +++ b/artifacts/pom.xml @@ -19,7 +19,7 @@ org.opendaylight.openflowplugin openflowplugin-artifacts - 0.18.0-SNAPSHOT + 0.18.0 pom diff --git a/distribution/karaf/pom.xml b/distribution/karaf/pom.xml index b34aef9ed..9ae3e7126 100644 --- a/distribution/karaf/pom.xml +++ b/distribution/karaf/pom.xml @@ -8,11 +8,11 @@ org.opendaylight.openflowplugin openflowplugin-karaf - 0.18.0-SNAPSHOT + 0.18.0 pom - 0.18.0-SNAPSHOT + 0.18.0 diff --git a/drop-test-karaf/pom.xml b/drop-test-karaf/pom.xml index b85c450ab..84c725d16 100644 --- a/drop-test-karaf/pom.xml +++ b/drop-test-karaf/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../parent diff --git a/extension/features-extension-aggregator/features-openflowplugin-extension/pom.xml b/extension/features-extension-aggregator/features-openflowplugin-extension/pom.xml index 0e8da177f..97628ec39 100644 --- a/extension/features-extension-aggregator/features-openflowplugin-extension/pom.xml +++ b/extension/features-extension-aggregator/features-openflowplugin-extension/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin features-openflowplugin-extension feature - 0.18.0-SNAPSHOT + 0.18.0 diff --git a/extension/features-extension-aggregator/odl-openflowplugin-eric-extensions/pom.xml b/extension/features-extension-aggregator/odl-openflowplugin-eric-extensions/pom.xml index cf3f4177d..c5e04ce3c 100644 --- a/extension/features-extension-aggregator/odl-openflowplugin-eric-extensions/pom.xml +++ b/extension/features-extension-aggregator/odl-openflowplugin-eric-extensions/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin odl-openflowplugin-eric-extensions feature - 0.18.0-SNAPSHOT + 0.18.0 OpenDaylight :: Openflow Plugin :: Eric Extensions diff --git a/extension/features-extension-aggregator/odl-openflowplugin-nxm-extensions/pom.xml b/extension/features-extension-aggregator/odl-openflowplugin-nxm-extensions/pom.xml index f15ee468b..96682b972 100644 --- a/extension/features-extension-aggregator/odl-openflowplugin-nxm-extensions/pom.xml +++ b/extension/features-extension-aggregator/odl-openflowplugin-nxm-extensions/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin odl-openflowplugin-nxm-extensions feature - 0.18.0-SNAPSHOT + 0.18.0 OpenDaylight :: Openflow Plugin :: Nicira Extensions diff --git a/extension/features-extension-aggregator/odl-openflowplugin-onf-extensions/pom.xml b/extension/features-extension-aggregator/odl-openflowplugin-onf-extensions/pom.xml index ed4a34b06..f1e267843 100644 --- a/extension/features-extension-aggregator/odl-openflowplugin-onf-extensions/pom.xml +++ b/extension/features-extension-aggregator/odl-openflowplugin-onf-extensions/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin odl-openflowplugin-onf-extensions feature - 0.18.0-SNAPSHOT + 0.18.0 OpenDaylight :: Openflow Plugin :: ONF Extensions diff --git a/extension/features-extension-aggregator/pom.xml b/extension/features-extension-aggregator/pom.xml index d67ab68ed..1ef30f057 100644 --- a/extension/features-extension-aggregator/pom.xml +++ b/extension/features-extension-aggregator/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin features-extension-aggregator pom - 0.18.0-SNAPSHOT + 0.18.0 features-openflowplugin-extension diff --git a/extension/openflowjava-extension-eric/pom.xml b/extension/openflowjava-extension-eric/pom.xml index 7a939a03c..788aa531e 100644 --- a/extension/openflowjava-extension-eric/pom.xml +++ b/extension/openflowjava-extension-eric/pom.xml @@ -5,7 +5,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent openflowjava-extension-eric diff --git a/extension/openflowjava-extension-nicira-api/pom.xml b/extension/openflowjava-extension-nicira-api/pom.xml index d22e9fc4e..89d276c55 100644 --- a/extension/openflowjava-extension-nicira-api/pom.xml +++ b/extension/openflowjava-extension-nicira-api/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent openflowjava-extension-nicira-api diff --git a/extension/openflowjava-extension-nicira/pom.xml b/extension/openflowjava-extension-nicira/pom.xml index 15fb4e7e8..fbf185676 100644 --- a/extension/openflowjava-extension-nicira/pom.xml +++ b/extension/openflowjava-extension-nicira/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent openflowjava-extension-nicira diff --git a/extension/openflowplugin-extension-api/pom.xml b/extension/openflowplugin-extension-api/pom.xml index 17beb1a18..cfb98c52d 100644 --- a/extension/openflowplugin-extension-api/pom.xml +++ b/extension/openflowplugin-extension-api/pom.xml @@ -5,7 +5,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/extension/openflowplugin-extension-eric/pom.xml b/extension/openflowplugin-extension-eric/pom.xml index b745493f7..b8c6f1aac 100644 --- a/extension/openflowplugin-extension-eric/pom.xml +++ b/extension/openflowplugin-extension-eric/pom.xml @@ -5,7 +5,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/extension/openflowplugin-extension-nicira/pom.xml b/extension/openflowplugin-extension-nicira/pom.xml index d151e8a7f..f178283a7 100644 --- a/extension/openflowplugin-extension-nicira/pom.xml +++ b/extension/openflowplugin-extension-nicira/pom.xml @@ -5,7 +5,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/extension/openflowplugin-extension-onf/pom.xml b/extension/openflowplugin-extension-onf/pom.xml index ae6914313..ee2351400 100644 --- a/extension/openflowplugin-extension-onf/pom.xml +++ b/extension/openflowplugin-extension-onf/pom.xml @@ -10,7 +10,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/extension/pom.xml b/extension/pom.xml index c51cb2069..c87beec90 100644 --- a/extension/pom.xml +++ b/extension/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin openflowplugin-extension-aggregator - 0.18.0-SNAPSHOT + 0.18.0 pom diff --git a/extension/test-extension/pom.xml b/extension/test-extension/pom.xml index 6fbaa66b8..d3bf0617e 100644 --- a/extension/test-extension/pom.xml +++ b/extension/test-extension/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/features-aggregator/features-openflowplugin/pom.xml b/features-aggregator/features-openflowplugin/pom.xml index 9e485fa35..3fca1ae43 100644 --- a/features-aggregator/features-openflowplugin/pom.xml +++ b/features-aggregator/features-openflowplugin/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin features-openflowplugin feature - 0.18.0-SNAPSHOT + 0.18.0 diff --git a/features-aggregator/odl-openflowplugin-app-arbitratorreconciliation/pom.xml b/features-aggregator/odl-openflowplugin-app-arbitratorreconciliation/pom.xml index 2e013a559..5b53ea810 100644 --- a/features-aggregator/odl-openflowplugin-app-arbitratorreconciliation/pom.xml +++ b/features-aggregator/odl-openflowplugin-app-arbitratorreconciliation/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin odl-openflowplugin-app-arbitratorreconciliation feature - 0.18.0-SNAPSHOT + 0.18.0 OpenDaylight :: Openflow Plugin :: Application - Arbitrator Reconciliation diff --git a/features-aggregator/odl-openflowplugin-app-bulk-o-matic/pom.xml b/features-aggregator/odl-openflowplugin-app-bulk-o-matic/pom.xml index daee65e42..eb49299c6 100644 --- a/features-aggregator/odl-openflowplugin-app-bulk-o-matic/pom.xml +++ b/features-aggregator/odl-openflowplugin-app-bulk-o-matic/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin odl-openflowplugin-app-bulk-o-matic feature - 0.18.0-SNAPSHOT + 0.18.0 OpenDaylight :: Openflow Plugin :: Application - bulk flow operations support diff --git a/features-aggregator/odl-openflowplugin-app-config-pusher/pom.xml b/features-aggregator/odl-openflowplugin-app-config-pusher/pom.xml index 869c1e1fc..558b5cf29 100644 --- a/features-aggregator/odl-openflowplugin-app-config-pusher/pom.xml +++ b/features-aggregator/odl-openflowplugin-app-config-pusher/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin odl-openflowplugin-app-config-pusher feature - 0.18.0-SNAPSHOT + 0.18.0 OpenDaylight :: Openflow Plugin :: Application - default config-pusher diff --git a/features-aggregator/odl-openflowplugin-app-forwardingrules-manager/pom.xml b/features-aggregator/odl-openflowplugin-app-forwardingrules-manager/pom.xml index a38d8ce01..a6d51267c 100644 --- a/features-aggregator/odl-openflowplugin-app-forwardingrules-manager/pom.xml +++ b/features-aggregator/odl-openflowplugin-app-forwardingrules-manager/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin odl-openflowplugin-app-forwardingrules-manager feature - 0.18.0-SNAPSHOT + 0.18.0 OpenDaylight :: Openflow Plugin :: Application - FRM diff --git a/features-aggregator/odl-openflowplugin-app-forwardingrules-sync/pom.xml b/features-aggregator/odl-openflowplugin-app-forwardingrules-sync/pom.xml index 4b3f8a3de..dc92a7c80 100644 --- a/features-aggregator/odl-openflowplugin-app-forwardingrules-sync/pom.xml +++ b/features-aggregator/odl-openflowplugin-app-forwardingrules-sync/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin odl-openflowplugin-app-forwardingrules-sync feature - 0.18.0-SNAPSHOT + 0.18.0 OpenDaylight :: Openflow Plugin :: Application - FRS diff --git a/features-aggregator/odl-openflowplugin-app-lldp-speaker/pom.xml b/features-aggregator/odl-openflowplugin-app-lldp-speaker/pom.xml index 7dc5869da..a60ef02d5 100644 --- a/features-aggregator/odl-openflowplugin-app-lldp-speaker/pom.xml +++ b/features-aggregator/odl-openflowplugin-app-lldp-speaker/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin odl-openflowplugin-app-lldp-speaker feature - 0.18.0-SNAPSHOT + 0.18.0 OpenDaylight :: Openflow Plugin :: Application - LLDP Speaker diff --git a/features-aggregator/odl-openflowplugin-app-reconciliation-framework/pom.xml b/features-aggregator/odl-openflowplugin-app-reconciliation-framework/pom.xml index be2d50550..2640b4bbd 100644 --- a/features-aggregator/odl-openflowplugin-app-reconciliation-framework/pom.xml +++ b/features-aggregator/odl-openflowplugin-app-reconciliation-framework/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin odl-openflowplugin-app-reconciliation-framework feature -0.18.0-SNAPSHOT +0.18.0 OpenDaylight :: Openflow Plugin :: Application - Reconciliation Framework diff --git a/features-aggregator/odl-openflowplugin-app-southbound-cli/pom.xml b/features-aggregator/odl-openflowplugin-app-southbound-cli/pom.xml index 9af595832..e2a87660a 100644 --- a/features-aggregator/odl-openflowplugin-app-southbound-cli/pom.xml +++ b/features-aggregator/odl-openflowplugin-app-southbound-cli/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin odl-openflowplugin-app-southbound-cli feature - 0.18.0-SNAPSHOT + 0.18.0 OpenDaylight :: Openflow Plugin :: Application - Southbound CLI diff --git a/features-aggregator/odl-openflowplugin-app-table-miss-enforcer/pom.xml b/features-aggregator/odl-openflowplugin-app-table-miss-enforcer/pom.xml index c6f7e36c9..507c1ad7c 100644 --- a/features-aggregator/odl-openflowplugin-app-table-miss-enforcer/pom.xml +++ b/features-aggregator/odl-openflowplugin-app-table-miss-enforcer/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin odl-openflowplugin-app-table-miss-enforcer feature - 0.18.0-SNAPSHOT + 0.18.0 OpenDaylight :: Openflow Plugin :: Application - table-miss-enforcer diff --git a/features-aggregator/odl-openflowplugin-app-topology-lldp-discovery/pom.xml b/features-aggregator/odl-openflowplugin-app-topology-lldp-discovery/pom.xml index 59c0cfbe9..a6470a2c9 100644 --- a/features-aggregator/odl-openflowplugin-app-topology-lldp-discovery/pom.xml +++ b/features-aggregator/odl-openflowplugin-app-topology-lldp-discovery/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin odl-openflowplugin-app-topology-lldp-discovery feature - 0.18.0-SNAPSHOT + 0.18.0 OpenDaylight :: Openflow Plugin :: Application - Topology LLDP Discovery diff --git a/features-aggregator/odl-openflowplugin-app-topology-manager/pom.xml b/features-aggregator/odl-openflowplugin-app-topology-manager/pom.xml index 0b8fc8b77..37906a6e4 100644 --- a/features-aggregator/odl-openflowplugin-app-topology-manager/pom.xml +++ b/features-aggregator/odl-openflowplugin-app-topology-manager/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin odl-openflowplugin-app-topology-manager feature - 0.18.0-SNAPSHOT + 0.18.0 OpenDaylight :: Openflow Plugin :: Application - Topology Manager diff --git a/features-aggregator/odl-openflowplugin-app-topology/pom.xml b/features-aggregator/odl-openflowplugin-app-topology/pom.xml index 6413a9edc..1343982b3 100644 --- a/features-aggregator/odl-openflowplugin-app-topology/pom.xml +++ b/features-aggregator/odl-openflowplugin-app-topology/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin odl-openflowplugin-app-topology feature - 0.18.0-SNAPSHOT + 0.18.0 OpenDaylight :: Openflow Plugin :: Application - topology diff --git a/features-aggregator/odl-openflowplugin-drop-test/pom.xml b/features-aggregator/odl-openflowplugin-drop-test/pom.xml index 7e3e19246..1be6939bb 100644 --- a/features-aggregator/odl-openflowplugin-drop-test/pom.xml +++ b/features-aggregator/odl-openflowplugin-drop-test/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin odl-openflowplugin-drop-test feature - 0.18.0-SNAPSHOT + 0.18.0 OpenDaylight :: Openflow Plugin :: Drop Test diff --git a/features-aggregator/odl-openflowplugin-flow-services-rest/pom.xml b/features-aggregator/odl-openflowplugin-flow-services-rest/pom.xml index fbbbd30d6..2202896b3 100644 --- a/features-aggregator/odl-openflowplugin-flow-services-rest/pom.xml +++ b/features-aggregator/odl-openflowplugin-flow-services-rest/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin odl-openflowplugin-flow-services-rest feature - 0.18.0-SNAPSHOT + 0.18.0 OpenDaylight :: Openflow Plugin :: Flow Services :: REST diff --git a/features-aggregator/odl-openflowplugin-flow-services/pom.xml b/features-aggregator/odl-openflowplugin-flow-services/pom.xml index 0bf712ff3..ec07e18f6 100644 --- a/features-aggregator/odl-openflowplugin-flow-services/pom.xml +++ b/features-aggregator/odl-openflowplugin-flow-services/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin odl-openflowplugin-flow-services feature - 0.18.0-SNAPSHOT + 0.18.0 OpenDaylight :: Openflow Plugin :: Flow Services diff --git a/features-aggregator/odl-openflowplugin-libraries/pom.xml b/features-aggregator/odl-openflowplugin-libraries/pom.xml index 764585b20..a6cd92f4f 100644 --- a/features-aggregator/odl-openflowplugin-libraries/pom.xml +++ b/features-aggregator/odl-openflowplugin-libraries/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin odl-openflowplugin-libraries feature - 0.18.0-SNAPSHOT + 0.18.0 OpenDaylight :: Openflow Plugin :: Libraries diff --git a/features-aggregator/odl-openflowplugin-nsf-model/pom.xml b/features-aggregator/odl-openflowplugin-nsf-model/pom.xml index 43b83a29d..99fcf29b9 100644 --- a/features-aggregator/odl-openflowplugin-nsf-model/pom.xml +++ b/features-aggregator/odl-openflowplugin-nsf-model/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin odl-openflowplugin-nsf-model feature - 0.18.0-SNAPSHOT + 0.18.0 OpenDaylight :: OpenflowPlugin :: NSF :: Model diff --git a/features-aggregator/odl-openflowplugin-southbound/pom.xml b/features-aggregator/odl-openflowplugin-southbound/pom.xml index cd2f9dbd3..3e0adaca1 100644 --- a/features-aggregator/odl-openflowplugin-southbound/pom.xml +++ b/features-aggregator/odl-openflowplugin-southbound/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin odl-openflowplugin-southbound feature - 0.18.0-SNAPSHOT + 0.18.0 OpenDaylight :: Openflow Plugin :: Li southbound API implementation @@ -43,7 +43,7 @@ org.opendaylight.serviceutils serviceutils-artifacts - 0.13.0-SNAPSHOT + 0.13.0 import pom diff --git a/features-aggregator/pom.xml b/features-aggregator/pom.xml index 22bb76806..0f412d9f7 100644 --- a/features-aggregator/pom.xml +++ b/features-aggregator/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin features-aggregator pom - 0.18.0-SNAPSHOT + 0.18.0 features-openflowplugin diff --git a/libraries/liblldp/pom.xml b/libraries/liblldp/pom.xml index 1e03a1997..0d6df4196 100644 --- a/libraries/liblldp/pom.xml +++ b/libraries/liblldp/pom.xml @@ -5,7 +5,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/libraries/pom.xml b/libraries/pom.xml index c206b7632..9ad24c2f4 100644 --- a/libraries/pom.xml +++ b/libraries/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin libraries-aggregator - 0.18.0-SNAPSHOT + 0.18.0 pom diff --git a/model/model-flow-base/pom.xml b/model/model-flow-base/pom.xml index c4e0f7108..d8fb9bffe 100644 --- a/model/model-flow-base/pom.xml +++ b/model/model-flow-base/pom.xml @@ -6,7 +6,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/model/model-flow-service/pom.xml b/model/model-flow-service/pom.xml index 9a7dcf0e9..b68d84675 100644 --- a/model/model-flow-service/pom.xml +++ b/model/model-flow-service/pom.xml @@ -6,7 +6,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/model/model-flow-statistics/pom.xml b/model/model-flow-statistics/pom.xml index e1c5cf748..538eed2c2 100644 --- a/model/model-flow-statistics/pom.xml +++ b/model/model-flow-statistics/pom.xml @@ -6,7 +6,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/model/model-inventory/pom.xml b/model/model-inventory/pom.xml index cf0305695..2bcdffff1 100644 --- a/model/model-inventory/pom.xml +++ b/model/model-inventory/pom.xml @@ -13,7 +13,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/model/model-topology/pom.xml b/model/model-topology/pom.xml index 25f1950b6..35d4ef690 100644 --- a/model/model-topology/pom.xml +++ b/model/model-topology/pom.xml @@ -13,7 +13,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/model/pom.xml b/model/pom.xml index 9fc75a21f..5613dc5dd 100644 --- a/model/pom.xml +++ b/model/pom.xml @@ -12,7 +12,7 @@ org.opendaylight.openflowplugin.model model-aggregator - 0.18.0-SNAPSHOT + 0.18.0 pom diff --git a/openflowjava/features-openflowjava-aggregator/features-openflowjava/pom.xml b/openflowjava/features-openflowjava-aggregator/features-openflowjava/pom.xml index 262d49387..01f3a2fef 100644 --- a/openflowjava/features-openflowjava-aggregator/features-openflowjava/pom.xml +++ b/openflowjava/features-openflowjava-aggregator/features-openflowjava/pom.xml @@ -10,7 +10,7 @@ org.opendaylight.openflowplugin.openflowjava features-openflowjava - 0.18.0-SNAPSHOT + 0.18.0 feature diff --git a/openflowjava/features-openflowjava-aggregator/odl-openflowjava-protocol/pom.xml b/openflowjava/features-openflowjava-aggregator/odl-openflowjava-protocol/pom.xml index 45bc304fc..f3fa2d568 100644 --- a/openflowjava/features-openflowjava-aggregator/odl-openflowjava-protocol/pom.xml +++ b/openflowjava/features-openflowjava-aggregator/odl-openflowjava-protocol/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin.openflowjava odl-openflowjava-protocol - 0.18.0-SNAPSHOT + 0.18.0 feature diff --git a/openflowjava/openflow-protocol-api/pom.xml b/openflowjava/openflow-protocol-api/pom.xml index d96f367fe..5a1196006 100644 --- a/openflowjava/openflow-protocol-api/pom.xml +++ b/openflowjava/openflow-protocol-api/pom.xml @@ -4,12 +4,12 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent org.opendaylight.openflowplugin.openflowjava openflow-protocol-api - 0.18.0-SNAPSHOT + 0.18.0 bundle diff --git a/openflowjava/openflow-protocol-impl/pom.xml b/openflowjava/openflow-protocol-impl/pom.xml index b850a1db1..f42cddc4c 100644 --- a/openflowjava/openflow-protocol-impl/pom.xml +++ b/openflowjava/openflow-protocol-impl/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin.openflowjava openflowjava-parent - 0.18.0-SNAPSHOT + 0.18.0 ../ openflow-protocol-impl diff --git a/openflowjava/openflow-protocol-it/pom.xml b/openflowjava/openflow-protocol-it/pom.xml index 84c218bde..e61067966 100644 --- a/openflowjava/openflow-protocol-it/pom.xml +++ b/openflowjava/openflow-protocol-it/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin.openflowjava openflowjava-parent - 0.18.0-SNAPSHOT + 0.18.0 ../ openflow-protocol-it diff --git a/openflowjava/openflow-protocol-spi/pom.xml b/openflowjava/openflow-protocol-spi/pom.xml index ae991e29b..4c81ea3c3 100644 --- a/openflowjava/openflow-protocol-spi/pom.xml +++ b/openflowjava/openflow-protocol-spi/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin.openflowjava openflowjava-parent - 0.18.0-SNAPSHOT + 0.18.0 ../ openflow-protocol-spi diff --git a/openflowjava/openflowjava-blueprint-config/pom.xml b/openflowjava/openflowjava-blueprint-config/pom.xml index f41a5f389..140de8590 100644 --- a/openflowjava/openflowjava-blueprint-config/pom.xml +++ b/openflowjava/openflowjava-blueprint-config/pom.xml @@ -10,7 +10,7 @@ org.opendaylight.openflowplugin.openflowjava openflowjava-parent - 0.18.0-SNAPSHOT + 0.18.0 ../ openflowjava-blueprint-config diff --git a/openflowjava/openflowjava-util/pom.xml b/openflowjava/openflowjava-util/pom.xml index 5bbf72759..a15c63509 100644 --- a/openflowjava/openflowjava-util/pom.xml +++ b/openflowjava/openflowjava-util/pom.xml @@ -5,7 +5,7 @@ org.opendaylight.openflowplugin.openflowjava openflowjava-parent - 0.18.0-SNAPSHOT + 0.18.0 ../ bundle diff --git a/openflowjava/pom.xml b/openflowjava/pom.xml index ceb6605fa..3c48d410e 100644 --- a/openflowjava/pom.xml +++ b/openflowjava/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../parent diff --git a/openflowplugin-api/pom.xml b/openflowplugin-api/pom.xml index b31b0725f..4d20f9ec8 100644 --- a/openflowplugin-api/pom.xml +++ b/openflowplugin-api/pom.xml @@ -5,7 +5,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../parent diff --git a/openflowplugin-blueprint-config/pom.xml b/openflowplugin-blueprint-config/pom.xml index 23488c3bb..41014f120 100644 --- a/openflowplugin-blueprint-config/pom.xml +++ b/openflowplugin-blueprint-config/pom.xml @@ -5,7 +5,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../parent diff --git a/openflowplugin-common/pom.xml b/openflowplugin-common/pom.xml index 8ea474cf1..723d818a9 100644 --- a/openflowplugin-common/pom.xml +++ b/openflowplugin-common/pom.xml @@ -5,7 +5,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../parent diff --git a/openflowplugin-impl/pom.xml b/openflowplugin-impl/pom.xml index b1d656aec..e5b76dd5d 100644 --- a/openflowplugin-impl/pom.xml +++ b/openflowplugin-impl/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../parent diff --git a/openflowplugin-it/pom.xml b/openflowplugin-it/pom.xml index f7ebc5adb..11fdb103a 100644 --- a/openflowplugin-it/pom.xml +++ b/openflowplugin-it/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../parent diff --git a/openflowplugin/pom.xml b/openflowplugin/pom.xml index 28eeb8052..785a2da62 100644 --- a/openflowplugin/pom.xml +++ b/openflowplugin/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../parent diff --git a/parent/pom.xml b/parent/pom.xml index 43a2d141e..f0fb2b886 100644 --- a/parent/pom.xml +++ b/parent/pom.xml @@ -19,7 +19,7 @@ 4.0.0 org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 pom @@ -55,7 +55,7 @@ org.opendaylight.serviceutils serviceutils-artifacts - 0.13.0-SNAPSHOT + 0.13.0 pom import diff --git a/pom.xml b/pom.xml index 3e8d9d4bb..ef61f7d58 100644 --- a/pom.xml +++ b/pom.xml @@ -4,12 +4,12 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 parent openflowplugin-aggregator - 0.18.0-SNAPSHOT + 0.18.0 openflowplugin pom diff --git a/samples/learning-switch/pom.xml b/samples/learning-switch/pom.xml index e406627be..0b9c8b6dd 100644 --- a/samples/learning-switch/pom.xml +++ b/samples/learning-switch/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/samples/pom.xml b/samples/pom.xml index 179cebe98..1692b498a 100644 --- a/samples/pom.xml +++ b/samples/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin openflowplugin-samples-aggregator - 0.18.0-SNAPSHOT + 0.18.0 pom diff --git a/samples/sample-bundles/pom.xml b/samples/sample-bundles/pom.xml index dae66491a..7ca12ff42 100644 --- a/samples/sample-bundles/pom.xml +++ b/samples/sample-bundles/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/samples/sample-consumer/pom.xml b/samples/sample-consumer/pom.xml index 654711441..346bcba7d 100644 --- a/samples/sample-consumer/pom.xml +++ b/samples/sample-consumer/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/samples/simple-client/pom.xml b/samples/simple-client/pom.xml index fbcaa26ba..24ae25209 100644 --- a/samples/simple-client/pom.xml +++ b/samples/simple-client/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../../parent diff --git a/test-common/pom.xml b/test-common/pom.xml index b23e75448..2942a8550 100644 --- a/test-common/pom.xml +++ b/test-common/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../parent test-common diff --git a/test-provider/pom.xml b/test-provider/pom.xml index b8c185457..e8d0d8437 100644 --- a/test-provider/pom.xml +++ b/test-provider/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.openflowplugin openflowplugin-parent - 0.18.0-SNAPSHOT + 0.18.0 ../parent test-provider -- 2.43.0