From d41fa8beefdab46c13b4de3922e7dbb71dcc8446 Mon Sep 17 00:00:00 2001 From: Faseela K Date: Wed, 10 Apr 2019 16:39:27 +0530 Subject: [PATCH] Bump mdsal version to 4.0.0 Change-Id: I54bba6b02dc673a5069d1baae7de9f9b7bb335a1 Signed-off-by: Faseela K --- .../tests/IdentifiedAceBuilder.java | 8 +++-- .../IdentifiedInterfaceWithAclBuilder.java | 5 +-- .../netvirt/bgpmanager/BgpManager.java | 3 +- coe/impl/pom.xml | 5 +++ .../coe/utils/AceNetworkPolicyUtils.java | 3 +- commons/binding-parent/pom.xml | 2 +- dhcpservice/impl/pom.xml | 5 +++ .../internal/ElanSmacFlowEventListener.java | 4 ++- .../elan/l2gw/ha/handlers/NodeCopier.java | 2 +- features/odl-netvirt-api/pom.xml | 2 +- .../utils/Ipv6PeriodicTrQueue.java | 3 +- natservice/impl/pom.xml | 10 ++++++ neutronvpn/impl/pom.xml | 5 +++ .../NeutronSecurityRuleListener.java | 3 +- .../netvirt/qosservice/QosAlertPortData.java | 5 +-- .../netvirt/qosservice/UuidUtil.java | 4 +-- .../sfc/classifier/utils/OpenFlow13Utils.java | 19 ++++++----- .../providers/OpenFlow13ProviderTest.java | 33 +++++++++++-------- .../InterfaceStateChangeListener.java | 4 +-- .../vpnmanager/VpnInterfaceManager.java | 3 +- 20 files changed, 84 insertions(+), 44 deletions(-) diff --git a/aclservice/impl/src/test/java/org/opendaylight/netvirt/aclservice/tests/IdentifiedAceBuilder.java b/aclservice/impl/src/test/java/org/opendaylight/netvirt/aclservice/tests/IdentifiedAceBuilder.java index a0be0564b6..bcacccf869 100644 --- a/aclservice/impl/src/test/java/org/opendaylight/netvirt/aclservice/tests/IdentifiedAceBuilder.java +++ b/aclservice/impl/src/test/java/org/opendaylight/netvirt/aclservice/tests/IdentifiedAceBuilder.java @@ -10,7 +10,6 @@ package org.opendaylight.netvirt.aclservice.tests; import static org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType.CONFIGURATION; import java.util.Optional; -import javax.annotation.concurrent.NotThreadSafe; import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType; import org.opendaylight.netvirt.aclservice.tests.infra.DataTreeIdentifierDataObjectPairBuilder; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.AccessLists; @@ -29,8 +28,11 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.aclservice.rev16060 import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.aclservice.rev160608.SecurityRuleAttr; import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.aclservice.rev160608.SecurityRuleAttrBuilder; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; +import org.opendaylight.yangtools.yang.common.Empty; -@NotThreadSafe +/** + * This class is not ThreadSafe. + */ public class IdentifiedAceBuilder implements DataTreeIdentifierDataObjectPairBuilder { private String sgUuid; @@ -62,7 +64,7 @@ public class IdentifiedAceBuilder implements DataTreeIdentifierDataObjectPairBui .setMatches(matches) .setActions(new ActionsBuilder() .setPacketHandling(new PermitBuilder() - .setPermit(true).build() + .setPermit(Empty.getInstance()).build() ).build() ) .addAugmentation(SecurityRuleAttr.class, new SecurityRuleAttrBuilder() diff --git a/aclservice/impl/src/test/java/org/opendaylight/netvirt/aclservice/tests/IdentifiedInterfaceWithAclBuilder.java b/aclservice/impl/src/test/java/org/opendaylight/netvirt/aclservice/tests/IdentifiedInterfaceWithAclBuilder.java index 16519ef16c..ae7b5850d6 100644 --- a/aclservice/impl/src/test/java/org/opendaylight/netvirt/aclservice/tests/IdentifiedInterfaceWithAclBuilder.java +++ b/aclservice/impl/src/test/java/org/opendaylight/netvirt/aclservice/tests/IdentifiedInterfaceWithAclBuilder.java @@ -11,7 +11,6 @@ import static org.opendaylight.controller.md.sal.common.api.data.LogicalDatastor import java.util.ArrayList; import java.util.List; -import javax.annotation.concurrent.NotThreadSafe; import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType; import org.opendaylight.netvirt.aclservice.tests.infra.DataTreeIdentifierDataObjectPairBuilder; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.iana._if.type.rev170119.L2vlan; @@ -26,7 +25,9 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.aclservice.rev16060 import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.aclservice.rev160608.interfaces._interface.SubnetInfo; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; -@NotThreadSafe +/** + * This class is not ThreadSafe. + */ public class IdentifiedInterfaceWithAclBuilder implements DataTreeIdentifierDataObjectPairBuilder { private String interfaceName; diff --git a/bgpmanager/impl/src/main/java/org/opendaylight/netvirt/bgpmanager/BgpManager.java b/bgpmanager/impl/src/main/java/org/opendaylight/netvirt/bgpmanager/BgpManager.java index 663ad2ae2c..220facd43b 100644 --- a/bgpmanager/impl/src/main/java/org/opendaylight/netvirt/bgpmanager/BgpManager.java +++ b/bgpmanager/impl/src/main/java/org/opendaylight/netvirt/bgpmanager/BgpManager.java @@ -10,6 +10,7 @@ package org.opendaylight.netvirt.bgpmanager; import com.google.common.base.Optional; import com.google.common.util.concurrent.FutureCallback; import com.google.common.util.concurrent.Futures; +import com.google.common.util.concurrent.MoreExecutors; import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.util.ArrayList; import java.util.Collection; @@ -233,7 +234,7 @@ public class BgpManager implements AutoCloseable, IBgpManager { LOG.error("withdrwaPrefixIfPresent: Failed to retrieve ebgp networks for rd {} prefix {}", rd, prefix, throwable); } - }); + }, MoreExecutors.directExecutor()); } } diff --git a/coe/impl/pom.xml b/coe/impl/pom.xml index 83281d82ec..35cbc5ea43 100644 --- a/coe/impl/pom.xml +++ b/coe/impl/pom.xml @@ -86,6 +86,11 @@ and is available at http://www.eclipse.org/legal/epl-v10.html org.opendaylight.serviceutils tools-api + + com.google.code.findbugs + jsr305 + true + org.apache.aries.blueprint blueprint-maven-plugin-annotation diff --git a/coe/impl/src/main/java/org/opendaylight/netvirt/coe/utils/AceNetworkPolicyUtils.java b/coe/impl/src/main/java/org/opendaylight/netvirt/coe/utils/AceNetworkPolicyUtils.java index 031ae5f052..1b8e110479 100644 --- a/coe/impl/src/main/java/org/opendaylight/netvirt/coe/utils/AceNetworkPolicyUtils.java +++ b/coe/impl/src/main/java/org/opendaylight/netvirt/coe/utils/AceNetworkPolicyUtils.java @@ -46,6 +46,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.aclservice.rev16060 import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.aclservice.rev160608.DirectionIngress; import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.aclservice.rev160608.SecurityRuleAttr; import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.aclservice.rev160608.SecurityRuleAttrBuilder; +import org.opendaylight.yangtools.yang.common.Empty; public final class AceNetworkPolicyUtils { private AceNetworkPolicyUtils() {} @@ -136,7 +137,7 @@ public final class AceNetworkPolicyUtils { MatchesBuilder matchesBuilder = new MatchesBuilder(); matchesBuilder.setAceType(aceIpBuilder.build()); ActionsBuilder actionsBuilder = new ActionsBuilder(); - actionsBuilder.setPacketHandling(new PermitBuilder().setPermit(true).build()); + actionsBuilder.setPacketHandling(new PermitBuilder().setPermit(Empty.getInstance()).build()); AceBuilder aceBuilder = new AceBuilder(); aceBuilder.setRuleName(ruleName); diff --git a/commons/binding-parent/pom.xml b/commons/binding-parent/pom.xml index 69c469cc5f..2510050931 100644 --- a/commons/binding-parent/pom.xml +++ b/commons/binding-parent/pom.xml @@ -11,7 +11,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html org.opendaylight.mdsal binding-parent - 3.0.6 + 4.0.0 diff --git a/dhcpservice/impl/pom.xml b/dhcpservice/impl/pom.xml index f1098ba431..e993c04bff 100644 --- a/dhcpservice/impl/pom.xml +++ b/dhcpservice/impl/pom.xml @@ -103,6 +103,11 @@ and is available at http://www.eclipse.org/legal/epl-v10.html org.opendaylight.serviceutils tools-api + + com.google.code.findbugs + jsr305 + true + diff --git a/elanmanager/impl/src/main/java/org/opendaylight/netvirt/elan/internal/ElanSmacFlowEventListener.java b/elanmanager/impl/src/main/java/org/opendaylight/netvirt/elan/internal/ElanSmacFlowEventListener.java index d390023cdf..542adf6fbb 100644 --- a/elanmanager/impl/src/main/java/org/opendaylight/netvirt/elan/internal/ElanSmacFlowEventListener.java +++ b/elanmanager/impl/src/main/java/org/opendaylight/netvirt/elan/internal/ElanSmacFlowEventListener.java @@ -14,12 +14,14 @@ import com.google.common.base.Optional; 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 java.math.BigInteger; import java.util.ArrayList; import java.util.List; import java.util.Locale; import javax.inject.Inject; import javax.inject.Singleton; + import org.opendaylight.controller.md.sal.binding.api.DataBroker; import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType; import org.opendaylight.genius.infra.ManagedNewTransactionRunner; @@ -154,7 +156,7 @@ public class ElanSmacFlowEventListener implements SalFlowListener { public void onFailure(Throwable error) { LOG.debug("Error {} while removing macEntry {} from Operational Datastore", error, srcMacAddress); } - }); + }, MoreExecutors.directExecutor()); } @Override diff --git a/elanmanager/impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/ha/handlers/NodeCopier.java b/elanmanager/impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/ha/handlers/NodeCopier.java index 749583e52c..daeb952b30 100644 --- a/elanmanager/impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/ha/handlers/NodeCopier.java +++ b/elanmanager/impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/ha/handlers/NodeCopier.java @@ -171,7 +171,7 @@ public class NodeCopier { @Override public void onFailure(Throwable throwable) { } - }); + }, MoreExecutors.directExecutor()); return; } NodeBuilder dstPsNodeBuilder = HwvtepHAUtil.getNodeBuilderForPath(dstPsPath); diff --git a/features/odl-netvirt-api/pom.xml b/features/odl-netvirt-api/pom.xml index d378643b08..97e8cbf906 100644 --- a/features/odl-netvirt-api/pom.xml +++ b/features/odl-netvirt-api/pom.xml @@ -34,7 +34,7 @@ org.opendaylight.mdsal mdsal-artifacts - 3.0.6 + 4.0.0 import pom diff --git a/ipv6service/impl/src/main/java/org/opendaylight/netvirt/ipv6service/utils/Ipv6PeriodicTrQueue.java b/ipv6service/impl/src/main/java/org/opendaylight/netvirt/ipv6service/utils/Ipv6PeriodicTrQueue.java index a17adef3a5..85b7ef96d7 100644 --- a/ipv6service/impl/src/main/java/org/opendaylight/netvirt/ipv6service/utils/Ipv6PeriodicTrQueue.java +++ b/ipv6service/impl/src/main/java/org/opendaylight/netvirt/ipv6service/utils/Ipv6PeriodicTrQueue.java @@ -14,7 +14,8 @@ import java.util.concurrent.TimeUnit; import java.util.concurrent.locks.Condition; import java.util.concurrent.locks.ReentrantLock; import java.util.function.Consumer; -import javax.annotation.concurrent.GuardedBy; + +import org.checkerframework.checker.lock.qual.GuardedBy; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/natservice/impl/pom.xml b/natservice/impl/pom.xml index b022f61082..b4dc39078b 100644 --- a/natservice/impl/pom.xml +++ b/natservice/impl/pom.xml @@ -127,11 +127,21 @@ and is available at http://www.eclipse.org/legal/epl-v10.html org.apache.karaf.shell.commands provided + + com.google.code.findbugs + jsr305 + true + org.apache.karaf.shell org.apache.karaf.shell.console provided + + org.mockito + mockito-core + test + org.powermock powermock-api-mockito2 diff --git a/neutronvpn/impl/pom.xml b/neutronvpn/impl/pom.xml index 8e779483f3..b5ecdd984c 100644 --- a/neutronvpn/impl/pom.xml +++ b/neutronvpn/impl/pom.xml @@ -151,6 +151,11 @@ and is available at http://www.eclipse.org/legal/epl-v10.html ipv6util-api ${genius.version} + + com.google.code.findbugs + jsr305 + true + diff --git a/neutronvpn/impl/src/main/java/org/opendaylight/netvirt/neutronvpn/NeutronSecurityRuleListener.java b/neutronvpn/impl/src/main/java/org/opendaylight/netvirt/neutronvpn/NeutronSecurityRuleListener.java index 960787330c..e4c6414f6f 100644 --- a/neutronvpn/impl/src/main/java/org/opendaylight/netvirt/neutronvpn/NeutronSecurityRuleListener.java +++ b/neutronvpn/impl/src/main/java/org/opendaylight/netvirt/neutronvpn/NeutronSecurityRuleListener.java @@ -55,6 +55,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.secgroups.rev150712 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.secgroups.rev150712.security.rules.attributes.SecurityRules; import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.secgroups.rev150712.security.rules.attributes.security.rules.SecurityRule; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; +import org.opendaylight.yangtools.yang.common.Empty; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -164,7 +165,7 @@ public class NeutronSecurityRuleListener matchesBuilder.setAceType(aceIpBuilder.build()); // set acl action as permit for the security rule ActionsBuilder actionsBuilder = new ActionsBuilder(); - actionsBuilder.setPacketHandling(new PermitBuilder().setPermit(true).build()); + actionsBuilder.setPacketHandling(new PermitBuilder().setPermit(Empty.getInstance()).build()); AceBuilder aceBuilder = new AceBuilder(); aceBuilder.withKey(new AceKey(securityRule.getUuid().getValue())); diff --git a/qosservice/impl/src/main/java/org/opendaylight/netvirt/qosservice/QosAlertPortData.java b/qosservice/impl/src/main/java/org/opendaylight/netvirt/qosservice/QosAlertPortData.java index 5ee186d115..ed6bb20200 100644 --- a/qosservice/impl/src/main/java/org/opendaylight/netvirt/qosservice/QosAlertPortData.java +++ b/qosservice/impl/src/main/java/org/opendaylight/netvirt/qosservice/QosAlertPortData.java @@ -10,14 +10,15 @@ package org.opendaylight.netvirt.qosservice; import java.math.BigInteger; import java.util.function.Supplier; -import javax.annotation.concurrent.NotThreadSafe; import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.ports.rev150712.ports.attributes.ports.Port; import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.qos.rev160613.qos.attributes.qos.policies.QosPolicy; import org.opendaylight.yang.gen.v1.urn.opendaylight.port.statistics.rev131214.node.connector.statistics.and.port.number.map.NodeConnectorStatisticsAndPortNumberMap; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -@NotThreadSafe +/** + * This class is ThreadSafe. + */ public class QosAlertPortData { private static final Logger LOG = LoggerFactory.getLogger(QosAlertPortData.class); private static final BigInteger BIG_HUNDRED = new BigInteger("100"); diff --git a/qosservice/impl/src/main/java/org/opendaylight/netvirt/qosservice/UuidUtil.java b/qosservice/impl/src/main/java/org/opendaylight/netvirt/qosservice/UuidUtil.java index cfac681f49..bcea351e30 100644 --- a/qosservice/impl/src/main/java/org/opendaylight/netvirt/qosservice/UuidUtil.java +++ b/qosservice/impl/src/main/java/org/opendaylight/netvirt/qosservice/UuidUtil.java @@ -10,15 +10,13 @@ package org.opendaylight.netvirt.qosservice; import com.google.common.base.Optional; import com.google.common.base.Preconditions; import java.util.regex.Pattern; -import javax.annotation.concurrent.ThreadSafe; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid; /** * Utility for {@link Uuid}. - * + * This class is ThreadSafe. * @author Michael Vorburger.ch */ -@ThreadSafe class UuidUtil { private Pattern uuidPattern; diff --git a/sfc/classifier/impl/src/main/java/org/opendaylight/netvirt/sfc/classifier/utils/OpenFlow13Utils.java b/sfc/classifier/impl/src/main/java/org/opendaylight/netvirt/sfc/classifier/utils/OpenFlow13Utils.java index 1bdc11b51e..1cff916111 100644 --- a/sfc/classifier/impl/src/main/java/org/opendaylight/netvirt/sfc/classifier/utils/OpenFlow13Utils.java +++ b/sfc/classifier/impl/src/main/java/org/opendaylight/netvirt/sfc/classifier/utils/OpenFlow13Utils.java @@ -95,6 +95,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.ni import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.nicira.match.rev140714.nxm.nx.reg.grouping.NxmNxRegBuilder; import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.nicira.match.rev140714.nxm.nx.tun.id.grouping.NxmNxTunIdBuilder; import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.nicira.match.rev140714.nxm.nx.tun.ipv4.dst.grouping.NxmNxTunIpv4DstBuilder; +import org.opendaylight.yangtools.yang.common.Empty; public final class OpenFlow13Utils { public static final long ETHERTYPE_NSH = 0x894f; @@ -183,7 +184,7 @@ public final class OpenFlow13Utils { public static Action createActionNxLoadTunIpv4Dst(long value, int order) { ActionBuilder ab = createActionBuilder(order); - ab.setAction(nxLoadRegAction(new DstNxTunIpv4DstCaseBuilder().setNxTunIpv4Dst(Boolean.TRUE).build(), + ab.setAction(nxLoadRegAction(new DstNxTunIpv4DstCaseBuilder().setNxTunIpv4Dst(Empty.getInstance()).build(), BigInteger.valueOf(value), 0,31, false)); return ab.build(); @@ -191,7 +192,7 @@ public final class OpenFlow13Utils { public static Action createActionNxLoadTunId(long value, int order) { ActionBuilder ab = createActionBuilder(order); - ab.setAction(nxLoadRegAction(new DstNxTunIdCaseBuilder().setNxTunId(Boolean.TRUE).build(), + ab.setAction(nxLoadRegAction(new DstNxTunIdCaseBuilder().setNxTunId(Empty.getInstance()).build(), BigInteger.valueOf(value), 0,31, false)); return ab.build(); @@ -221,8 +222,8 @@ public final class OpenFlow13Utils { public static Action createActionNxMoveTunIdToNsc2Register(int order) { ActionBuilder ab = createActionBuilder(order); - ab.setAction(nxMoveRegAction(new SrcNxTunIdCaseBuilder().setNxTunId(Boolean.TRUE).build(), 0, 31, - new DstNxNshc2CaseBuilder().setNxNshc2Dst(Boolean.TRUE).build(), 0, 31, + ab.setAction(nxMoveRegAction(new SrcNxTunIdCaseBuilder().setNxTunId(Empty.getInstance()).build(), 0, 31, + new DstNxNshc2CaseBuilder().setNxNshc2Dst(Empty.getInstance()).build(), 0, 31, false)); return ab.build(); @@ -232,7 +233,7 @@ public final class OpenFlow13Utils { ActionBuilder ab = createActionBuilder(order); ab.setAction(nxMoveRegAction( new SrcNxRegCaseBuilder().setNxReg(NxmNxReg0.class).build(), 0, 31, - new DstNxNshc1CaseBuilder().setNxNshc1Dst(Boolean.TRUE).build(), 0,31, + new DstNxNshc1CaseBuilder().setNxNshc1Dst(Empty.getInstance()).build(), 0,31, false)); return ab.build(); @@ -241,7 +242,7 @@ public final class OpenFlow13Utils { public static Action createActionNxMoveReg6ToNsc4Register(int order) { ActionBuilder ab = createActionBuilder(order); ab.setAction(nxMoveRegAction(new SrcNxRegCaseBuilder().setNxReg(NxmNxReg6.class).build(), 0, 31, - new DstNxNshc4CaseBuilder().setNxNshc4Dst(Boolean.TRUE).build(), 0, 31, + new DstNxNshc4CaseBuilder().setNxNshc4Dst(Empty.getInstance()).build(), 0, 31, false)); return ab.build(); @@ -249,7 +250,7 @@ public final class OpenFlow13Utils { public static Action createActionNxMoveNsc4ToReg6Register(int order) { ActionBuilder ab = createActionBuilder(order); - ab.setAction(nxMoveRegAction(new SrcNxNshc4CaseBuilder().setNxNshc4Dst(Boolean.TRUE).build(), 0, 31, + ab.setAction(nxMoveRegAction(new SrcNxNshc4CaseBuilder().setNxNshc4Dst(Empty.getInstance()).build(), 0, 31, new DstNxRegCaseBuilder().setNxReg(NxmNxReg6.class).build(), 0, 31, false)); @@ -270,7 +271,7 @@ public final class OpenFlow13Utils { ab.setAction(nxMoveRegAction( // Move NSP from the 3 most significant bytes new SrcNxRegCaseBuilder().setNxReg(NxmNxReg2.class).build(), 8, 31, - new DstNxNspCaseBuilder().setNxNspDst(true).build(), 0, 23, + new DstNxNspCaseBuilder().setNxNspDst(Empty.getInstance()).build(), 0, 23, false)); return ab.build(); @@ -290,7 +291,7 @@ public final class OpenFlow13Utils { ab.setAction(nxMoveRegAction( // Move NSI from the least significant byte new SrcNxRegCaseBuilder().setNxReg(NxmNxReg2.class).build(), 0, 7, - new DstNxNsiCaseBuilder().setNxNsiDst(true).build(), 0, 7, + new DstNxNsiCaseBuilder().setNxNsiDst(Empty.getInstance()).build(), 0, 7, false)); return ab.build(); diff --git a/sfc/classifier/impl/src/test/java/org/opendaylight/netvirt/sfc/classifier/providers/OpenFlow13ProviderTest.java b/sfc/classifier/impl/src/test/java/org/opendaylight/netvirt/sfc/classifier/providers/OpenFlow13ProviderTest.java index d869c801e6..b5b50d8a8d 100644 --- a/sfc/classifier/impl/src/test/java/org/opendaylight/netvirt/sfc/classifier/providers/OpenFlow13ProviderTest.java +++ b/sfc/classifier/impl/src/test/java/org/opendaylight/netvirt/sfc/classifier/providers/OpenFlow13ProviderTest.java @@ -61,6 +61,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.ni import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.nicira.action.rev140714.src.choice.grouping.src.choice.SrcNxRegCase; import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.nicira.action.rev140714.src.choice.grouping.src.choice.SrcNxTunIdCase; import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.nicira.match.rev140714.NxAugMatchNodesNodeTableFlow; +import org.opendaylight.yangtools.yang.common.Empty; public class OpenFlow13ProviderTest { @@ -556,7 +557,7 @@ public class OpenFlow13ProviderTest { NxActionRegLoadNodesNodeTableFlowApplyActionsCase regLoad = (NxActionRegLoadNodesNodeTableFlowApplyActionsCase) action.getAction(); DstNxTunIpv4DstCase tunDstTypeCase = (DstNxTunIpv4DstCase) regLoad.getNxRegLoad().getDst().getDstChoice(); - assertTrue(tunDstTypeCase.isNxTunIpv4Dst()); + assertEquals(Empty.getInstance(), tunDstTypeCase.getNxTunIpv4Dst()); assertEquals(regLoad.getNxRegLoad().getValue().longValue(), ipl); } @@ -564,7 +565,7 @@ public class OpenFlow13ProviderTest { NxActionRegLoadNodesNodeTableFlowApplyActionsCase regLoad = (NxActionRegLoadNodesNodeTableFlowApplyActionsCase) action.getAction(); DstNxTunIdCase mdTypeCase = (DstNxTunIdCase) regLoad.getNxRegLoad().getDst().getDstChoice(); - assertTrue(mdTypeCase.isNxTunId()); + assertEquals(Empty.getInstance(), mdTypeCase.getNxTunId()); assertEquals(regLoad.getNxRegLoad().getValue().longValue(), tunId); } @@ -577,9 +578,11 @@ public class OpenFlow13ProviderTest { NxActionRegMoveNodesNodeTableFlowApplyActionsCase regMove = (NxActionRegMoveNodesNodeTableFlowApplyActionsCase) action.getAction(); if (checkSrc) { - assertTrue(((SrcNxNspCase) regMove.getNxRegMove().getSrc().getSrcChoice()).isNxNspDst()); + assertEquals(Empty.getInstance(), ((SrcNxNspCase) regMove.getNxRegMove() + .getSrc().getSrcChoice()).getNxNspDst()); } else { - assertTrue(((DstNxNspCase) regMove.getNxRegMove().getDst().getDstChoice()).isNxNspDst()); + assertEquals(Empty.getInstance(), ((DstNxNspCase) regMove.getNxRegMove() + .getDst().getDstChoice()).getNxNspDst()); } } @@ -587,9 +590,11 @@ public class OpenFlow13ProviderTest { NxActionRegMoveNodesNodeTableFlowApplyActionsCase regMove = (NxActionRegMoveNodesNodeTableFlowApplyActionsCase) action.getAction(); if (checkSrc) { - assertTrue(((SrcNxNsiCase) regMove.getNxRegMove().getSrc().getSrcChoice()).isNxNsiDst()); + assertEquals(Empty.getInstance(), ((SrcNxNsiCase) regMove.getNxRegMove() + .getSrc().getSrcChoice()).getNxNsiDst()); } else { - assertTrue(((DstNxNsiCase) regMove.getNxRegMove().getDst().getDstChoice()).isNxNsiDst()); + assertEquals(Empty.getInstance(), ((DstNxNsiCase) regMove.getNxRegMove() + .getDst().getDstChoice()).getNxNsiDst()); } } @@ -598,10 +603,10 @@ public class OpenFlow13ProviderTest { (NxActionRegMoveNodesNodeTableFlowApplyActionsCase) action.getAction(); if (checkSrc) { SrcNxNshc1Case src = (SrcNxNshc1Case) regMove.getNxRegMove().getSrc().getSrcChoice(); - assertTrue(src.isNxNshc1Dst()); + assertEquals(Empty.getInstance(), src.getNxNshc1Dst()); } else { DstNxNshc1Case dst = (DstNxNshc1Case) regMove.getNxRegMove().getDst().getDstChoice(); - assertTrue(dst.isNxNshc1Dst()); + assertEquals(Empty.getInstance(), dst.getNxNshc1Dst()); } } @@ -610,10 +615,10 @@ public class OpenFlow13ProviderTest { (NxActionRegMoveNodesNodeTableFlowApplyActionsCase) action.getAction(); if (checkSrc) { SrcNxNshc2Case src = (SrcNxNshc2Case) regMove.getNxRegMove().getSrc().getSrcChoice(); - assertTrue(src.isNxNshc2Dst()); + assertEquals(Empty.getInstance(), src.getNxNshc2Dst()); } else { DstNxNshc2Case dst = (DstNxNshc2Case) regMove.getNxRegMove().getDst().getDstChoice(); - assertTrue(dst.isNxNshc2Dst()); + assertEquals(Empty.getInstance(), dst.getNxNshc2Dst()); } } @@ -622,10 +627,10 @@ public class OpenFlow13ProviderTest { (NxActionRegMoveNodesNodeTableFlowApplyActionsCase) action.getAction(); if (checkSrc) { SrcNxNshc4Case src = (SrcNxNshc4Case) regMove.getNxRegMove().getSrc().getSrcChoice(); - assertTrue(src.isNxNshc4Dst()); + assertEquals(Empty.getInstance(), src.getNxNshc4Dst()); } else { DstNxNshc4Case dst = (DstNxNshc4Case) regMove.getNxRegMove().getDst().getDstChoice(); - assertTrue(dst.isNxNshc4Dst()); + assertEquals(Empty.getInstance(), dst.getNxNshc4Dst()); } } @@ -634,10 +639,10 @@ public class OpenFlow13ProviderTest { (NxActionRegMoveNodesNodeTableFlowApplyActionsCase) action.getAction(); if (checkSrc) { SrcNxTunIdCase src = (SrcNxTunIdCase) regMove.getNxRegMove().getSrc().getSrcChoice(); - assertTrue(src.isNxTunId()); + assertEquals(Empty.getInstance(), src.getNxTunId()); } else { DstNxTunIdCase dst = (DstNxTunIdCase) regMove.getNxRegMove().getDst().getDstChoice(); - assertTrue(dst.isNxTunId()); + assertEquals(Empty.getInstance(), dst.getNxTunId()); } } diff --git a/vpnmanager/impl/src/main/java/org/opendaylight/netvirt/vpnmanager/InterfaceStateChangeListener.java b/vpnmanager/impl/src/main/java/org/opendaylight/netvirt/vpnmanager/InterfaceStateChangeListener.java index 8af6870843..343928b6b7 100644 --- a/vpnmanager/impl/src/main/java/org/opendaylight/netvirt/vpnmanager/InterfaceStateChangeListener.java +++ b/vpnmanager/impl/src/main/java/org/opendaylight/netvirt/vpnmanager/InterfaceStateChangeListener.java @@ -180,7 +180,7 @@ public class InterfaceStateChangeListener futures.add(configFuture); //TODO: Allow immediateFailedFuture from writeCfgTxn to cancel writeInvTxn as well. Futures.addCallback(configFuture, new PostVpnInterfaceThreadWorker(intrf.getName(), true, - "Operational")); + "Operational"), MoreExecutors.directExecutor()); })); return futures; }); @@ -246,7 +246,7 @@ public class InterfaceStateChangeListener }))))); futures.add(configFuture); Futures.addCallback(configFuture, new PostVpnInterfaceThreadWorker(intrf.getName(), false, - "Operational")); + "Operational"), MoreExecutors.directExecutor()); return futures; }, DJC_MAX_RETRIES); } diff --git a/vpnmanager/impl/src/main/java/org/opendaylight/netvirt/vpnmanager/VpnInterfaceManager.java b/vpnmanager/impl/src/main/java/org/opendaylight/netvirt/vpnmanager/VpnInterfaceManager.java index 62e9f17ac3..f036f552d7 100755 --- a/vpnmanager/impl/src/main/java/org/opendaylight/netvirt/vpnmanager/VpnInterfaceManager.java +++ b/vpnmanager/impl/src/main/java/org/opendaylight/netvirt/vpnmanager/VpnInterfaceManager.java @@ -1318,7 +1318,8 @@ public class VpnInterfaceManager extends AsyncDataTreeChangeListenerBase