import org.opendaylight.genius.mdsalutil.ActionInfo;
import org.opendaylight.genius.mdsalutil.InstructionInfo;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MatchInfoBase;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.actions.ActionDrop;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchArpSha;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
import org.opendaylight.genius.utils.ServiceIndex;
import org.opendaylight.netvirt.aclservice.api.AclServiceManager.Action;
import org.opendaylight.netvirt.aclservice.utils.AclConstants;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.acl.access.list.entries.ace.Matches;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.acl.access.list.entries.ace.matches.AceType;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.acl.access.list.entries.ace.matches.ace.type.AceIp;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.Instruction;
import org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.servicebinding.rev160406.ServiceModeIngress;
protected void programArpRule(BigInteger dpId, List<AllowedAddressPairs> allowedAddresses, int lportTag,
int addOrRemove) {
for (AllowedAddressPairs allowedAddress : allowedAddresses) {
- String attachMac = allowedAddress.getMacAddress().getValue();
+ MacAddress attachMac = allowedAddress.getMacAddress();
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type, new long[] {NwConstants.ETHTYPE_ARP}));
- matches.add(new MatchInfo(MatchFieldType.arp_sha, new String[] {attachMac}));
+ matches.add(MatchEthernetType.ARP);
+ matches.add(new MatchArpSha(attachMac));
matches.add(AclServiceUtils.buildLPortTagMatch(lportTag));
List<InstructionInfo> instructions = getDispatcherTableResubmitInstructions(new ArrayList<>());
- String flowName = "Egress_ARP_" + dpId + "_" + attachMac;
+ String flowName = "Egress_ARP_" + dpId + "_" + attachMac.getValue();
syncFlow(dpId, NwConstants.INGRESS_ACL_TABLE, flowName,
AclConstants.PROTO_ARP_TRAFFIC_MATCH_PRIORITY, "ACL", 0, 0,
AclConstants.COOKIE_ACL_BASE, matches, instructions, addOrRemove);
import org.opendaylight.genius.mdsalutil.ActionInfo;
import org.opendaylight.genius.mdsalutil.InstructionInfo;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MatchInfoBase;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
import org.opendaylight.genius.utils.ServiceIndex;
import org.opendaylight.netvirt.aclservice.api.AclServiceManager.Action;
import org.opendaylight.netvirt.aclservice.utils.AclConstants;
*/
protected void programArpRule(BigInteger dpId, int lportTag, int addOrRemove) {
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type, new long[] {NwConstants.ETHTYPE_ARP}));
+ matches.add(MatchEthernetType.ARP);
matches.add(AclServiceUtils.buildLPortTagMatch(lportTag));
List<InstructionInfo> instructions = getDispatcherTableResubmitInstructions(new ArrayList<>());
import org.opendaylight.controller.md.sal.binding.api.DataBroker;
import org.opendaylight.genius.mdsalutil.ActionInfo;
import org.opendaylight.genius.mdsalutil.InstructionInfo;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
-import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MatchInfoBase;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.NxMatchFieldType;
import org.opendaylight.genius.mdsalutil.actions.ActionNxConntrack;
import org.opendaylight.genius.mdsalutil.instructions.InstructionApplyActions;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetSource;
import org.opendaylight.netvirt.aclservice.api.AclServiceManager.Action;
import org.opendaylight.netvirt.aclservice.api.AclServiceManager.MatchCriteria;
import org.opendaylight.netvirt.aclservice.utils.AclConstants;
import org.opendaylight.netvirt.aclservice.utils.AclDataUtil;
import org.opendaylight.netvirt.aclservice.utils.AclServiceUtils;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.acl.access.list.entries.Ace;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress;
import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.aclservice.rev160608.IpPrefixOrAddress;
import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.aclservice.rev160608.interfaces._interface.AllowedAddressPairs;
import org.slf4j.Logger;
Integer priority, String flowId, String portId, int addOrRemove) {
for (AllowedAddressPairs allowedAddress : allowedAddresses) {
IpPrefixOrAddress attachIp = allowedAddress.getIpAddress();
- String attachMac = allowedAddress.getMacAddress().getValue();
+ MacAddress attachMac = allowedAddress.getMacAddress();
List<MatchInfoBase> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_src, new String[] {attachMac}));
+ matches.add(new MatchEthernetSource(attachMac));
matches.addAll(AclServiceUtils.buildIpMatches(attachIp, MatchCriteria.MATCH_SOURCE));
Long elanTag = AclServiceUtils.getElanIdFromInterface(portId, dataBroker);
actionsInfos.add(new ActionNxConntrack(2, 0, 0, elanTag.intValue(), NwConstants.INGRESS_ACL_FILTER_TABLE));
instructions.add(new InstructionApplyActions(actionsInfos));
- String flowName = "Egress_Fixed_Conntrk_" + dpId + "_" + attachMac + "_"
+ String flowName = "Egress_Fixed_Conntrk_" + dpId + "_" + attachMac.getValue() + "_"
+ String.valueOf(attachIp.getValue()) + "_" + flowId;
syncFlow(dpId, NwConstants.INGRESS_ACL_TABLE, flowName, AclConstants.PROTO_MATCH_PRIORITY, "ACL", 0, 0,
AclConstants.COOKIE_ACL_BASE, matches, instructions, addOrRemove);
import org.opendaylight.controller.md.sal.binding.api.DataBroker;
import org.opendaylight.genius.mdsalutil.ActionInfo;
import org.opendaylight.genius.mdsalutil.InstructionInfo;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
-import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MatchInfoBase;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.NxMatchFieldType;
import org.opendaylight.genius.mdsalutil.actions.ActionNxConntrack;
import org.opendaylight.genius.mdsalutil.instructions.InstructionApplyActions;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetDestination;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
import org.opendaylight.netvirt.aclservice.api.AclServiceManager.Action;
import org.opendaylight.netvirt.aclservice.api.AclServiceManager.MatchCriteria;
import org.opendaylight.netvirt.aclservice.utils.AclConstants;
import org.opendaylight.netvirt.aclservice.utils.AclDataUtil;
import org.opendaylight.netvirt.aclservice.utils.AclServiceUtils;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.acl.access.list.entries.Ace;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress;
import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.aclservice.rev160608.IpPrefixOrAddress;
import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.aclservice.rev160608.interfaces._interface.AllowedAddressPairs;
import org.slf4j.Logger;
Integer priority, String flowId, String portId, int addOrRemove) {
for (AllowedAddressPairs allowedAddress : allowedAddresses) {
IpPrefixOrAddress attachIp = allowedAddress.getIpAddress();
- String attachMac = allowedAddress.getMacAddress().getValue();
+ MacAddress attachMac = allowedAddress.getMacAddress();
List<MatchInfoBase> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type, new long[] { NwConstants.ETHTYPE_IPV4 }));
- matches.add(new MatchInfo(MatchFieldType.eth_dst, new String[] { attachMac }));
+ matches.add(MatchEthernetType.IPV4);
+ matches.add(new MatchEthernetDestination(attachMac));
matches.addAll(AclServiceUtils.buildIpMatches(attachIp, MatchCriteria.MATCH_DESTINATION));
List<InstructionInfo> instructions = new ArrayList<>();
Long elanTag = AclServiceUtils.getElanIdFromInterface(portId, dataBroker);
actionsInfos.add(new ActionNxConntrack(2, 0, 0, elanTag.intValue(), NwConstants.EGRESS_ACL_FILTER_TABLE));
instructions.add(new InstructionApplyActions(actionsInfos));
- String flowName = "Ingress_Fixed_Conntrk_" + dpId + "_" + attachMac + "_"
+ String flowName = "Ingress_Fixed_Conntrk_" + dpId + "_" + attachMac.getValue() + "_"
+ String.valueOf(attachIp.getValue()) + "_" + flowId;
syncFlow(dpId, NwConstants.EGRESS_ACL_TABLE, flowName, AclConstants.PROTO_MATCH_PRIORITY, "ACL", 0, 0,
AclConstants.COOKIE_ACL_BASE, matches, instructions, addOrRemove);
import org.opendaylight.controller.md.sal.binding.api.DataBroker;
import org.opendaylight.genius.mdsalutil.ActionInfo;
import org.opendaylight.genius.mdsalutil.InstructionInfo;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
-import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MatchInfoBase;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.NxMatchFieldType;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchTcpFlags;
import org.opendaylight.netvirt.aclservice.api.AclServiceManager.Action;
import org.opendaylight.netvirt.aclservice.utils.AclConstants;
import org.opendaylight.netvirt.aclservice.utils.AclDataUtil;
List<MatchInfoBase> flowMatches = new ArrayList<>();
flowMatches.addAll(origFlowMatches);
if (new Short((short) NwConstants.IP_PROT_TCP).equals(protocol)) {
- flowMatches.add(new MatchInfo(MatchFieldType.tcp_flags, new long[] { AclConstants.TCP_FLAG_SYN }));
+ flowMatches.add(MatchTcpFlags.SYN);
}
List<ActionInfo> actionsInfos = new ArrayList<>();
import org.opendaylight.controller.md.sal.binding.api.DataBroker;
import org.opendaylight.genius.mdsalutil.ActionInfo;
import org.opendaylight.genius.mdsalutil.InstructionInfo;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
-import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MatchInfoBase;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.NxMatchFieldType;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchTcpFlags;
import org.opendaylight.netvirt.aclservice.api.AclServiceManager.Action;
import org.opendaylight.netvirt.aclservice.utils.AclConstants;
import org.opendaylight.netvirt.aclservice.utils.AclDataUtil;
List<MatchInfoBase> flowMatches = new ArrayList<>();
flowMatches.addAll(origFlowMatches);
if (new Short((short) NwConstants.IP_PROT_TCP).equals(protocol)) {
- flowMatches.add(new MatchInfo(MatchFieldType.tcp_flags, new long[] { AclConstants.TCP_FLAG_SYN }));
+ flowMatches.add(MatchTcpFlags.SYN);
}
List<ActionInfo> actionsInfos = new ArrayList<>();
List<InstructionInfo> instructions = getDispatcherTableResubmitInstructions(actionsInfos);
import org.opendaylight.genius.mdsalutil.FlowEntity;
import org.opendaylight.genius.mdsalutil.InstructionInfo;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MatchInfoBase;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.instructions.InstructionApplyActions;
import org.opendaylight.genius.mdsalutil.instructions.InstructionGotoTable;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
-import org.opendaylight.genius.mdsalutil.packet.IPProtocols;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpProtocol;
+import org.opendaylight.genius.mdsalutil.matches.MatchTcpFlags;
import org.opendaylight.netvirt.aclservice.utils.AclConstants;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowCapableNode;
import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.Nodes;
*/
private void addStatelessIngressAclTableMissFlow(BigInteger dpId) {
List<MatchInfo> synMatches = new ArrayList<>();
- synMatches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { NwConstants.ETHTYPE_IPV4 }));
- synMatches.add(new MatchInfo(MatchFieldType.ip_proto,
- new long[] { IPProtocols.TCP.intValue() }));
+ synMatches.add(MatchEthernetType.IPV4);
+ synMatches.add(MatchIpProtocol.TCP);
- synMatches.add(new MatchInfo(MatchFieldType.tcp_flags, new long[] { AclConstants.TCP_FLAG_SYN }));
+ synMatches.add(MatchTcpFlags.SYN);
List<ActionInfo> dropActionsInfos = new ArrayList<>();
dropActionsInfos.add(new ActionDrop());
mdsalManager.installFlow(synFlowEntity);
synMatches = new ArrayList<>();
- synMatches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { NwConstants.ETHTYPE_IPV4 }));
- synMatches.add(new MatchInfo(MatchFieldType.ip_proto,
- new long[] { IPProtocols.TCP.intValue() }));
- synMatches.add(new MatchInfo(MatchFieldType.tcp_flags, new long[] { AclConstants.TCP_FLAG_SYN_ACK }));
+ synMatches.add(MatchEthernetType.IPV4);
+ synMatches.add(MatchIpProtocol.TCP);
+ synMatches.add(MatchTcpFlags.SYN_ACK);
List<InstructionInfo> allowAllInstructions = new ArrayList<>();
allowAllInstructions.add(new InstructionGotoTable(NwConstants.EGRESS_ACL_FILTER_TABLE));
allowAllInstructions.add(new InstructionGotoTable(NwConstants.INGRESS_ACL_FILTER_TABLE));
List<MatchInfo> synMatches = new ArrayList<>();
- synMatches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { NwConstants.ETHTYPE_IPV4 }));
- synMatches.add(new MatchInfo(MatchFieldType.ip_proto,
- new long[] { IPProtocols.TCP.intValue() }));
- synMatches.add(new MatchInfo(MatchFieldType.tcp_flags, new long[] { AclConstants.TCP_FLAG_SYN }));
+ synMatches.add(MatchEthernetType.IPV4);
+ synMatches.add(MatchIpProtocol.TCP);
+ synMatches.add(MatchTcpFlags.SYN);
List<ActionInfo> synActionsInfos = new ArrayList<>();
synActionsInfos.add(new ActionDrop());
mdsalManager.installFlow(synFlowEntity);
synMatches = new ArrayList<>();
- synMatches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { NwConstants.ETHTYPE_IPV4 }));
- synMatches.add(new MatchInfo(MatchFieldType.ip_proto,
- new long[] { IPProtocols.TCP.intValue() }));
- synMatches.add(new MatchInfo(MatchFieldType.tcp_flags, new long[] { AclConstants.TCP_FLAG_SYN_ACK }));
+ synMatches.add(MatchEthernetType.IPV4);
+ synMatches.add(MatchIpProtocol.TCP);
+ synMatches.add(MatchTcpFlags.SYN_ACK);
FlowEntity synAckFlowEntity = MDSALUtil.buildFlowEntity(dpId, NwConstants.INGRESS_ACL_TABLE,
"SYN-ACK-ALLOW-" + getTableMissFlowId(NwConstants.INGRESS_ACL_TABLE),
import java.util.List;
import java.util.Map;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
-import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MatchInfoBase;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.NxMatchFieldType;
import org.opendaylight.genius.mdsalutil.NxMatchInfo;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
+import org.opendaylight.genius.mdsalutil.matches.MatchIcmpv4;
+import org.opendaylight.genius.mdsalutil.matches.MatchIcmpv6;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpProtocol;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv4Destination;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv4Source;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv6Destination;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv6Source;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.acl.access.list.entries.ace.Matches;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.acl.access.list.entries.ace.matches.ace.type.AceIp;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.acl.access.list.entries.ace.matches.ace.type.ace.ip.ace.ip.version.AceIpv4;
flowMatches.addAll(addSrcIpMatches(acl));
flowMatches.addAll(addDstIpMatches(acl));
if (acl.getAceIpVersion() instanceof AceIpv4 ) {
- flowMatches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { NwConstants.ETHTYPE_IPV4 }));
+ flowMatches.add(MatchEthernetType.IPV4);
} else if (acl.getAceIpVersion() instanceof AceIpv6 ) {
- flowMatches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { NwConstants.ETHTYPE_IPV6 }));
+ flowMatches.add(MatchEthernetType.IPV6);
}
- flowMatches.add(new MatchInfo(MatchFieldType.ip_proto,
- new long[] { acl.getProtocol() }));
+ flowMatches.add(new MatchIpProtocol(acl.getProtocol()));
String flowId = "OTHER_PROTO" + acl.getProtocol();
Map<String,List<MatchInfoBase>> flowMatchesMap = new HashMap<>();
flowMatchesMap.put(flowId,flowMatches);
String flowId = "ICMP_";
if (sourcePortRange != null) {
if (acl.getAceIpVersion() instanceof AceIpv4 ) {
- flowMatches.add(new MatchInfo(MatchFieldType.icmp_v4,
- new long[] { sourcePortRange.getLowerPort().getValue(),
- sourcePortRange.getUpperPort().getValue() }));
+ flowMatches.add(new MatchIcmpv4(sourcePortRange.getLowerPort().getValue().shortValue(),
+ sourcePortRange.getUpperPort().getValue().shortValue()));
flowId = flowId + "V4_SOURCE_" + sourcePortRange.getLowerPort().getValue()
+ sourcePortRange.getUpperPort().getValue();
} else if (acl.getAceIpVersion() instanceof AceIpv6 ) {
- flowMatches.add(new MatchInfo(MatchFieldType.icmp_v6,
- new long[] { sourcePortRange.getLowerPort().getValue(),
- sourcePortRange.getUpperPort().getValue() }));
+ flowMatches.add(new MatchIcmpv6(sourcePortRange.getLowerPort().getValue().shortValue(),
+ sourcePortRange.getUpperPort().getValue().shortValue()));
flowId = flowId + "V6_SOURCE_" + sourcePortRange.getLowerPort().getValue() + "_"
+ sourcePortRange.getUpperPort().getValue() + "_";
}
DestinationPortRange destinationPortRange = acl.getDestinationPortRange();
if (destinationPortRange != null) {
if (acl.getAceIpVersion() instanceof AceIpv4 ) {
- flowMatches.add(new MatchInfo(MatchFieldType.icmp_v4,
- new long[] { destinationPortRange.getLowerPort().getValue(),
- destinationPortRange.getUpperPort().getValue() }));
+ flowMatches.add(new MatchIcmpv4(destinationPortRange.getLowerPort().getValue().shortValue(),
+ destinationPortRange.getUpperPort().getValue().shortValue()));
flowId = flowId + "V4_DESTINATION_" + destinationPortRange.getLowerPort().getValue()
+ destinationPortRange.getUpperPort().getValue() + "_";
} else if (acl.getAceIpVersion() instanceof AceIpv6 ) {
- flowMatches.add(new MatchInfo(MatchFieldType.icmp_v6,
- new long[] { destinationPortRange.getLowerPort().getValue(),
- destinationPortRange.getUpperPort().getValue() }));
+ flowMatches.add(new MatchIcmpv6(destinationPortRange.getLowerPort().getValue().shortValue(),
+ destinationPortRange.getUpperPort().getValue().shortValue()));
flowId = flowId + "V6_DESTINATION_" + destinationPortRange.getLowerPort().getValue()
+ destinationPortRange.getUpperPort().getValue() + "_";
}
}
- flowMatches.add(new MatchInfo(MatchFieldType.ip_proto,
- new long[] { acl.getProtocol() }));
+ flowMatches.add(new MatchIpProtocol(acl.getProtocol()));
Map<String,List<MatchInfoBase>> flowMatchesMap = new HashMap<>();
flowMatchesMap.put(flowId,flowMatches);
return flowMatchesMap;
List<MatchInfoBase> flowMatches = new ArrayList<>();
flowMatches.addAll(addSrcIpMatches(acl));
flowMatches.addAll(addDstIpMatches(acl));
- flowMatches.add(new MatchInfo(MatchFieldType.ip_proto,
- new long[] { acl.getProtocol() }));
+ flowMatches.add(new MatchIpProtocol(acl.getProtocol()));
String flowId = "TCP_SOURCE_ALL_";
flowMatchesMap.put(flowId,flowMatches);
return flowMatchesMap;
flowMatches.add(new NxMatchInfo(NxMatchFieldType.nx_tcp_src_with_mask,
new long[] { port, portMaskMap.get(port) }));
}
- flowMatches.add(new MatchInfo(MatchFieldType.ip_proto,
- new long[] { acl.getProtocol() }));
+ flowMatches.add(new MatchIpProtocol(acl.getProtocol()));
String flowId = "TCP_SOURCE_" + port + "_" + portMaskMap.get(port);
flowMatchesMap.put(flowId,flowMatches);
}
flowMatches.add(new NxMatchInfo(NxMatchFieldType.nx_tcp_dst_with_mask,
new long[] { port, portMaskMap.get(port) }));
}
- flowMatches.add(new MatchInfo(MatchFieldType.ip_proto,
- new long[] { acl.getProtocol() }));
+ flowMatches.add(new MatchIpProtocol(acl.getProtocol()));
String flowId = "TCP_DESTINATION_" + port + "_" + portMaskMap.get(port);
flowMatchesMap.put(flowId,flowMatches);
}
List<MatchInfoBase> flowMatches = new ArrayList<>();
flowMatches.addAll(addSrcIpMatches(acl));
flowMatches.addAll(addDstIpMatches(acl));
- flowMatches.add(new MatchInfo(MatchFieldType.ip_proto,
- new long[] { acl.getProtocol() }));
+ flowMatches.add(new MatchIpProtocol(acl.getProtocol()));
String flowId = "UDP_SOURCE_ALL_";
flowMatchesMap.put(flowId,flowMatches);
return flowMatchesMap;
flowMatches.add(new NxMatchInfo(NxMatchFieldType.nx_udp_src_with_mask,
new long[] { port, portMaskMap.get(port) }));
}
- flowMatches.add(new MatchInfo(MatchFieldType.ip_proto,
- new long[] { acl.getProtocol() }));
+ flowMatches.add(new MatchIpProtocol(acl.getProtocol()));
String flowId = "UDP_SOURCE_" + port + "_" + portMaskMap.get(port);
flowMatchesMap.put(flowId ,flowMatches);
}
flowMatches.add(new NxMatchInfo(NxMatchFieldType.nx_udp_dst_with_mask,
new long[] { port, portMaskMap.get(port) }));
}
- flowMatches.add(new MatchInfo(MatchFieldType.ip_proto,
- new long[] { acl.getProtocol() }));
+ flowMatches.add(new MatchIpProtocol(acl.getProtocol()));
String flowId = "UDP_DESTINATION_" + port + "_" + portMaskMap.get(port);
flowMatchesMap.put(flowId, flowMatches);
}
public static List<MatchInfoBase> addSrcIpMatches(AceIp acl) {
List<MatchInfoBase> flowMatches = new ArrayList<>();
if (acl.getAceIpVersion() instanceof AceIpv4 ) {
- flowMatches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { NwConstants.ETHTYPE_IPV4 }));
+ flowMatches.add(MatchEthernetType.IPV4);
Ipv4Prefix srcNetwork = ((AceIpv4)acl.getAceIpVersion()).getSourceIpv4Network();
if (null != srcNetwork && !srcNetwork.getValue().equals(AclConstants.IPV4_ALL_NETWORK)) {
- String[] ipaddressValues = srcNetwork.getValue().split("/");
- flowMatches.add(new MatchInfo(MatchFieldType.ipv4_source,
- new String[] {ipaddressValues[0], ipaddressValues[1]}));
+ flowMatches.add(new MatchIpv4Source(srcNetwork));
}
} else if (acl.getAceIpVersion() instanceof AceIpv6 ) {
- flowMatches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { NwConstants.ETHTYPE_IPV6 }));
+ flowMatches.add(MatchEthernetType.IPV6);
Ipv6Prefix srcNetwork = ((AceIpv6)acl.getAceIpVersion()).getSourceIpv6Network();
if (null != srcNetwork) {
- flowMatches.add(new MatchInfo(MatchFieldType.ipv6_source,
- new String[] {srcNetwork.getValue()}));
+ flowMatches.add(new MatchIpv6Source(srcNetwork));
}
}
return flowMatches;
public static List<MatchInfoBase> addDstIpMatches(AceIp acl) {
List<MatchInfoBase> flowMatches = new ArrayList<>();
if (acl.getAceIpVersion() instanceof AceIpv4 ) {
- flowMatches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { NwConstants.ETHTYPE_IPV4 }));
+ flowMatches.add(MatchEthernetType.IPV4);
Ipv4Prefix dstNetwork = ((AceIpv4)acl.getAceIpVersion()).getDestinationIpv4Network();
if (null != dstNetwork && !dstNetwork.getValue().equals(AclConstants.IPV4_ALL_NETWORK)) {
- String[] ipaddressValues = dstNetwork.getValue().split("/");
- flowMatches.add(new MatchInfo(MatchFieldType.ipv4_destination,
- new String[] {ipaddressValues[0], ipaddressValues[1]}));
+ flowMatches.add(new MatchIpv4Destination(dstNetwork));
}
} else if (acl.getAceIpVersion() instanceof AceIpv6 ) {
- flowMatches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { NwConstants.ETHTYPE_IPV6 }));
+ flowMatches.add(MatchEthernetType.IPV6);
Ipv6Prefix dstNetwork = ((AceIpv6)acl.getAceIpVersion()).getDestinationIpv6Network();
if (null != dstNetwork) {
- flowMatches.add(new MatchInfo(MatchFieldType.ipv6_destination,
- new String[] {dstNetwork.getValue()}));
+ flowMatches.add(new MatchIpv6Destination(dstNetwork));
}
}
return flowMatches;
package org.opendaylight.netvirt.aclservice.utils;
import com.google.common.base.Optional;
-import com.googlecode.ipv6.IPv6Address;
-import com.googlecode.ipv6.IPv6NetworkMask;
import java.math.BigInteger;
import java.util.ArrayList;
-import java.util.Arrays;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
import org.opendaylight.controller.md.sal.common.api.data.ReadFailedException;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MatchInfoBase;
import org.opendaylight.genius.mdsalutil.MetaDataUtil;
-import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.NxMatchFieldType;
import org.opendaylight.genius.mdsalutil.NxMatchInfo;
-import org.opendaylight.genius.mdsalutil.packet.IPProtocols;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
+import org.opendaylight.genius.mdsalutil.matches.MatchIcmpv6;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpProtocol;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv4Destination;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv4Source;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv6Destination;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv6Source;
+import org.opendaylight.genius.mdsalutil.matches.MatchMetadata;
+import org.opendaylight.genius.mdsalutil.matches.MatchUdpDestinationPort;
+import org.opendaylight.genius.mdsalutil.matches.MatchUdpSourcePort;
import org.opendaylight.netvirt.aclservice.api.AclServiceManager.MatchCriteria;
import org.opendaylight.netvirt.aclservice.api.utils.AclInterface;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.AccessLists;
*/
public static List<MatchInfoBase> buildDhcpMatches(int srcPort, int dstPort, int lportTag) {
List<MatchInfoBase> matches = new ArrayList<>(6);
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { NwConstants.ETHTYPE_IPV4 }));
- matches.add(new MatchInfo(MatchFieldType.ip_proto,
- new long[] { IPProtocols.UDP.intValue() }));
- matches.add(new MatchInfo(MatchFieldType.udp_dst,
- new long[] { dstPort }));
- matches.add(new MatchInfo(MatchFieldType.udp_src,
- new long[] { srcPort}));
+ matches.add(MatchEthernetType.IPV4);
+ matches.add(MatchIpProtocol.UDP);
+ matches.add(new MatchUdpDestinationPort(dstPort));
+ matches.add(new MatchUdpSourcePort(srcPort));
matches.add(AclServiceUtils.buildLPortTagMatch(lportTag));
return matches;
}
*/
public static List<MatchInfoBase> buildDhcpV6Matches(int srcPort, int dstPort, int lportTag) {
List<MatchInfoBase> matches = new ArrayList<>(6);
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { NwConstants.ETHTYPE_IPV6 }));
- matches.add(new MatchInfo(MatchFieldType.ip_proto,
- new long[] { IPProtocols.UDP.intValue() }));
- matches.add(new MatchInfo(MatchFieldType.udp_dst,
- new long[] { dstPort }));
- matches.add(new MatchInfo(MatchFieldType.udp_src,
- new long[] { srcPort}));
+ matches.add(MatchEthernetType.IPV6);
+ matches.add(MatchIpProtocol.UDP);
+ matches.add(new MatchUdpDestinationPort(dstPort));
+ matches.add(new MatchUdpSourcePort(srcPort));
matches.add(AclServiceUtils.buildLPortTagMatch(lportTag));
return matches;
}
*/
public static List<MatchInfoBase> buildIcmpV6Matches(int icmpType, int icmpCode, int lportTag) {
List<MatchInfoBase> matches = new ArrayList<>(6);
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { NwConstants.ETHTYPE_IPV6 }));
- matches.add(new MatchInfo(MatchFieldType.ip_proto,
- new long[] { IPProtocols.IPV6ICMP.intValue() }));
+ matches.add(MatchEthernetType.IPV6);
+ matches.add(MatchIpProtocol.ICMPV6);
if (icmpType != 0) {
- matches.add(new MatchInfo(MatchFieldType.icmp_v6,
- new long[] { icmpType, icmpCode}));
+ matches.add(new MatchIcmpv6((short) icmpType, (short) icmpCode));
}
matches.add(AclServiceUtils.buildLPortTagMatch(lportTag));
return matches;
MatchCriteria matchCriteria) {
List<MatchInfoBase> flowMatches = new ArrayList<>();
IpPrefix ipPrefix = ipPrefixOrAddress.getIpPrefix();
- MatchFieldType matchFieldType;
if (ipPrefix != null) {
if (ipPrefix.getIpv4Prefix() != null) {
- flowMatches.add(new MatchInfo(MatchFieldType.eth_type, new long[] {NwConstants.ETHTYPE_IPV4}));
- String[] ipaddressValues = ipPrefix.getIpv4Prefix().getValue().split("/");
- matchFieldType = matchCriteria == MatchCriteria.MATCH_SOURCE
- ? MatchFieldType.ipv4_source : MatchFieldType.ipv4_destination;
- flowMatches.add(new MatchInfo(matchFieldType, new String[] {ipaddressValues[0], ipaddressValues[1]}));
+ flowMatches.add(MatchEthernetType.IPV4);
+ flowMatches.add(matchCriteria == MatchCriteria.MATCH_SOURCE ? new MatchIpv4Source(
+ ipPrefix.getIpv4Prefix()) : new MatchIpv4Destination(ipPrefix.getIpv4Prefix()));
} else {
- matchFieldType = matchCriteria == MatchCriteria.MATCH_SOURCE
- ? MatchFieldType.ipv6_source : MatchFieldType.ipv6_destination;
- String[] ipv6addressValues = ipPrefix.getIpv6Prefix().getValue().split("/");
- IPv6Address ipv6Address = IPv6Address.fromString(ipv6addressValues[0]);
- IPv6Address maskedV6Address = ipv6Address.maskWithNetworkMask(
- IPv6NetworkMask.fromPrefixLength(Integer.parseInt(ipv6addressValues[1])));
- flowMatches.add(new MatchInfo(MatchFieldType.eth_type, new long[] {NwConstants.ETHTYPE_IPV6}));
- flowMatches.add(new MatchInfo(matchFieldType,
- new String[] {maskedV6Address.toString() + "/" + ipv6addressValues[1]}));
+ flowMatches.add(MatchEthernetType.IPV6);
+ flowMatches.add(matchCriteria == MatchCriteria.MATCH_SOURCE ? new MatchIpv6Source(
+ ipPrefix.getIpv6Prefix()) : new MatchIpv6Destination(ipPrefix.getIpv6Prefix()));
}
} else {
IpAddress ipAddress = ipPrefixOrAddress.getIpAddress();
if (ipAddress.getIpv4Address() != null) {
- matchFieldType = matchCriteria == MatchCriteria.MATCH_SOURCE
- ? MatchFieldType.ipv4_source : MatchFieldType.ipv4_destination;
- flowMatches.add(new MatchInfo(MatchFieldType.eth_type, new long[] {NwConstants.ETHTYPE_IPV4}));
- flowMatches.add(new MatchInfo(matchFieldType,
- new String[] {ipAddress.getIpv4Address().getValue(), "32"}));
+ flowMatches.add(MatchEthernetType.IPV4);
+ flowMatches.add(matchCriteria == MatchCriteria.MATCH_SOURCE ? new MatchIpv4Source(
+ ipAddress.getIpv4Address().getValue(), "32") : new MatchIpv4Destination(
+ ipAddress.getIpv4Address().getValue(), "32"));
} else {
- matchFieldType = matchCriteria == MatchCriteria.MATCH_SOURCE
- ? MatchFieldType.ipv6_source : MatchFieldType.ipv6_destination;
- flowMatches.add(new MatchInfo(MatchFieldType.eth_type, new long[] {NwConstants.ETHTYPE_IPV6}));
- flowMatches.add(new MatchInfo(matchFieldType,
- new String[] {ipAddress.getIpv6Address().getValue() + "/128" }));
+ flowMatches.add(MatchEthernetType.IPV6);
+ flowMatches.add(matchCriteria == MatchCriteria.MATCH_SOURCE ? new MatchIpv6Source(
+ ipAddress.getIpv6Address().getValue() + "/128") : new MatchIpv6Destination(
+ ipAddress.getIpv6Address().getValue() + "/128"));
}
}
return flowMatches;
* @return the lport tag match
*/
public static MatchInfo buildLPortTagMatch(int lportTag) {
- return new MatchInfo(MatchFieldType.metadata,
- new BigInteger[] {MetaDataUtil.getLportTagMetaData(lportTag), MetaDataUtil.METADATA_MASK_LPORT_TAG});
+ return new MatchMetadata(MetaDataUtil.getLportTagMetaData(lportTag), MetaDataUtil.METADATA_MASK_LPORT_TAG);
}
public static List<Ace> getAceWithRemoteAclId(DataBroker dataBroker, AclInterface port, Uuid remoteAcl) {
return null;
}
Map<String, List<MatchInfoBase>> updatedFlowMatchesMap = new HashMap<>();
- MatchInfoBase ipv4Match = new MatchInfo(MatchFieldType.eth_type, new long[] {NwConstants.ETHTYPE_IPV4});
- MatchInfoBase ipv6Match = new MatchInfo(MatchFieldType.eth_type, new long[] {NwConstants.ETHTYPE_IPV6});
+ MatchInfoBase ipv4Match = MatchEthernetType.IPV4;
+ MatchInfoBase ipv6Match = MatchEthernetType.IPV6;
for (String flowName : flowMatchesMap.keySet()) {
List<MatchInfoBase> flows = flowMatchesMap.get(flowName);
for (AclInterface port : interfaceList) {
return null;
}
Map<String, List<MatchInfoBase>> updatedFlowMatchesMap = new HashMap<>();
- MatchInfoBase ipv4Match = new MatchInfo(MatchFieldType.eth_type, new long[] {NwConstants.ETHTYPE_IPV4});
- MatchInfoBase ipv6Match = new MatchInfo(MatchFieldType.eth_type, new long[] {NwConstants.ETHTYPE_IPV6});
+ MatchInfoBase ipv4Match = MatchEthernetType.IPV4;
+ MatchInfoBase ipv6Match = MatchEthernetType.IPV6;
for (String flowName : flowMatchesMap.keySet()) {
List<MatchInfoBase> flows = flowMatchesMap.get(flowName);
// iterate over allow address pair and update match type
return matchInfoBaseList;
}
- public static MatchInfoBase popMatchInfoByType(List<MatchInfoBase> flows, MatchFieldType type) {
- MatchInfoBase mib = getMatchInfoByType(flows, type);
- if (mib != null) {
- flows.remove(mib);
- }
- return mib;
- }
-
- public static MatchInfo getMatchInfoByType(List<MatchInfoBase> flows, MatchFieldType type) {
- for (MatchInfoBase mib : flows) {
- if (mib instanceof MatchInfo) {
- if (((MatchInfo)mib).getMatchField() == type) {
- return (MatchInfo) mib;
- }
- }
- }
- return null;
- }
-
public static MatchInfoBase getMatchInfoByType(List<MatchInfoBase> flows, NxMatchFieldType type) {
for (MatchInfoBase mib : flows) {
if (mib instanceof NxMatchInfo) {
return null;
}
- public static boolean containsMatchFieldType(List<MatchInfoBase> flows, MatchFieldType type) {
- MatchInfoBase mib = getMatchInfoByType(flows, type);
- if (mib != null) {
- return true;
- }
- return false;
- }
-
public static boolean containsMatchFieldType(List<MatchInfoBase> flows, NxMatchFieldType type) {
MatchInfoBase mib = getMatchInfoByType(flows, type);
if (mib != null) {
return false;
}
- public static boolean containsMatchFieldTypeAndValue(List<MatchInfoBase> flows, MatchFieldType type,
- long[] values) {
- MatchInfo mib = getMatchInfoByType(flows, type);
- if (mib != null && Arrays.equals(mib.getMatchValues(), values)) {
- return true;
- }
-
- return false;
- }
-
public static boolean containsTcpMatchField(List<MatchInfoBase> flows) {
- return containsMatchFieldTypeAndValue(flows, MatchFieldType.ip_proto, new long[] {IPProtocols.TCP.intValue()});
+ return flows.contains(MatchIpProtocol.TCP);
}
public static boolean containsUdpMatchField(List<MatchInfoBase> flows) {
- return containsMatchFieldTypeAndValue(flows, MatchFieldType.ip_proto, new long[] {IPProtocols.UDP.intValue()});
+ return flows.contains(MatchIpProtocol.UDP);
}
public static Integer allocateId(IdManagerService idManager, String poolName, String idKey) {
package org.opendaylight.netvirt.aclservice;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
import static org.mockito.Matchers.any;
import static org.mockito.Mockito.doAnswer;
import static org.mockito.Mockito.doReturn;
import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
import org.opendaylight.genius.mdsalutil.FlowEntity;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.NxMatchFieldType;
import org.opendaylight.genius.mdsalutil.actions.ActionLearn;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchTcpFlags;
import org.opendaylight.netvirt.aclservice.api.utils.AclInterface;
import org.opendaylight.netvirt.aclservice.utils.AclConstants;
import org.opendaylight.netvirt.aclservice.utils.AclDataUtil;
assertEquals(true, testedService.removeAcl(ai));
assertEquals(5, removeFlowValueSaver.getNumOfInvocations());
FlowEntity firstRangeFlow = (FlowEntity) removeFlowValueSaver.getInvocationParams(4).get(0);
- AclServiceTestUtils.verifyMatchInfo(firstRangeFlow.getMatchInfoList(), MatchFieldType.tcp_flags, "2");
+ assertTrue(firstRangeFlow.getMatchInfoList().contains(new MatchTcpFlags(2)));
AclServiceTestUtils.verifyMatchInfo(firstRangeFlow.getMatchInfoList(),
NxMatchFieldType.nx_tcp_dst_with_mask, "80", "65535");
-
}
private AclInterface stubUdpAclInterface(Uuid sgUuid, String ifName, String ipv4PrefixStr,
package org.opendaylight.netvirt.aclservice;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
import static org.mockito.Matchers.any;
import static org.mockito.Mockito.doAnswer;
import static org.mockito.Mockito.doReturn;
import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
import org.opendaylight.genius.mdsalutil.FlowEntity;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.NxMatchFieldType;
import org.opendaylight.genius.mdsalutil.actions.ActionNxResubmit;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchTcpFlags;
import org.opendaylight.netvirt.aclservice.api.utils.AclInterface;
import org.opendaylight.netvirt.aclservice.utils.AclDataUtil;
import org.opendaylight.netvirt.aclservice.utils.AclServiceTestUtils;
FlowEntity firstRangeFlow = (FlowEntity) installFlowValueSaver.getInvocationParams(9).get(0);
AclServiceTestUtils.verifyMatchInfo(firstRangeFlow.getMatchInfoList(),
NxMatchFieldType.nx_tcp_dst_with_mask, "80", "65535");
- AclServiceTestUtils.verifyMatchInfo(firstRangeFlow.getMatchInfoList(), MatchFieldType.tcp_flags, "2");
+ assertTrue(firstRangeFlow.getMatchInfoList().contains(new MatchTcpFlags(2)));
AclServiceTestUtils.verifyActionInfo(firstRangeFlow.getInstructionInfoList().get(0).getActionInfos(),
new ActionNxResubmit(NwConstants.LPORT_DISPATCHER_TABLE));
FlowEntity firstRangeFlow = (FlowEntity) installFlowValueSaver.getInvocationParams(9).get(0);
AclServiceTestUtils.verifyMatchInfo(firstRangeFlow.getMatchInfoList(),
NxMatchFieldType.nx_tcp_dst_with_mask, "80", "65532");
- AclServiceTestUtils.verifyMatchInfo(firstRangeFlow.getMatchInfoList(), MatchFieldType.tcp_flags, "2");
+ assertTrue(firstRangeFlow.getMatchInfoList().contains(new MatchTcpFlags(2)));
FlowEntity secondRangeFlow = (FlowEntity) installFlowValueSaver.getInvocationParams(10).get(0);
AclServiceTestUtils.verifyMatchInfo(secondRangeFlow.getMatchInfoList(),
NxMatchFieldType.nx_tcp_dst_with_mask, "84", "65535");
- AclServiceTestUtils.verifyMatchInfo(secondRangeFlow.getMatchInfoList(), MatchFieldType.tcp_flags, "2");
+ assertTrue(secondRangeFlow.getMatchInfoList().contains(new MatchTcpFlags(2)));
}
@Test
assertEquals(true, testedService.removeAcl(ai));
assertEquals(10, removeFlowValueSaver.getNumOfInvocations());
FlowEntity firstRangeFlow = (FlowEntity) removeFlowValueSaver.getInvocationParams(9).get(0);
- AclServiceTestUtils.verifyMatchInfo(firstRangeFlow.getMatchInfoList(), MatchFieldType.tcp_flags, "2");
+ assertTrue(firstRangeFlow.getMatchInfoList().contains(new MatchTcpFlags(2)));
AclServiceTestUtils.verifyMatchInfo(firstRangeFlow.getMatchInfoList(),
NxMatchFieldType.nx_tcp_dst_with_mask, "80", "65535");
package org.opendaylight.netvirt.aclservice;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
import static org.mockito.Matchers.any;
import static org.mockito.Mockito.doAnswer;
import static org.mockito.Mockito.doReturn;
import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
import org.opendaylight.genius.mdsalutil.FlowEntity;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.NxMatchFieldType;
import org.opendaylight.genius.mdsalutil.actions.ActionNxResubmit;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchTcpFlags;
import org.opendaylight.netvirt.aclservice.api.utils.AclInterface;
-import org.opendaylight.netvirt.aclservice.utils.AclConstants;
import org.opendaylight.netvirt.aclservice.utils.AclDataUtil;
import org.opendaylight.netvirt.aclservice.utils.AclServiceTestUtils;
import org.opendaylight.netvirt.aclservice.utils.AclServiceUtils;
FlowEntity firstRangeFlow = (FlowEntity) installFlowValueSaver.getInvocationParams(6).get(0);
AclServiceTestUtils.verifyMatchInfo(firstRangeFlow.getMatchInfoList(),
NxMatchFieldType.nx_tcp_dst_with_mask, "80", "65535");
- AclServiceTestUtils.verifyMatchInfo(firstRangeFlow.getMatchInfoList(), MatchFieldType.tcp_flags, "2");
+ assertTrue(firstRangeFlow.getMatchInfoList().contains(new MatchTcpFlags(2)));
AclServiceTestUtils.verifyActionInfo(firstRangeFlow.getInstructionInfoList().get(0).getActionInfos(),
new ActionNxResubmit(NwConstants.EGRESS_LPORT_DISPATCHER_TABLE));
}
// https://bugs.opendaylight.org/show_bug.cgi?id=6200
AclServiceTestUtils.verifyMatchInfo(firstRangeFlow.getMatchInfoList(),
NxMatchFieldType.nx_tcp_dst_with_mask, "80", "65532");
- AclServiceTestUtils.verifyMatchInfo(firstRangeFlow.getMatchInfoList(), MatchFieldType.tcp_flags, "2");
+ assertTrue(firstRangeFlow.getMatchInfoList().contains(new MatchTcpFlags(2)));
FlowEntity secondRangeFlow = (FlowEntity) installFlowValueSaver.getInvocationParams(7).get(0);
AclServiceTestUtils.verifyMatchInfo(secondRangeFlow.getMatchInfoList(),
NxMatchFieldType.nx_tcp_dst_with_mask, "84", "65535");
- AclServiceTestUtils.verifyMatchInfo(secondRangeFlow.getMatchInfoList(), MatchFieldType.tcp_flags, "2");
+ assertTrue(secondRangeFlow.getMatchInfoList().contains(new MatchTcpFlags(2)));
}
@Test
FlowEntity firstSynFlow = (FlowEntity) removeFlowValueSaver.getInvocationParams(6).get(0);
AclServiceTestUtils.verifyMatchInfo(firstSynFlow.getMatchInfoList(),
NxMatchFieldType.nx_tcp_dst_with_mask, "80", "65535");
- AclServiceTestUtils.verifyMatchInfo(firstSynFlow.getMatchInfoList(), MatchFieldType.tcp_flags,
- AclConstants.TCP_FLAG_SYN + "");
+ assertTrue(firstSynFlow.getMatchInfoList().contains(MatchTcpFlags.SYN));
}
import org.opendaylight.genius.mdsalutil.actions.ActionNxResubmit
import org.opendaylight.genius.mdsalutil.FlowEntity
-import org.opendaylight.genius.mdsalutil.MatchFieldType
-import org.opendaylight.genius.mdsalutil.MatchInfoBuilder
import org.opendaylight.genius.mdsalutil.MetaDataUtil
import org.opendaylight.genius.mdsalutil.instructions.InstructionApplyActions
-
-import static extension org.opendaylight.mdsal.binding.testutils.XtendBuilderExtensions.operator_doubleGreaterThan
+import org.opendaylight.genius.mdsalutil.matches.MatchArpSha
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType
+import org.opendaylight.genius.mdsalutil.matches.MatchIcmpv6
+import org.opendaylight.genius.mdsalutil.matches.MatchIpProtocol
+import org.opendaylight.genius.mdsalutil.matches.MatchUdpDestinationPort
+import org.opendaylight.genius.mdsalutil.matches.MatchUdpSourcePort
+import org.opendaylight.genius.mdsalutil.matches.MatchMetadata
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress
class FlowEntryObjectsBase {
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 68L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 67L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(68),
+ new MatchUdpSourcePort(67),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 546L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 547L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(546),
+ new MatchUdpSourcePort(547),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 130L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(130 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 135L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(135 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 136L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(136 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2054L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2054L),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 67L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 68L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(67),
+ new MatchUdpSourcePort(68),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 547L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 546L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(547),
+ new MatchUdpSourcePort(546),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
instructionInfoList = #[
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 68L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 67L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(68),
+ new MatchUdpSourcePort(67),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
instructionInfoList = #[
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 546L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 547L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(546),
+ new MatchUdpSourcePort(547),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
instructionInfoList = #[
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 134L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(134 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63020
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 133L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(133 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 135L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(135 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 136L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(136 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2054L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.arp_sha
- stringMatchValues = #[
- "0D:AA:D8:42:30:F3"
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2054L),
+ new MatchArpSha(new MacAddress("0D:AA:D8:42:30:F3")),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 68L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 67L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(68),
+ new MatchUdpSourcePort(67),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 546L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 547L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(546),
+ new MatchUdpSourcePort(547),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 130L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(130 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 135L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(135 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 136L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(136 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2054L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2054L),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 67L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 68L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(67),
+ new MatchUdpSourcePort(68),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 547L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 546L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(547),
+ new MatchUdpSourcePort(546),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
instructionInfoList = #[
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 68L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 67L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(68),
+ new MatchUdpSourcePort(67),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
instructionInfoList = #[
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 546L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 547L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(546),
+ new MatchUdpSourcePort(547),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
instructionInfoList = #[
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 134L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(134 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63020
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 133L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(133 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 135L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(135 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 136L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(136 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2054L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.arp_sha
- stringMatchValues = #[
- "0D:AA:D8:42:30:F4"
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2054L),
+ new MatchArpSha(new MacAddress("0D:AA:D8:42:30:F4")),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 68L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 67L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(68),
+ new MatchUdpSourcePort(67),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 546L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 547L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(546),
+ new MatchUdpSourcePort(547),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 130L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(130 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 135L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(135 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 136L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(136 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2054L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2054L),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 67L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 68L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(67),
+ new MatchUdpSourcePort(68),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 547L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 546L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(547),
+ new MatchUdpSourcePort(546),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
instructionInfoList = #[
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 68L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 67L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(68),
+ new MatchUdpSourcePort(67),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
instructionInfoList = #[
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 546L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 547L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(546),
+ new MatchUdpSourcePort(547),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
instructionInfoList = #[
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 134L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(134 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63020
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 133L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(133 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 135L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(135 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 136L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(136 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2054L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.arp_sha
- stringMatchValues = #[
- "0D:AA:D8:42:30:F5"
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2054L),
+ new MatchArpSha(new MacAddress("0D:AA:D8:42:30:F5")),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 68L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 67L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(68),
+ new MatchUdpSourcePort(67),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 546L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 547L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(546),
+ new MatchUdpSourcePort(547),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 130L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(130 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 135L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(135 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 136L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(136 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2054L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2054L),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 67L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 68L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(67),
+ new MatchUdpSourcePort(68),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 547L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 546L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(547),
+ new MatchUdpSourcePort(546),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
instructionInfoList = #[
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 68L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 67L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(68),
+ new MatchUdpSourcePort(67),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
instructionInfoList = #[
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 546L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 547L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(546),
+ new MatchUdpSourcePort(547),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
instructionInfoList = #[
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 134L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(134 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63020
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 133L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(133 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 135L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(135 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 136L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(136 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
*/
package org.opendaylight.netvirt.aclservice.tests
+import org.opendaylight.genius.mdsalutil.actions.ActionNxConntrack
+import org.opendaylight.genius.mdsalutil.actions.ActionNxResubmit
import org.opendaylight.genius.mdsalutil.FlowEntity
-import org.opendaylight.genius.mdsalutil.MatchFieldType
-import org.opendaylight.genius.mdsalutil.MatchInfoBuilder
+import org.opendaylight.genius.mdsalutil.instructions.InstructionApplyActions
+import org.opendaylight.genius.mdsalutil.matches.MatchArpSha
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetDestination
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetSource
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType
+import org.opendaylight.genius.mdsalutil.matches.MatchIcmpv4
+import org.opendaylight.genius.mdsalutil.matches.MatchIcmpv6
+import org.opendaylight.genius.mdsalutil.matches.MatchIpProtocol
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv4Destination
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv4Source
+import org.opendaylight.genius.mdsalutil.matches.MatchMetadata
+import org.opendaylight.genius.mdsalutil.matches.MatchUdpDestinationPort
+import org.opendaylight.genius.mdsalutil.matches.MatchUdpSourcePort
import org.opendaylight.genius.mdsalutil.MetaDataUtil
import org.opendaylight.genius.mdsalutil.NxMatchFieldType
import org.opendaylight.genius.mdsalutil.NxMatchInfoBuilder
-import org.opendaylight.genius.mdsalutil.instructions.InstructionApplyActions
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress
import static extension org.opendaylight.mdsal.binding.testutils.XtendBuilderExtensions.operator_doubleGreaterThan
-import org.opendaylight.genius.mdsalutil.actions.ActionNxConntrack
-import org.opendaylight.genius.mdsalutil.actions.ActionNxResubmit
class FlowEntryObjectsStateful extends FlowEntryObjectsBase {
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_dst
- stringMatchValues = #[
- "0D:AA:D8:42:30:F3"
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ipv4_destination
- stringMatchValues = #[
- "10.0.0.1",
- "24"
- ]
- ]
+ new MatchEthernetType(2048L),
+ new MatchEthernetDestination(new MacAddress("0D:AA:D8:42:30:F3")),
+ new MatchEthernetType(2048L),
+ new MatchIpv4Destination("10.0.0.1", "24")
]
priority = 61010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ipv4_source
- stringMatchValues = #[
- "10.0.0.1",
- "24"
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchEthernetType(2048L),
+ new MatchIpv4Source("10.0.0.1", "24"),
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ipv4_source
- stringMatchValues = #[
- "10.0.0.2",
- "24"
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchEthernetType(2048L),
+ new MatchIpv4Source("10.0.0.2", "24"),
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_src
- stringMatchValues = #[
- "0D:AA:D8:42:30:F3"
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ipv4_source
- stringMatchValues = #[
- "10.0.0.1",
- "24"
- ]
- ]
+ new MatchEthernetSource(new MacAddress("0D:AA:D8:42:30:F3")),
+ new MatchEthernetType(2048L),
+ new MatchIpv4Source("10.0.0.1", "24")
]
priority = 61010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_dst
- stringMatchValues = #[
- "0D:AA:D8:42:30:F4"
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ipv4_destination
- stringMatchValues = #[
- "10.0.0.2",
- "24"
- ]
- ]
+ new MatchEthernetType(2048L),
+ new MatchEthernetDestination(new MacAddress("0D:AA:D8:42:30:F4")),
+ new MatchEthernetType(2048L),
+ new MatchIpv4Destination("10.0.0.2", "24")
]
priority = 61010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_src
- stringMatchValues = #[
- "0D:AA:D8:42:30:F4"
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ipv4_source
- stringMatchValues = #[
- "10.0.0.2",
- "24"
- ]
- ]
+ new MatchEthernetSource(new MacAddress("0D:AA:D8:42:30:F4")),
+ new MatchEthernetType(2048L),
+ new MatchIpv4Source("10.0.0.2", "24")
]
priority = 61010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_dst
- stringMatchValues = #[
- "0D:AA:D8:42:30:F5"
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ipv4_destination
- stringMatchValues = #[
- "10.0.0.3",
- "24"
- ]
- ]
+ new MatchEthernetType(2048L),
+ new MatchEthernetDestination(new MacAddress("0D:AA:D8:42:30:F5")),
+ new MatchEthernetType(2048L),
+ new MatchIpv4Destination("10.0.0.3", "24")
]
priority = 61010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_src
- stringMatchValues = #[
- "0D:AA:D8:42:30:F5"
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ipv4_source
- stringMatchValues = #[
- "10.0.0.3",
- "24"
- ]
- ]
+ new MatchEthernetSource(new MacAddress("0D:AA:D8:42:30:F5")),
+ new MatchEthernetType(2048L),
+ new MatchIpv4Source("10.0.0.3", "24")
]
priority = 61010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 67L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 68L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(67 as short),
+ new MatchUdpSourcePort(68 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 547L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 546L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(547 as short),
+ new MatchUdpSourcePort(546 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
instructionInfoList = #[
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 68L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 67L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(68 as short),
+ new MatchUdpSourcePort(67 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
instructionInfoList = #[
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 546L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 547L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(546 as short),
+ new MatchUdpSourcePort(547 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
instructionInfoList = #[
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 134L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(134 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63020
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 133L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(133 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 135L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(135 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 136L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(136 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2054L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.arp_sha
- stringMatchValues = #[
- "0D:AA:D8:42:30:F4"
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2054L),
+ new MatchArpSha(new MacAddress("0D:AA:D8:42:30:F4")),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65535L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65535L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ipv4_destination
- stringMatchValues = #[
- "10.0.0.1",
- "24"
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchIpv4Destination("10.0.0.1", "24"),
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65535L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ipv4_destination
- stringMatchValues = #[
- "10.0.0.2",
- "24"
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchIpv4Destination("10.0.0.2", "24"),
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65535L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
+ new NxMatchInfoBuilder >> [
+ matchField = NxMatchFieldType.ct_state
matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
- new NxMatchInfoBuilder >> [
- matchField = NxMatchFieldType.ct_state
- matchValues = #[
- 33L,
- 33L
+ 33L,
+ 33L
]
]
]
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_udp_dst_with_mask
matchValues = #[
65535L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchIpProtocol(17 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ipv4_source
- stringMatchValues = #[
- "10.0.0.1",
- "24"
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchIpv4Source("10.0.0.1", "24"),
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_udp_dst_with_mask
matchValues = #[
65535L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchIpProtocol(17 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ipv4_source
- stringMatchValues = #[
- "10.0.0.2",
- "24"
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchIpv4Source("10.0.0.2", "24"),
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_udp_dst_with_mask
matchValues = #[
65535L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchIpProtocol(17 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_udp_dst_with_mask
matchValues = #[
65535L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchIpProtocol(17 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v4
- matchValues = #[
- 2L,
- 3L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 1L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchIcmpv4(2 as short, 3 as short),
+ new MatchIpProtocol(1 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v4
- matchValues = #[
- 2L,
- 3L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 1L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchIcmpv4(2 as short, 3 as short),
+ new MatchIpProtocol(1 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ipv4_destination
- stringMatchValues = #[
- "10.0.0.1",
- "24"
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v4
- matchValues = #[
- 2L,
- 3L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 1L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchEthernetType(2048L),
+ new MatchIpv4Destination("10.0.0.1", "24"),
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchIcmpv4(2 as short, 3 as short),
+ new MatchIpProtocol(1 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ipv4_destination
- stringMatchValues = #[
- "10.0.0.2",
- "24"
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v4
- matchValues = #[
- 2L,
- 3L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 1L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchEthernetType(2048L),
+ new MatchIpv4Destination("10.0.0.2", "24"),
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchIcmpv4(2 as short, 3 as short),
+ new MatchIpProtocol(1 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_udp_dst_with_mask
matchValues = #[
65532L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchIpProtocol(17 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65534L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65280L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65534L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65535L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65520L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65504L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65408L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65528L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchIpProtocol(17 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v4
- matchValues = #[
- 2L,
- 3L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 1L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchIcmpv4(2 as short, 3 as short),
+ new MatchIpProtocol(1 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v4
- matchValues = #[
- 2L,
- 3L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 1L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchIcmpv4(2 as short, 3 as short),
+ new MatchIpProtocol(1 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v4
- matchValues = #[
- 2L,
- 3L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 1L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchIcmpv4(2 as short, 3 as short),
+ new MatchIpProtocol(1 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v4
- matchValues = #[
- 2L,
- 3L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 1L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchIcmpv4(2 as short, 3 as short),
+ new MatchIpProtocol(1 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 68L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 67L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(68 as short),
+ new MatchUdpSourcePort(67 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 546L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 547L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(546 as short),
+ new MatchUdpSourcePort(547 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 130L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(130 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 135L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(135 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 136L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(136 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2054L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2054L),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 67L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 68L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(67 as short),
+ new MatchUdpSourcePort(68 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 547L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 546L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(547 as short),
+ new MatchUdpSourcePort(546 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
instructionInfoList = #[
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 68L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 67L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(68 as short),
+ new MatchUdpSourcePort(67 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
instructionInfoList = #[
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 546L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 547L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(546 as short),
+ new MatchUdpSourcePort(547 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
instructionInfoList = #[
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 134L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(134 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63020
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 133L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(133 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 135L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(135 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 136L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(136 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
import org.opendaylight.genius.mdsalutil.actions.ActionNxConntrack
import org.opendaylight.genius.mdsalutil.actions.ActionNxResubmit
import org.opendaylight.genius.mdsalutil.FlowEntity
-import org.opendaylight.genius.mdsalutil.MatchFieldType
-import org.opendaylight.genius.mdsalutil.MatchInfoBuilder
+import org.opendaylight.genius.mdsalutil.instructions.InstructionApplyActions
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType
+import org.opendaylight.genius.mdsalutil.matches.MatchIcmpv4
+import org.opendaylight.genius.mdsalutil.matches.MatchIcmpv6
+import org.opendaylight.genius.mdsalutil.matches.MatchIpProtocol
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv4Destination
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv4Source
+import org.opendaylight.genius.mdsalutil.matches.MatchMetadata
+import org.opendaylight.genius.mdsalutil.matches.MatchTcpFlags
+import org.opendaylight.genius.mdsalutil.matches.MatchUdpDestinationPort
+import org.opendaylight.genius.mdsalutil.matches.MatchUdpSourcePort
import org.opendaylight.genius.mdsalutil.MetaDataUtil
import org.opendaylight.genius.mdsalutil.NxMatchFieldType
import org.opendaylight.genius.mdsalutil.NxMatchInfoBuilder
-import org.opendaylight.genius.mdsalutil.instructions.InstructionApplyActions
import static extension org.opendaylight.mdsal.binding.testutils.XtendBuilderExtensions.operator_doubleGreaterThan
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- 1152920405095219200bi
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchMetadata(1085217976614912bi, 1152920405095219200bi)
]
priority = 61005
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- 1152920405095219200bi
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchMetadata(1085217976614912bi, 1152920405095219200bi)
]
priority = 61005
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- 1152920405095219200bi
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchMetadata(1085217976614912bi, 1152920405095219200bi)
]
priority = 61005
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- 1152920405095219200bi
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchMetadata(1085217976614912bi, 1152920405095219200bi)
]
priority = 61005
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- 1152920405095219200bi
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchMetadata(1085217976614912bi, 1152920405095219200bi)
]
priority = 61005
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- 1152920405095219200bi
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchMetadata(1085217976614912bi, 1152920405095219200bi)
]
priority = 61005
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65535L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- 1152920405095219200bi
- ]
- matchField = MatchFieldType.metadata
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.tcp_flags
- matchValues = #[
- 2L
- ]
- ]
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, 1152920405095219200bi),
+ new MatchTcpFlags(2)
]
priority = 61005
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65535L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- 1152920405095219200bi
- ]
- matchField = MatchFieldType.metadata
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.tcp_flags
- matchValues = #[
- 2L
- ]
- ]
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, 1152920405095219200bi),
+ new MatchTcpFlags(2)
]
priority = 61005
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65535L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- 1152920405095219200bi
- ]
- matchField = MatchFieldType.metadata
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.tcp_flags
- matchValues = #[
- 2L
- ]
- ]
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, 1152920405095219200bi),
+ new MatchTcpFlags(2)
]
priority = 61005
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65535L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- 1152920405095219200bi
- ]
- matchField = MatchFieldType.metadata
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.tcp_flags
- matchValues = #[
- 2L
- ]
- ]
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, 1152920405095219200bi),
+ new MatchTcpFlags(2)
]
priority = 61005
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65535L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- 1152920405095219200bi
- ]
- matchField = MatchFieldType.metadata
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.tcp_flags
- matchValues = #[
- 2L
- ]
- ]
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, 1152920405095219200bi),
+ new MatchTcpFlags(2)
]
priority = 61005
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_udp_dst_with_mask
matchValues = #[
65535L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchIpProtocol(17 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ipv4_source
- stringMatchValues = #[
- "10.0.0.1",
- "24"
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchIpv4Source("10.0.0.1", "24"),
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_udp_dst_with_mask
matchValues = #[
65535L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchIpProtocol(17 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ipv4_source
- stringMatchValues = #[
- "10.0.0.2",
- "24"
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchIpv4Source("10.0.0.2", "24"),
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_udp_dst_with_mask
matchValues = #[
65535L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchIpProtocol(17 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_udp_dst_with_mask
matchValues = #[
65535L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchIpProtocol(17 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v4
- matchValues = #[
- 2L,
- 3L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 1L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchIcmpv4(2 as short, 3 as short),
+ new MatchIpProtocol(1 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v4
- matchValues = #[
- 2L,
- 3L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 1L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchIcmpv4(2 as short, 3 as short),
+ new MatchIpProtocol(1 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ipv4_destination
- stringMatchValues = #[
- "10.0.0.1",
- "24"
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v4
- matchValues = #[
- 2L,
- 3L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 1L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchEthernetType(2048L),
+ new MatchIpv4Destination("10.0.0.1", "24"),
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchIcmpv4(2 as short, 3 as short),
+ new MatchIpProtocol(1 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ipv4_destination
- stringMatchValues = #[
- "10.0.0.2",
- "24"
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v4
- matchValues = #[
- 2L,
- 3L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 1L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchEthernetType(2048L),
+ new MatchIpv4Destination("10.0.0.2", "24"),
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchIcmpv4(2 as short, 3 as short),
+ new MatchIpProtocol(1 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_udp_dst_with_mask
matchValues = #[
65532L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchIpProtocol(17 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65534L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- 1152920405095219200bi
- ]
- matchField = MatchFieldType.metadata
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.tcp_flags
- matchValues = #[
- 2L
- ]
- ]
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, 1152920405095219200bi),
+ new MatchTcpFlags(2)
]
priority = 61005
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65280L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- 1152920405095219200bi
- ]
- matchField = MatchFieldType.metadata
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.tcp_flags
- matchValues = #[
- 2L
- ]
- ]
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, 1152920405095219200bi),
+ new MatchTcpFlags(2)
]
priority = 61005
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65534L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- 1152920405095219200bi
- ]
- matchField = MatchFieldType.metadata
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.tcp_flags
- matchValues = #[
- 2L
- ]
- ]
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, 1152920405095219200bi),
+ new MatchTcpFlags(2)
]
priority = 61005
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65535L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- 1152920405095219200bi
- ]
- matchField = MatchFieldType.metadata
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.tcp_flags
- matchValues = #[
- 2L
- ]
- ]
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, 1152920405095219200bi),
+ new MatchTcpFlags(2)
]
priority = 61005
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65520L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- 1152920405095219200bi
- ]
- matchField = MatchFieldType.metadata
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.tcp_flags
- matchValues = #[
- 2L
- ]
- ]
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, 1152920405095219200bi),
+ new MatchTcpFlags(2)
]
priority = 61005
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65504L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- 1152920405095219200bi
- ]
- matchField = MatchFieldType.metadata
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.tcp_flags
- matchValues = #[
- 2L
- ]
- ]
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, 1152920405095219200bi),
+ new MatchTcpFlags(2)
]
priority = 61005
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65408L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- 1152920405095219200bi
- ]
- matchField = MatchFieldType.metadata
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.tcp_flags
- matchValues = #[
- 2L
- ]
- ]
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, 1152920405095219200bi),
+ new MatchTcpFlags(2)
]
priority = 61005
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.nx_tcp_dst_with_mask
matchValues = #[
65528L
]
],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 6L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- 1152920405095219200bi
- ]
- matchField = MatchFieldType.metadata
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.tcp_flags
- matchValues = #[
- 2L
- ]
- ]
+ new MatchIpProtocol(6 as short),
+ new MatchMetadata(1085217976614912bi, 1152920405095219200bi),
+ new MatchTcpFlags(2)
]
priority = 61005
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v4
- matchValues = #[
- 2L,
- 3L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 1L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchIcmpv4(2 as short, 3 as short),
+ new MatchIpProtocol(1 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v4
- matchValues = #[
- 2L,
- 3L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 1L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchIcmpv4(2 as short, 3 as short),
+ new MatchIpProtocol(1 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v4
- matchValues = #[
- 2L,
- 3L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 1L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchIcmpv4(2 as short, 3 as short),
+ new MatchIpProtocol(1 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v4
- matchValues = #[
- 2L,
- 3L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 1L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ],
+ new MatchEthernetType(2048L),
+ new MatchEthernetType(2048L),
+ new MatchIcmpv4(2 as short, 3 as short),
+ new MatchIpProtocol(1 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
new NxMatchInfoBuilder >> [
matchField = NxMatchFieldType.ct_state
matchValues = #[
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 68L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 67L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(68 as short),
+ new MatchUdpSourcePort(67 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 546L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 547L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(546 as short),
+ new MatchUdpSourcePort(547 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 130L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(130 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 135L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(135 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 136L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(136 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2054L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2054L),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 251 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 67L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 68L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(67 as short),
+ new MatchUdpSourcePort(68 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 547L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 546L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(547 as short),
+ new MatchUdpSourcePort(546 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
instructionInfoList = #[
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 2048L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 68L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 67L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(2048L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(68 as short),
+ new MatchUdpSourcePort(67 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
instructionInfoList = #[
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 17L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_dst
- matchValues = #[
- 546L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.udp_src
- matchValues = #[
- 547L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(17 as short),
+ new MatchUdpDestinationPort(546 as short),
+ new MatchUdpSourcePort(547 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
instructionInfoList = #[
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 134L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(134 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63020
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 133L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(133 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 135L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(135 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
])
]
matchInfoList = #[
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.eth_type
- matchValues = #[
- 34525L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.ip_proto
- matchValues = #[
- 58L
- ]
- ],
- new MatchInfoBuilder >> [
- matchField = MatchFieldType.icmp_v6
- matchValues = #[
- 136L,
- 0L
- ]
- ],
- new MatchInfoBuilder >> [
- bigMatchValues = #[
- 1085217976614912bi,
- MetaDataUtil.METADATA_MASK_LPORT_TAG
- ]
- matchField = MatchFieldType.metadata
- ]
+ new MatchEthernetType(34525L),
+ new MatchIpProtocol(58 as short),
+ new MatchIcmpv6(136 as short, 0 as short),
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 40 as short
import static com.google.common.collect.Iterables.filter;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
import com.google.common.collect.Iterables;
import java.util.Map;
import org.junit.Test;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
-import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MatchInfoBase;
-import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.NxMatchFieldType;
import org.opendaylight.genius.mdsalutil.NxMatchInfo;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
+import org.opendaylight.genius.mdsalutil.matches.MatchIcmpv4;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv4Destination;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv4Source;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.acl.access.list.entries.ace.Matches;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.acl.access.list.entries.ace.matches.ace.type.AceIpBuilder;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.acl.access.list.entries.ace.matches.ace.type.ace.ip.ace.ip.version.AceIpv4Builder;
AclServiceTestUtils.verifyGeneralFlows(flowMatches, "1", "10.1.1.1", "20.1.1.1", "24");
- Iterable<MatchInfoBase> icmpv4Matches = filter(flowMatches,
- (item -> ((MatchInfo) item).getMatchField().equals(MatchFieldType.icmp_v4)));
- AclServiceTestUtils.verifyMatchValues((MatchInfo) Iterables.get(icmpv4Matches, 0), "1024", "2048");
- AclServiceTestUtils.verifyMatchValues((MatchInfo) Iterables.get(icmpv4Matches, 1), "1024", "2048");
+ int matches = 0;
+ MatchIcmpv4 check = new MatchIcmpv4((short) 1024, (short) 2048);
+ for (MatchInfoBase flowMatch : flowMatches) {
+ if (check.equals(flowMatch)) {
+ matches++;
+ }
+ }
+ assertEquals(2, matches);
}
@Test
List<MatchInfoBase> flowMatches = AclServiceOFFlowBuilder.addDstIpMatches(builder.build());
- AclServiceTestUtils.verifyMatchInfo(flowMatches, MatchFieldType.eth_type,
- Integer.toString(NwConstants.ETHTYPE_IPV4));
- AclServiceTestUtils.verifyMatchInfo(flowMatches, MatchFieldType.ipv4_destination, "10.1.1.1", "24");
+ assertTrue(flowMatches.contains(MatchEthernetType.IPV4));
+ assertTrue(flowMatches.contains(new MatchIpv4Destination("10.1.1.1", "24")));
}
@Test
List<MatchInfoBase> flowMatches = AclServiceOFFlowBuilder.addDstIpMatches(builder.build());
- AclServiceTestUtils.verifyMatchInfo(flowMatches, MatchFieldType.eth_type,
- Integer.toString(NwConstants.ETHTYPE_IPV4));
- AclServiceTestUtils.verifyMatchFieldTypeDontExist(flowMatches, MatchFieldType.ipv4_destination);
+ assertTrue(flowMatches.contains(MatchEthernetType.IPV4));
+ AclServiceTestUtils.verifyMatchFieldTypeDontExist(flowMatches, MatchIpv4Destination.class);
}
@Test
List<MatchInfoBase> flowMatches = AclServiceOFFlowBuilder.addSrcIpMatches(builder.build());
- AclServiceTestUtils.verifyMatchInfo(flowMatches, MatchFieldType.eth_type,
- Integer.toString(NwConstants.ETHTYPE_IPV4));
- AclServiceTestUtils.verifyMatchInfo(flowMatches, MatchFieldType.ipv4_source, "10.1.1.1", "24");
+ assertTrue(flowMatches.contains(MatchEthernetType.IPV4));
+ assertTrue(flowMatches.contains(new MatchIpv4Source("10.1.1.1", "24")));
}
@Test
builder.setAceIpVersion(v4builder.build());
List<MatchInfoBase> flowMatches = AclServiceOFFlowBuilder.addSrcIpMatches(builder.build());
- AclServiceTestUtils.verifyMatchInfo(flowMatches, MatchFieldType.eth_type,
- Integer.toString(NwConstants.ETHTYPE_IPV4));
- AclServiceTestUtils.verifyMatchFieldTypeDontExist(flowMatches, MatchFieldType.ipv4_source);
+ assertTrue(flowMatches.contains(MatchEthernetType.IPV4));
+ AclServiceTestUtils.verifyMatchFieldTypeDontExist(flowMatches, MatchIpv4Source.class);
}
@Test
import org.junit.Assert;
import org.opendaylight.genius.mdsalutil.ActionInfo;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MatchInfoBase;
-import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.NxMatchFieldType;
import org.opendaylight.genius.mdsalutil.NxMatchInfo;
import org.opendaylight.genius.mdsalutil.actions.ActionLearn;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpProtocol;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv4Destination;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv4Source;
import org.opendaylight.genius.utils.cache.CacheUtil;
import org.opendaylight.netvirt.aclservice.api.utils.AclInterface;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.Acl;
public static void verifyGeneralFlows(List<MatchInfoBase> srcFlowMatches, String protocol, String srcIpv4Net,
String dstIpv4Net, String mask) {
- verifyMatchInfo(srcFlowMatches, MatchFieldType.eth_type, Integer.toString(NwConstants.ETHTYPE_IPV4));
- verifyMatchInfo(srcFlowMatches, MatchFieldType.ip_proto, protocol);
- verifyMatchInfo(srcFlowMatches, MatchFieldType.ipv4_source, srcIpv4Net, mask);
- verifyMatchInfo(srcFlowMatches, MatchFieldType.ipv4_destination, dstIpv4Net, mask);
+ assertTrue(srcFlowMatches.contains(MatchEthernetType.IPV4));
+ assertTrue(srcFlowMatches.contains(new MatchIpProtocol(Short.parseShort(protocol))));
+ assertTrue(srcFlowMatches.contains(new MatchIpv4Source(srcIpv4Net, mask)));
+ assertTrue(srcFlowMatches.contains(new MatchIpv4Destination(dstIpv4Net, mask)));
}
public static AceIpBuilder prepareAceIpBuilder(String srcIpv4Net, String dstIpv4Net, String lowerPort,
return builder;
}
- public static void verifyMatchInfo(List<MatchInfoBase> flowMatches, MatchFieldType matchType, String... params) {
- Iterable<MatchInfoBase> matches = filter(flowMatches,
- item -> item instanceof MatchInfo && ((MatchInfo) item).getMatchField().equals(matchType)
- || item instanceof NxMatchInfo && ((NxMatchInfo) item).getMatchField().equals(matchType));
- assertFalse(Iterables.isEmpty(matches));
- for (MatchInfoBase baseMatch : matches) {
- if (baseMatch instanceof MatchInfo) {
- verifyMatchValues((MatchInfo)baseMatch, params);
- } else {
- verifyMatchValues((NxMatchInfo)baseMatch, params);
- }
- }
- }
-
public static void verifyMatchInfo(List<MatchInfoBase> flowMatches, NxMatchFieldType matchType, String... params) {
Iterable<MatchInfoBase> matches = filter(flowMatches,
- item -> item instanceof MatchInfo && ((MatchInfo) item).getMatchField().equals(matchType)
- || item instanceof NxMatchInfo && ((NxMatchInfo) item).getMatchField().equals(matchType));
+ item -> item instanceof NxMatchInfo && ((NxMatchInfo) item).getMatchField().equals(matchType));
assertFalse(Iterables.isEmpty(matches));
for (MatchInfoBase baseMatch : matches) {
- if (baseMatch instanceof MatchInfo) {
- verifyMatchValues((MatchInfo)baseMatch, params);
- } else {
- verifyMatchValues((NxMatchInfo)baseMatch, params);
- }
+ verifyMatchValues((NxMatchInfo)baseMatch, params);
}
}
}
}
- public static void verifyMatchValues(MatchInfo match, String... params) {
- switch (match.getMatchField()) {
-
- case ip_proto:
- case eth_type:
- case tcp_flags:
- case icmp_v4:
- long[] values = Arrays.stream(params).mapToLong(l -> Long.parseLong(l)).toArray();
- Assert.assertArrayEquals(values, match.getMatchValues());
- break;
- case ipv4_source:
- case ipv4_destination:
- case eth_src:
- case eth_dst:
- case arp_sha:
- case arp_tha:
- Assert.assertArrayEquals(params, match.getStringMatchValues());
- break;
- default:
- assertTrue("match type is not supported", false);
- break;
- }
- }
-
- public static void verifyMatchFieldTypeDontExist(List<MatchInfoBase> flowMatches, MatchFieldType matchType) {
+ public static void verifyMatchFieldTypeDontExist(List<MatchInfoBase> flowMatches,
+ Class<? extends MatchInfo> matchType) {
Iterable<MatchInfoBase> matches = filter(flowMatches,
- item -> ((MatchInfo) item).getMatchField().equals(matchType));
- Assert.assertTrue("unexpected match type " + matchType.name(), Iterables.isEmpty(matches));
+ item -> matchType.isAssignableFrom(item.getClass()));
+ Assert.assertTrue("unexpected match type " + matchType.getSimpleName(), Iterables.isEmpty(matches));
}
public static void verifyMatchFieldTypeDontExist(List<MatchInfoBase> flowMatches, NxMatchFieldType matchType) {
import java.math.BigInteger;
import java.util.Arrays;
+import java.util.Collections;
import java.util.List;
import org.opendaylight.controller.md.sal.binding.api.DataBroker;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
import org.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MetaDataUtil;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchMetadata;
import org.opendaylight.genius.utils.ServiceIndex;
import org.opendaylight.netvirt.cloudservicechain.CloudServiceChainConstants;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Uri;
LOG.debug("Installing L3VPN to ELAN default Fallback flow in LPortDispatcher table on Dpn {}",
add.getNodeId());
- BigInteger[] metadataToMatch = new BigInteger[] {
- MetaDataUtil.getServiceIndexMetaData(ServiceIndex.getIndex(NwConstants.L3VPN_SERVICE_NAME,
- NwConstants.L3VPN_SERVICE_INDEX)),
- MetaDataUtil.METADATA_MASK_SERVICE_INDEX
- };
- List<MatchInfo> matches = Arrays.asList(new MatchInfo(MatchFieldType.metadata, metadataToMatch));
+ List<MatchInfo> matches = Collections.singletonList(new MatchMetadata(MetaDataUtil.getServiceIndexMetaData(
+ ServiceIndex.getIndex(NwConstants.L3VPN_SERVICE_NAME, NwConstants.L3VPN_SERVICE_INDEX)),
+ MetaDataUtil.METADATA_MASK_SERVICE_INDEX));
BigInteger metadataToWrite =
MetaDataUtil.getServiceIndexMetaData(ServiceIndex.getIndex(NwConstants.ELAN_SERVICE_NAME,
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
import org.opendaylight.genius.mdsalutil.ActionInfo;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MetaDataUtil;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.actions.ActionRegLoad;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchMetadata;
+import org.opendaylight.genius.mdsalutil.matches.MatchTunnelId;
import org.opendaylight.genius.utils.ServiceIndex;
import org.opendaylight.netvirt.cloudservicechain.CloudServiceChainConstants;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowId;
instructions.add(MDSALUtil.buildApplyActionsInstruction(MDSALUtil
.buildActions(actionsInfos),instructionKey++));
instructions.add(MDSALUtil.buildAndGetGotoTableInstruction(tableId, instructionKey++));
- List<MatchInfo> matches = Arrays.asList(
- new MatchInfo(MatchFieldType.metadata,
- new BigInteger[] { MetaDataUtil.getMetaDataForLPortDispatcher(elanLportTag,
+ List<MatchInfo> matches = Collections.singletonList(
+ new MatchMetadata(
+ MetaDataUtil.getMetaDataForLPortDispatcher(elanLportTag,
ServiceIndex.getIndex(NwConstants.SCF_SERVICE_NAME, NwConstants.SCF_SERVICE_INDEX)),
- MetaDataUtil.getMetaDataMaskForLPortDispatcher() }));
+ MetaDataUtil.getMetaDataMaskForLPortDispatcher()));
Flow flow = MDSALUtil.buildFlowNew(NwConstants.LPORT_DISPATCHER_TABLE, flowRef,
CloudServiceChainConstants.DEFAULT_SCF_FLOW_PRIORITY, flowRef,
dpnId, elanLportTag, elanTag, addOrRemove);
String flowRef = buildLportDispFromScfFlowRef(elanTag, elanLportTag );
if (addOrRemove == NwConstants.ADD_FLOW) {
- List<MatchInfo> matches = Arrays.asList(
- new MatchInfo(MatchFieldType.metadata,
- new BigInteger[] {
- MetaDataUtil.getMetaDataForLPortDispatcher(elanLportTag,
- ServiceIndex.getIndex(NwConstants.ELAN_SERVICE_NAME,
- NwConstants.ELAN_SERVICE_INDEX)),
- MetaDataUtil.getMetaDataMaskForLPortDispatcher() }));
+ List<MatchInfo> matches = Collections.singletonList(
+ new MatchMetadata(MetaDataUtil.getMetaDataForLPortDispatcher(elanLportTag,
+ ServiceIndex.getIndex(NwConstants.ELAN_SERVICE_NAME, NwConstants.ELAN_SERVICE_INDEX)),
+ MetaDataUtil.getMetaDataMaskForLPortDispatcher()));
int instructionKey = 0;
List<Instruction> instructions = Arrays.asList(
// BigInter.ONE is for setting also the Split-Horizon flag since it could have been cleared
dpnId, vni, elanLportTag, addOrRemove);
String flowRef = buildExtTunnelTblToLportDispFlowRef(vni, elanLportTag);
if (addOrRemove == NwConstants.ADD_FLOW) {
- List<MatchInfo> matches = Arrays.asList(new MatchInfo(MatchFieldType.tunnel_id,
- new BigInteger[] { BigInteger.valueOf(vni) } ) );
+ List<MatchInfo> matches = Collections.singletonList(new MatchTunnelId(BigInteger.valueOf(vni)));
List<Instruction> instructions = buildSetLportTagAndGotoLportDispInstructions(elanLportTag);
Flow flow = MDSALUtil.buildFlowNew(NwConstants.EXTERNAL_TUNNEL_TABLE, flowRef,
CloudServiceChainConstants.DEFAULT_SCF_FLOW_PRIORITY, flowRef,
import org.opendaylight.genius.mdsalutil.InstructionInfo;
import org.opendaylight.genius.mdsalutil.MDSALDataStoreUtils;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MetaDataUtil;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.instructions.InstructionGotoTable;
import org.opendaylight.genius.mdsalutil.instructions.InstructionWriteMetadata;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
+import org.opendaylight.genius.mdsalutil.matches.MatchMetadata;
+import org.opendaylight.genius.mdsalutil.matches.MatchMplsLabel;
import org.opendaylight.genius.utils.ServiceIndex;
import org.opendaylight.netvirt.cloudservicechain.CloudServiceChainConstants;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowId;
*/
public static List<MatchInfo> buildMatchOnLportTagAndSI(Integer lportTag, short serviceIndex) {
return Collections.singletonList(
- new MatchInfo(MatchFieldType.metadata,
- new BigInteger[] { MetaDataUtil.getMetaDataForLPortDispatcher(lportTag, serviceIndex),
- MetaDataUtil.getMetaDataMaskForLPortDispatcher() }));
+ new MatchMetadata(MetaDataUtil.getMetaDataForLPortDispatcher(lportTag, serviceIndex),
+ MetaDataUtil.getMetaDataMaskForLPortDispatcher()));
}
/**
public static FlowEntity buildLFibVpnPseudoPortFlow(BigInteger dpId, Long label, String nextHop, int lportTag) {
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type, new long[] { NwConstants.ETHTYPE_MPLS_UC }));
- matches.add(new MatchInfo(MatchFieldType.mpls_label, new String[] { label.toString() }));
+ matches.add(MatchEthernetType.MPLS_UNICAST);
+ matches.add(new MatchMplsLabel(label));
List<ActionInfo> actionsInfos = Collections.singletonList(new ActionPopMpls());
List<InstructionInfo> instructions = new ArrayList<>();
import org.opendaylight.genius.mdsalutil.FlowEntity;
import org.opendaylight.genius.mdsalutil.InstructionInfo;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.actions.ActionDrop;
import org.opendaylight.genius.mdsalutil.actions.ActionPuntToController;
import org.opendaylight.genius.mdsalutil.instructions.InstructionApplyActions;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
-import org.opendaylight.genius.mdsalutil.packet.IPProtocols;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetSource;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpProtocol;
+import org.opendaylight.genius.mdsalutil.matches.MatchUdpDestinationPort;
+import org.opendaylight.genius.mdsalutil.matches.MatchUdpSourcePort;
import org.opendaylight.genius.utils.ServiceIndex;
import org.opendaylight.netvirt.dhcpservice.api.DhcpMConstants;
import org.opendaylight.netvirt.neutronvpn.api.utils.NeutronUtils;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.InterfacesState;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.Instruction;
import org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.servicebinding.rev160406.ServiceBindings;
private static List<MatchInfo> getDhcpMatch(String vmMacAddress) {
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { NwConstants.ETHTYPE_IPV4 }));
- matches.add(new MatchInfo(MatchFieldType.ip_proto,
- new long[] { IPProtocols.UDP.intValue() }));
- matches.add(new MatchInfo(MatchFieldType.udp_src,
- new long[] { DhcpMConstants.DHCP_CLIENT_PORT}));
- matches.add(new MatchInfo(MatchFieldType.udp_dst,
- new long[] { DhcpMConstants.DHCP_SERVER_PORT}));
- matches.add(new MatchInfo(MatchFieldType.eth_src,
- new String[] { vmMacAddress }));
+ matches.add(MatchEthernetType.IPV4);
+ matches.add(MatchIpProtocol.UDP);
+ matches.add(new MatchUdpSourcePort(DhcpMConstants.DHCP_CLIENT_PORT));
+ matches.add(new MatchUdpDestinationPort(DhcpMConstants.DHCP_SERVER_PORT));
+ matches.add(new MatchEthernetSource(new MacAddress(vmMacAddress)));
return matches;
}
import org.opendaylight.genius.mdsalutil.FlowEntity;
import org.opendaylight.genius.mdsalutil.InstructionInfo;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MetaDataUtil;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.instructions.InstructionGotoTable;
import org.opendaylight.genius.mdsalutil.instructions.InstructionWriteMetadata;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchMetadata;
+import org.opendaylight.genius.mdsalutil.matches.MatchTunnelId;
import org.opendaylight.genius.utils.ServiceIndex;
import org.opendaylight.netvirt.elan.ElanException;
import org.opendaylight.netvirt.elan.l2gw.utils.ElanL2GatewayUtils;
private List<MatchInfo> buildMatchesForVni(Long vni) {
List<MatchInfo> mkMatches = new ArrayList<>();
- MatchInfo match = new MatchInfo(MatchFieldType.tunnel_id, new BigInteger[] { BigInteger.valueOf(vni) });
+ MatchInfo match = new MatchTunnelId(BigInteger.valueOf(vni));
mkMatches.add(match);
return mkMatches;
}
private List<MatchInfo> getMatchesForElanTag(long elanTag, boolean isSHFlagSet) {
List<MatchInfo> mkMatches = new ArrayList<>();
// Matching metadata
- mkMatches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
- ElanUtils.getElanMetadataLabel(elanTag, isSHFlagSet), MetaDataUtil.METADATA_MASK_SERVICE_SH_FLAG }));
+ mkMatches.add(new MatchMetadata(
+ ElanUtils.getElanMetadataLabel(elanTag, isSHFlagSet), MetaDataUtil.METADATA_MASK_SERVICE_SH_FLAG));
return mkMatches;
}
private List<MatchInfo> getMatchesForFilterEqualsLPortTag(int lportTag) {
List<MatchInfo> mkMatches = new ArrayList<>();
// Matching metadata
- mkMatches.add(new MatchInfo(MatchFieldType.metadata,
- new BigInteger[] { MetaDataUtil.getLportTagMetaData(lportTag), MetaDataUtil.METADATA_MASK_LPORT_TAG }));
- mkMatches.add(new MatchInfo(MatchFieldType.tunnel_id, new BigInteger[] { BigInteger.valueOf(lportTag) }));
+ mkMatches.add(
+ new MatchMetadata(MetaDataUtil.getLportTagMetaData(lportTag), MetaDataUtil.METADATA_MASK_LPORT_TAG));
+ mkMatches.add(new MatchTunnelId(BigInteger.valueOf(lportTag)));
return mkMatches;
}
private List<MatchInfo> getTunnelIdMatchForFilterEqualsLPortTag(int lportTag) {
List<MatchInfo> mkMatches = new ArrayList<>();
// Matching metadata
- mkMatches.add(new MatchInfo(MatchFieldType.tunnel_id, new BigInteger[] { BigInteger.valueOf(lportTag) }));
+ mkMatches.add(new MatchTunnelId(BigInteger.valueOf(lportTag)));
return mkMatches;
}
import org.opendaylight.genius.mdsalutil.InstructionInfo;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
import org.opendaylight.genius.mdsalutil.MDSALUtil.MdsalOp;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MetaDataUtil;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.instructions.InstructionApplyActions;
import org.opendaylight.genius.mdsalutil.instructions.InstructionGotoTable;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetDestination;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetSource;
+import org.opendaylight.genius.mdsalutil.matches.MatchMetadata;
+import org.opendaylight.genius.mdsalutil.matches.MatchTunnelId;
import org.opendaylight.genius.utils.ServiceIndex;
import org.opendaylight.netvirt.elan.ElanException;
import org.opendaylight.netvirt.elan.internal.ElanInstanceManager;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.state.Interface;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.state.Interface.AdminStatus;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.state.Interface.OperStatus;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.PhysAddress;
import org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowId;
int lportTag = interfaceInfo.getInterfaceTag();
// Matching metadata and eth_src fields
List<MatchInfo> mkMatches = new ArrayList<>();
- mkMatches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
- getElanMetadataLabel(elanInfo.getElanTag(), lportTag), getElanMetadataMask() }));
- mkMatches.add(new MatchInfo(MatchFieldType.eth_src, new String[] { macAddress }));
+ mkMatches.add(new MatchMetadata(getElanMetadataLabel(elanInfo.getElanTag(), lportTag), getElanMetadataMask()));
+ mkMatches.add(new MatchEthernetSource(new MacAddress(macAddress)));
List<InstructionInfo> mkInstructions = new ArrayList<>();
mkInstructions.add(new InstructionGotoTable(NwConstants.ELAN_DMAC_TABLE));
public static List<MatchInfo> getTunnelIdMatchForFilterEqualsLPortTag(int lportTag) {
List<MatchInfo> mkMatches = new ArrayList<>();
// Matching metadata
- mkMatches.add(new MatchInfo(MatchFieldType.tunnel_id, new BigInteger[] { BigInteger.valueOf(lportTag) }));
+ mkMatches.add(new MatchTunnelId(BigInteger.valueOf(lportTag)));
return mkMatches;
}
}
List<MatchInfo> mkMatches = new ArrayList<>();
- mkMatches.add(new MatchInfo(MatchFieldType.metadata,
- new BigInteger[] { getElanMetadataLabel(elanTag), MetaDataUtil.METADATA_MASK_SERVICE }));
- mkMatches.add(new MatchInfo(MatchFieldType.eth_dst, new String[] { macAddress }));
+ mkMatches.add(new MatchMetadata(getElanMetadataLabel(elanTag), MetaDataUtil.METADATA_MASK_SERVICE));
+ mkMatches.add(new MatchEthernetDestination(new MacAddress(macAddress)));
List<Instruction> mkInstructions = new ArrayList<>();
List<Action> actions = getEgressActionsForInterface(ifName, /* tunnelKey */ null);
public Flow buildRemoteDmacFlowEntry(BigInteger srcDpId, BigInteger destDpId, int lportTag, long elanTag,
String macAddress, String displayName, ElanInstance elanInstance) throws ElanException {
List<MatchInfo> mkMatches = new ArrayList<>();
- mkMatches.add(new MatchInfo(MatchFieldType.metadata,
- new BigInteger[] { getElanMetadataLabel(elanTag), MetaDataUtil.METADATA_MASK_SERVICE }));
- mkMatches.add(new MatchInfo(MatchFieldType.eth_dst, new String[] { macAddress }));
+ mkMatches.add(new MatchMetadata(getElanMetadataLabel(elanTag), MetaDataUtil.METADATA_MASK_SERVICE));
+ mkMatches.add(new MatchEthernetDestination(new MacAddress(macAddress)));
List<Instruction> mkInstructions = new ArrayList<>();
public static List<MatchInfo> getTunnelMatchesForServiceId(int elanTag) {
List<MatchInfo> mkMatches = new ArrayList<>();
// Matching metadata
- mkMatches.add(new MatchInfo(MatchFieldType.tunnel_id, new BigInteger[] { BigInteger.valueOf(elanTag) }));
+ mkMatches.add(new MatchTunnelId(BigInteger.valueOf(elanTag)));
return mkMatches;
}
public static List<MatchInfo> buildMatchesForElanTagShFlagAndDstMac(long elanTag, boolean shFlag, String macAddr) {
List<MatchInfo> mkMatches = new ArrayList<>();
- mkMatches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
- getElanMetadataLabel(elanTag, shFlag), MetaDataUtil.METADATA_MASK_SERVICE_SH_FLAG }));
- mkMatches.add(new MatchInfo(MatchFieldType.eth_dst, new String[] { macAddr }));
+ mkMatches.add(
+ new MatchMetadata(getElanMetadataLabel(elanTag, shFlag), MetaDataUtil.METADATA_MASK_SERVICE_SH_FLAG));
+ mkMatches.add(new MatchEthernetDestination(new MacAddress(macAddr)));
return mkMatches;
}
public static FlowEntity buildDmacRedirectToDispatcherFlow(BigInteger dpId, String dstMacAddress,
String displayName, long elanTag) {
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.metadata,
- new BigInteger[] { getElanMetadataLabel(elanTag), MetaDataUtil.METADATA_MASK_SERVICE }));
- matches.add(new MatchInfo(MatchFieldType.eth_dst, new String[] { dstMacAddress }));
+ matches.add(new MatchMetadata(getElanMetadataLabel(elanTag), MetaDataUtil.METADATA_MASK_SERVICE));
+ matches.add(new MatchEthernetDestination(new MacAddress(dstMacAddress)));
List<InstructionInfo> instructions = new ArrayList<>();
List<ActionInfo> actions = new ArrayList<>();
actions.add(new ActionNxResubmit(NwConstants.LPORT_DISPATCHER_TABLE));
public static FlowEntity buildDmacRedirectToDispatcherFlowMacNoActions(BigInteger dpId, String dstMacAddress,
String displayName, long elanTag) {
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.metadata,
- new BigInteger[] { getElanMetadataLabel(elanTag), MetaDataUtil.METADATA_MASK_SERVICE }));
- matches.add(new MatchInfo(MatchFieldType.eth_dst, new String[] { dstMacAddress }));
+ matches.add(new MatchMetadata(getElanMetadataLabel(elanTag), MetaDataUtil.METADATA_MASK_SERVICE));
+ matches.add(new MatchEthernetDestination(new MacAddress(dstMacAddress)));
String flowId = getKnownDynamicmacFlowRef(NwConstants.ELAN_DMAC_TABLE, dpId, dstMacAddress, elanTag);
FlowEntity flow = MDSALUtil.buildFlowEntity(dpId, NwConstants.ELAN_DMAC_TABLE, flowId, 20, displayName, 0, 0,
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
import org.opendaylight.genius.mdsalutil.ActionInfo;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MetaDataUtil;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.actions.ActionPopMpls;
import org.opendaylight.genius.mdsalutil.instructions.InstructionApplyActions;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv4Destination;
+import org.opendaylight.genius.mdsalutil.matches.MatchMetadata;
+import org.opendaylight.genius.mdsalutil.matches.MatchMplsLabel;
+import org.opendaylight.genius.mdsalutil.matches.MatchTunnelId;
import org.opendaylight.netvirt.fibmanager.api.IFibManager;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.table.Flow;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.Instruction;
}
List<MatchInfo> matches = new ArrayList<MatchInfo>();
- matches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
- MetaDataUtil.getVpnIdMetadata(vpnId), MetaDataUtil.METADATA_MASK_VRFID }));
+ matches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(vpnId), MetaDataUtil.METADATA_MASK_VRFID));
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { 0x0800L }));
+ matches.add(MatchEthernetType.IPV4);
if(prefixLength != 0) {
- matches.add(new MatchInfo(MatchFieldType.ipv4_destination, new String[] {
- destPrefix.getHostAddress(), Integer.toString(prefixLength) }));
+ matches.add(new MatchIpv4Destination(destPrefix.getHostAddress(), Integer.toString(prefixLength)));
}
String flowRef = getFlowRef(dpnId, NwConstants.L3_FIB_TABLE, vpnId, ipAddress);
private void removeLFibTableEntry(BigInteger dpnId, long serviceId) {
List<MatchInfo> matches = new ArrayList<MatchInfo>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { 0x8847L }));
- matches.add(new MatchInfo(MatchFieldType.mpls_label, new String[]{Long.toString(serviceId)}));
+ matches.add(MatchEthernetType.MPLS_UNICAST);
+ matches.add(new MatchMplsLabel(serviceId));
String flowRef = getFlowRef(dpnId, NwConstants.L3_LFIB_TABLE, serviceId, "");
LOG.info("remove terminatingServiceActions called with DpnId = {} and label = {}", dpnId , serviceId);
List<MatchInfo> mkMatches = new ArrayList<MatchInfo>();
// Matching metadata
- mkMatches.add(new MatchInfo(MatchFieldType.tunnel_id, new BigInteger[] {BigInteger.valueOf(serviceId)}));
+ mkMatches.add(new MatchTunnelId(BigInteger.valueOf(serviceId)));
Flow flowEntity = MDSALUtil.buildFlowNew(NwConstants.INTERNAL_TUNNEL_TABLE,
getFlowRef(dpnId, NwConstants.INTERNAL_TUNNEL_TABLE, serviceId, ""),
5, String.format("%s:%d","TST Flow Entry ",serviceId), 0, 0,
LOG.info("create terminatingServiceAction on DpnId = {} and serviceId = {} and actions = {}", dpnId , serviceId);
- mkMatches.add(new MatchInfo(MatchFieldType.tunnel_id, new BigInteger[] {BigInteger.valueOf(serviceId)}));
+ mkMatches.add(new MatchTunnelId(BigInteger.valueOf(serviceId)));
Flow terminatingServiceTableFlowEntity = MDSALUtil.buildFlowNew(NwConstants.INTERNAL_TUNNEL_TABLE,
getFlowRef(dpnId, NwConstants.INTERNAL_TUNNEL_TABLE, serviceId, ""), 5, String.format("%s:%d","TST Flow Entry ",serviceId),
}
List<MatchInfo> matches = new ArrayList<MatchInfo>();
- matches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
- MetaDataUtil.getVpnIdMetadata(vpnId), MetaDataUtil.METADATA_MASK_VRFID }));
+ matches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(vpnId), MetaDataUtil.METADATA_MASK_VRFID));
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { 0x0800L }));
+ matches.add(MatchEthernetType.IPV4);
if(prefixLength != 0) {
- matches.add(new MatchInfo(MatchFieldType.ipv4_destination, new String[] {
- destPrefix.getHostAddress(), Integer.toString(prefixLength) }));
+ matches.add(new MatchIpv4Destination(destPrefix.getHostAddress(), Integer.toString(prefixLength)));
}
String flowRef = getFlowRef(dpnId, NwConstants.L3_FIB_TABLE, vpnId, ipAddress);
private void makeLFibTableEntry(BigInteger dpId, long serviceId, List<Instruction> customInstructions) {
List<MatchInfo> matches = new ArrayList<MatchInfo>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { 0x8847L }));
- matches.add(new MatchInfo(MatchFieldType.mpls_label, new String[]{Long.toString(serviceId)}));
+ matches.add(MatchEthernetType.MPLS_UNICAST);
+ matches.add(new MatchMplsLabel(serviceId));
List<Instruction> instructions = new ArrayList<Instruction>();
List<ActionInfo> actionsInfos = new ArrayList<ActionInfo>();
import org.opendaylight.genius.mdsalutil.FlowEntity;
import org.opendaylight.genius.mdsalutil.InstructionInfo;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MetaDataUtil;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.instructions.InstructionGotoTable;
import org.opendaylight.genius.mdsalutil.instructions.InstructionWriteMetadata;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
+import org.opendaylight.genius.mdsalutil.matches.MatchIcmpv4;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpProtocol;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv4Destination;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv6Destination;
+import org.opendaylight.genius.mdsalutil.matches.MatchMetadata;
+import org.opendaylight.genius.mdsalutil.matches.MatchMplsLabel;
+import org.opendaylight.genius.mdsalutil.matches.MatchTunnelId;
import org.opendaylight.genius.mdsalutil.packet.IPProtocols;
import org.opendaylight.genius.utils.ServiceIndex;
import org.opendaylight.genius.utils.batching.ActionableResource;
import org.opendaylight.genius.utils.batching.ResourceHandler;
import org.opendaylight.genius.utils.batching.SubTransaction;
import org.opendaylight.genius.utils.batching.SubTransactionImpl;
-import org.opendaylight.netvirt.elanmanager.api.IElanService;
import org.opendaylight.netvirt.fibmanager.NexthopManager.AdjacencyResult;
import org.opendaylight.netvirt.fibmanager.api.RouteOrigin;
import org.opendaylight.netvirt.vpnmanager.api.IVpnManager;
import org.opendaylight.netvirt.vpnmanager.api.intervpnlink.InterVpnLinkCache;
import org.opendaylight.netvirt.vpnmanager.api.intervpnlink.InterVpnLinkDataComposite;
import org.opendaylight.yang.gen.v1.urn.huawei.params.xml.ns.yang.l3vpn.rev140815.vpn.interfaces.VpnInterface;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.iana._if.type.rev140508.Tunnel;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowCapableNode;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowId;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.Table;
import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.l3nexthop.rev150409.l3nexthop.vpnnexthops.VpnNexthop;
import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.l3nexthop.rev150409.l3nexthop.vpnnexthops.VpnNexthopBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.l3vpn.rev130911.Adjacencies;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.l3vpn.rev130911.PrefixToInterface;
import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.l3vpn.rev130911.VpnInstanceOpData;
import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.l3vpn.rev130911.VpnToExtraroute;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.l3vpn.rev130911.prefix.to._interface.VpnIds;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.l3vpn.rev130911.prefix.to._interface.VpnIdsKey;
import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.l3vpn.rev130911.prefix.to._interface.vpn.ids.Prefixes;
import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.l3vpn.rev130911.prefix.to._interface.vpn.ids.PrefixesBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.l3vpn.rev130911.prefix.to._interface.vpn.ids.PrefixesKey;
import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.l3vpn.rev130911.vpn.instance.op.data.VpnInstanceOpDataEntry;
import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.l3vpn.rev130911.vpn.instance.op.data.VpnInstanceOpDataEntryKey;
import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.l3vpn.rev130911.vpn.instance.op.data.vpn.instance.op.data.entry.VpnToDpnList;
int prefixLength = (values.length == 1) ? 0 : Integer.parseInt(values[1]);
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] { MetaDataUtil.getVpnIdMetadata(vpnTag),
- MetaDataUtil.METADATA_MASK_VRFID }));
- matches.add(new MatchInfo(MatchFieldType.eth_type, new long[] { NwConstants.ETHTYPE_IPV4 }));
+ matches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(vpnTag), MetaDataUtil.METADATA_MASK_VRFID));
+ matches.add(MatchEthernetType.IPV4);
if (prefixLength != 0) {
- matches.add(new MatchInfo(MatchFieldType.ipv4_destination,
- new String[] { destPrefixIpAddress, Integer.toString(prefixLength) }));
+ matches.add(new MatchIpv4Destination(destPrefixIpAddress, Integer.toString(prefixLength)));
}
int priority = DEFAULT_FIB_FLOW_PRIORITY + prefixLength;
// Matching metadata
// FIXME vxlan vni bit set is not working properly with OVS.need to revisit
- mkMatches.add(new MatchInfo(MatchFieldType.tunnel_id, new BigInteger[] {BigInteger.valueOf(label)}));
+ mkMatches.add(new MatchTunnelId(BigInteger.valueOf(label)));
List<InstructionInfo> mkInstructions = new ArrayList<>();
mkInstructions.add(new InstructionApplyActions(actionsInfos));
LOG.debug("remove terminatingServiceActions called with DpnId = {} and label = {}", dpId , label);
List<MatchInfo> mkMatches = new ArrayList<>();
// Matching metadata
- mkMatches.add(new MatchInfo(MatchFieldType.tunnel_id, new BigInteger[] {BigInteger.valueOf(label)}));
+ mkMatches.add(new MatchTunnelId(BigInteger.valueOf(label)));
flowEntity = MDSALUtil.buildFlowEntity(dpId,
NwConstants.INTERNAL_TUNNEL_TABLE,
getTableMissFlowRef(dpId, NwConstants.INTERNAL_TUNNEL_TABLE, (int)label),
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
- MetaDataUtil.getVpnIdMetadata(vpnId), MetaDataUtil.METADATA_MASK_VRFID }));
+ matches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(vpnId), MetaDataUtil.METADATA_MASK_VRFID));
if (destPrefix instanceof Inet4Address) {
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { NwConstants.ETHTYPE_IPV4 }));
+ matches.add(MatchEthernetType.IPV4);
if(prefixLength != 0) {
- matches.add(new MatchInfo(MatchFieldType.ipv4_destination, new String[] {
- destPrefix.getHostAddress(), Integer.toString(prefixLength)}));
+ matches.add(new MatchIpv4Destination(destPrefix.getHostAddress(), Integer.toString(prefixLength)));
}
} else {
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { NwConstants.ETHTYPE_IPV6 }));
+ matches.add(MatchEthernetType.IPV6);
if(prefixLength != 0) {
- matches.add(new MatchInfo(MatchFieldType.ipv6_destination, new String[] {
- destPrefix.getHostAddress() + "/" + Integer.toString(prefixLength)}));
+ matches.add(new MatchIpv6Destination(destPrefix.getHostAddress() + "/" + prefixLength));
}
}
}
List<MatchInfo> matches = new ArrayList<MatchInfo>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { NwConstants.ETHTYPE_MPLS_UC }));
- matches.add(new MatchInfo(MatchFieldType.mpls_label, new String[]{Long.toString(label)}));
+ matches.add(MatchEthernetType.MPLS_UNICAST);
+ matches.add(new MatchMplsLabel(label));
// Install the flow entry in L3_LFIB_TABLE
String flowRef = getFlowRef(dpId, NwConstants.L3_LFIB_TABLE, label, priority);
List<InstructionInfo> instructions = new ArrayList<>();
instructions.add(new InstructionGotoTable(NwConstants.L3_LFIB_TABLE));
List<MatchInfo> matches = new ArrayList<MatchInfo>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { NwConstants.ETHTYPE_MPLS_UC }));
+ matches.add(MatchEthernetType.MPLS_UNICAST);
FlowEntity flowEntityToLfib = MDSALUtil.buildFlowEntity(dpnId, NwConstants.INTERNAL_TUNNEL_TABLE,
getTableMissFlowRef(dpnId, NwConstants.INTERNAL_TUNNEL_TABLE,
NwConstants.L3_LFIB_TABLE),
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.ip_proto, new long[] { IPProtocols.ICMP.intValue() }));
- matches.add(new MatchInfo(MatchFieldType.metadata,
- new BigInteger[] { MetaDataUtil.getVpnIdMetadata(vpnId), MetaDataUtil.METADATA_MASK_VRFID }));
- matches.add(new MatchInfo(MatchFieldType.icmp_v4, new long[] { (short) 8, (short) 0 }));
- matches.add(new MatchInfo(MatchFieldType.eth_type, new long[] { NwConstants.ETHTYPE_IPV4 }));
- matches.add(new MatchInfo(MatchFieldType.ipv4_destination, new String[] { subSplit[0], "32" }));
+ matches.add(MatchIpProtocol.ICMP);
+ matches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(vpnId), MetaDataUtil.METADATA_MASK_VRFID));
+ matches.add(new MatchIcmpv4((short) 8, (short) 0));
+ matches.add(MatchEthernetType.IPV4);
+ matches.add(new MatchIpv4Destination(subSplit[0], "32"));
List<ActionInfo> actionsInfos = new ArrayList<>();
import org.opendaylight.genius.mdsalutil.FlowEntity;
import org.opendaylight.genius.mdsalutil.InstructionInfo;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MetaDataUtil;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.actions.ActionPuntToController;
import org.opendaylight.genius.mdsalutil.instructions.InstructionApplyActions;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
-import org.opendaylight.genius.mdsalutil.packet.IPProtocols;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
+import org.opendaylight.genius.mdsalutil.matches.MatchIcmpv6;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpProtocol;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv6NdTarget;
+import org.opendaylight.genius.mdsalutil.matches.MatchMetadata;
import org.opendaylight.genius.utils.ServiceIndex;
import org.opendaylight.netvirt.elan.utils.ElanUtils;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv6Address;
private static List<MatchInfo> getIcmpv6RSMatch(Long elanTag) {
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { NwConstants.ETHTYPE_IPV6 }));
- matches.add(new MatchInfo(MatchFieldType.ip_proto,
- new long[] { IPProtocols.IPV6ICMP.intValue() }));
- matches.add(new MatchInfo(MatchFieldType.icmp_v6,
- new long[] { Ipv6Constants.ICMP_V6_RS_CODE, 0}));
- matches.add(new MatchInfo(MatchFieldType.metadata,
- new BigInteger[] { ElanUtils.getElanMetadataLabel(elanTag), MetaDataUtil.METADATA_MASK_SERVICE}));
+ matches.add(MatchEthernetType.IPV6);
+ matches.add(MatchIpProtocol.ICMPV6);
+ matches.add(new MatchIcmpv6(Ipv6Constants.ICMP_V6_RS_CODE, (short) 0));
+ matches.add(new MatchMetadata(ElanUtils.getElanMetadataLabel(elanTag), MetaDataUtil.METADATA_MASK_SERVICE));
return matches;
}
private List<MatchInfo> getIcmpv6NSMatch(Long elanTag, String ndTarget) {
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { NwConstants.ETHTYPE_IPV6 }));
- matches.add(new MatchInfo(MatchFieldType.ip_proto,
- new long[] { IPProtocols.IPV6ICMP.intValue() }));
- matches.add(new MatchInfo(MatchFieldType.icmp_v6,
- new long[] { Ipv6Constants.ICMP_V6_NS_CODE, 0}));
- matches.add(new MatchInfo(MatchFieldType.ipv6_nd_target,
- new String[] { ndTarget }));
- matches.add(new MatchInfo(MatchFieldType.metadata,
- new BigInteger[] { ElanUtils.getElanMetadataLabel(elanTag), MetaDataUtil.METADATA_MASK_SERVICE}));
+ matches.add(MatchEthernetType.IPV6);
+ matches.add(MatchIpProtocol.ICMPV6);
+ matches.add(new MatchIcmpv6(Ipv6Constants.ICMP_V6_NS_CODE, (short) 0));
+ matches.add(new MatchIpv6NdTarget(new Ipv6Address(ndTarget)));
+ matches.add(new MatchMetadata(ElanUtils.getElanMetadataLabel(elanTag), MetaDataUtil.METADATA_MASK_SERVICE));
return matches;
}
import org.opendaylight.genius.mdsalutil.FlowEntity;
import org.opendaylight.genius.mdsalutil.InstructionInfo;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MetaDataUtil;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.instructions.InstructionGotoTable;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
+import org.opendaylight.genius.mdsalutil.matches.MatchMetadata;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid;
import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.l3vpn.rev130911.vpn.instance.op.data.VpnInstanceOpDataEntry;
import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.l3vpn.rev130911.vpn.instance.op.data.vpn.instance.op.data.entry.VpnToDpnList;
}
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { 0x0800L }));
+ matches.add(MatchEthernetType.IPV4);
//add match for default route "0.0.0.0/0"
//matches.add(new MatchInfo(MatchFieldType.ipv4_src, new long[] {
// NatUtil.getIpAddress(defaultIP.getAddress()), 0 }));
//add match for vrfid
- matches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
- MetaDataUtil.getVpnIdMetadata(vpnId), MetaDataUtil.METADATA_MASK_VRFID }));
+ matches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(vpnId), MetaDataUtil.METADATA_MASK_VRFID));
List<InstructionInfo> instructions = new ArrayList<>();
instructions.add(new InstructionGotoTable(NwConstants.PSNAT_TABLE));
import org.opendaylight.genius.mdsalutil.GroupEntity;
import org.opendaylight.genius.mdsalutil.InstructionInfo;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MetaDataUtil;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.instructions.InstructionGotoTable;
import org.opendaylight.genius.mdsalutil.instructions.InstructionWriteMetadata;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv4Source;
+import org.opendaylight.genius.mdsalutil.matches.MatchMetadata;
+import org.opendaylight.genius.mdsalutil.matches.MatchMplsLabel;
+import org.opendaylight.genius.mdsalutil.matches.MatchTunnelId;
import org.opendaylight.netvirt.bgpmanager.api.IBgpManager;
import org.opendaylight.netvirt.fibmanager.api.IFibManager;
import org.opendaylight.netvirt.fibmanager.api.RouteOrigin;
protected FlowEntity buildOutboundFlowEntity(BigInteger dpId, long routerId) {
LOG.debug("NAT Service : buildOutboundFlowEntity called for dpId {} and routerId{}", dpId, routerId);
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { 0x0800L }));
- matches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
- MetaDataUtil.getVpnIdMetadata(routerId), MetaDataUtil.METADATA_MASK_VRFID }));
+ matches.add(MatchEthernetType.IPV4);
+ matches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(routerId), MetaDataUtil.METADATA_MASK_VRFID));
List<InstructionInfo> instructions = new ArrayList<>();
List<ActionInfo> actionsInfos = new ArrayList<>();
LOG.debug("NAT Service : buildSnatFlowEntity is called for dpId {}, routerName {} and groupId {}", dpId, routerName, groupId );
long routerId = NatUtil.getVpnId(dataBroker, routerName);
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { 0x0800L }));
- matches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
- MetaDataUtil.getVpnIdMetadata(routerId), MetaDataUtil.METADATA_MASK_VRFID }));
+ matches.add(MatchEthernetType.IPV4);
+ matches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(routerId), MetaDataUtil.METADATA_MASK_VRFID));
List<InstructionInfo> instructions = new ArrayList<>();
routerName );
long routerId = NatUtil.getVpnId(dataBroker, routerName);
List<MatchInfo> matches = new ArrayList<MatchInfo>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { 0x0800L }));
- matches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
- MetaDataUtil.getVpnIdMetadata(routerId), MetaDataUtil.METADATA_MASK_VRFID }));
+ matches.add(MatchEthernetType.IPV4);
+ matches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(routerId), MetaDataUtil.METADATA_MASK_VRFID));
List<InstructionInfo> instructions = new ArrayList<InstructionInfo>();
instructions.add(new InstructionGotoTable(NwConstants.OUTBOUND_NAPT_TABLE));
BigInteger routerId = BigInteger.valueOf (NatUtil.getVpnId(dataBroker, routerName));
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { 0x0800L }));
- matches.add(new MatchInfo(MatchFieldType.tunnel_id, new BigInteger[] {routerId }));
+ matches.add(MatchEthernetType.IPV4);
+ matches.add(new MatchTunnelId(routerId));
List<InstructionInfo> instructions = new ArrayList<>();
instructions.add(new InstructionWriteMetadata(MetaDataUtil.getVpnIdMetadata(routerId.longValue()),
LOG.debug("NAT Service : buildNaptPfibFlowEntity is called for dpId {}, segmentId {}", dpId, segmentId );
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { 0x0800L }));
- matches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
- MetaDataUtil.getVpnIdMetadata(segmentId), MetaDataUtil.METADATA_MASK_VRFID }));
+ matches.add(MatchEthernetType.IPV4);
+ matches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(segmentId), MetaDataUtil.METADATA_MASK_VRFID));
ArrayList<ActionInfo> listActionInfo = new ArrayList<>();
ArrayList<InstructionInfo> instructionInfo = new ArrayList<>();
private void makeLFibTableEntry(BigInteger dpId, long serviceId, short tableId) {
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[]{0x8847L}));
- matches.add(new MatchInfo(MatchFieldType.mpls_label, new String[]{Long.toString(serviceId)}));
+ matches.add(MatchEthernetType.MPLS_UNICAST);
+ matches.add(new MatchMplsLabel(serviceId));
List<Instruction> instructions = new ArrayList<>();
List<ActionInfo> actionsInfos = new ArrayList<>();
LOG.debug("NAT Service : Create terminatingServiceAction on DpnId = {} and serviceId = {} and actions = {}", dpnId , serviceId);
- mkMatches.add(new MatchInfo(MatchFieldType.tunnel_id, new BigInteger[] {BigInteger.valueOf(serviceId)}));
+ mkMatches.add(new MatchTunnelId(BigInteger.valueOf(serviceId)));
Flow terminatingServiceTableFlowEntity = MDSALUtil.buildFlowNew(NwConstants.INTERNAL_TUNNEL_TABLE,
getFlowRef(dpnId, NwConstants.INTERNAL_TUNNEL_TABLE, serviceId, ""), 5, String.format("%s:%d", "TST Flow Entry ", serviceId),
LOG.info("NAT Service : remove terminatingServiceActions called with DpnId = {} and label = {}", dpnId , serviceId);
List<MatchInfo> mkMatches = new ArrayList<>();
// Matching metadata
- mkMatches.add(new MatchInfo(MatchFieldType.tunnel_id, new BigInteger[] {BigInteger.valueOf(serviceId)}));
+ mkMatches.add(new MatchTunnelId(BigInteger.valueOf(serviceId)));
Flow flowEntity = MDSALUtil.buildFlowNew(NwConstants.INTERNAL_TUNNEL_TABLE,
getFlowRef(dpnId, NwConstants.INTERNAL_TUNNEL_TABLE, serviceId, ""),
5, String.format("%s:%d","TST Flow Entry ",serviceId), 0, 0,
private void removeLFibTableEntry(BigInteger dpnId, long serviceId) {
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { 0x8847L }));
- matches.add(new MatchInfo(MatchFieldType.mpls_label, new String[]{Long.toString(serviceId)}));
+ matches.add(MatchEthernetType.MPLS_UNICAST);
+ matches.add(new MatchMplsLabel(serviceId));
String flowRef = getFlowRef(dpnId, NwConstants.L3_LFIB_TABLE, serviceId, "");
LOG.debug("NAT Service : buildSnatFlowEntity is called for dpId {}, routerName {} groupId {} changed VPN ID {}", dpId, routerName, groupId, changedVpnId );
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { 0x0800L }));
- matches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
- MetaDataUtil.getVpnIdMetadata(changedVpnId), MetaDataUtil.METADATA_MASK_VRFID }));
+ matches.add(MatchEthernetType.IPV4);
+ matches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(changedVpnId), MetaDataUtil.METADATA_MASK_VRFID));
List<InstructionInfo> instructions = new ArrayList<>();
List<ActionInfo> actionsInfo = new ArrayList<>();
LOG.debug("NAT Service : buildSnatFlowEntity is called for dpId {}, routerName {} changed VPN ID {}", dpId, routerName, changedVpnId );
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { 0x0800L }));
- matches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
- MetaDataUtil.getVpnIdMetadata(changedVpnId), MetaDataUtil.METADATA_MASK_VRFID }));
+ matches.add(MatchEthernetType.IPV4);
+ matches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(changedVpnId), MetaDataUtil.METADATA_MASK_VRFID));
List<InstructionInfo> instructions = new ArrayList<InstructionInfo>();
instructions.add(new InstructionGotoTable(NwConstants.OUTBOUND_NAPT_TABLE));
BigInteger routerId = BigInteger.valueOf (NatUtil.getVpnId(dataBroker, routerName));
BigInteger bgpVpnIdAsBigInt = BigInteger.valueOf(changedVpnId);
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { 0x0800L }));
- matches.add(new MatchInfo(MatchFieldType.tunnel_id, new BigInteger[] {bgpVpnIdAsBigInt }));
+ matches.add(MatchEthernetType.IPV4);
+ matches.add(new MatchTunnelId(bgpVpnIdAsBigInt));
List<InstructionInfo> instructions = new ArrayList<>();
instructions.add(new InstructionWriteMetadata(MetaDataUtil.getVpnIdMetadata(changedVpnId),
protected FlowEntity buildOutboundFlowEntityWithBgpVpn(BigInteger dpId, long routerId, long changedVpnId) {
LOG.debug("NAT Service : buildOutboundFlowEntityWithBgpVpn called for dpId {} and routerId {}, BGP VPN ID {}", dpId, routerId, changedVpnId);
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[]{0x0800L}));
- matches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[]{
- MetaDataUtil.getVpnIdMetadata(changedVpnId), MetaDataUtil.METADATA_MASK_VRFID}));
+ matches.add(MatchEthernetType.IPV4);
+ matches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(changedVpnId), MetaDataUtil.METADATA_MASK_VRFID));
List<InstructionInfo> instructions = new ArrayList<>();
List<ActionInfo> actionsInfos = new ArrayList<>();
externalIp);
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type, new long[] { NwConstants.ETHTYPE_IPV4 }));
- matches.add(new MatchInfo(MatchFieldType.metadata,
- new BigInteger[] { MetaDataUtil.getVpnIdMetadata(extVpnId), MetaDataUtil.METADATA_MASK_VRFID }));
- matches.add(new MatchInfo(MatchFieldType.ipv4_source, new String[] { externalIp , "32" }));
+ matches.add(MatchEthernetType.IPV4);
+ matches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(extVpnId), MetaDataUtil.METADATA_MASK_VRFID));
+ matches.add(new MatchIpv4Source(externalIp , "32"));
List<InstructionInfo> instructions = new ArrayList<>();
List<ActionInfo> actionsInfos = new ArrayList<>();
LOG.debug("NAT Service : buildNaptPfibFlowEntityWithUpdatedVpnId is called for dpId {}, segmentId {}, BGP VPN ID {}", dpId, segmentId, changedVpnId);
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { 0x0800L }));
- matches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
- MetaDataUtil.getVpnIdMetadata(changedVpnId), MetaDataUtil.METADATA_MASK_VRFID }));
+ matches.add(MatchEthernetType.IPV4);
+ matches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(changedVpnId), MetaDataUtil.METADATA_MASK_VRFID));
ArrayList<ActionInfo> listActionInfo = new ArrayList<>();
ArrayList<InstructionInfo> instructionInfo = new ArrayList<>();
import org.opendaylight.genius.mdsalutil.ActionInfo;
import org.opendaylight.genius.mdsalutil.FlowEntity;
import org.opendaylight.genius.mdsalutil.InstructionInfo;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
import org.opendaylight.genius.mdsalutil.MetaDataUtil;
import org.opendaylight.genius.mdsalutil.instructions.InstructionGotoTable;
import org.opendaylight.genius.mdsalutil.instructions.InstructionWriteMetadata;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv4Destination;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv4Source;
+import org.opendaylight.genius.mdsalutil.matches.MatchMetadata;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress;
import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.natservice.rev160111.FloatingIpInfo;
import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.natservice.rev160111.floating.ip.info.RouterPorts;
LOG.debug("NAT Service : Segment id {} in build preDNAT Flow", segmentId);
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type, new long[]{0x0800L}));
+ matches.add(MatchEthernetType.IPV4);
- matches.add(new MatchInfo(MatchFieldType.ipv4_destination, new String[]{externalIp, "32"}));
+ matches.add(new MatchIpv4Destination(externalIp, "32"));
-// matches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
-// BigInteger.valueOf(vpnId), MetaDataUtil.METADATA_MASK_VRFID }));
+// matches.add(new MatchMetadata(
+// BigInteger.valueOf(vpnId), MetaDataUtil.METADATA_MASK_VRFID));
List<ActionInfo> actionsInfos = new ArrayList<>();
actionsInfos.add(new ActionSetDestinationIp(internalIp, "32"));
LOG.debug("NAT Service : Segment id {} in build DNAT", segmentId);
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
- MetaDataUtil.getVpnIdMetadata(segmentId), MetaDataUtil.METADATA_MASK_VRFID }));
+ matches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(segmentId), MetaDataUtil.METADATA_MASK_VRFID));
- matches.add(new MatchInfo(MatchFieldType.eth_type, new long[] { 0x0800L }));
+ matches.add(MatchEthernetType.IPV4);
- matches.add(new MatchInfo(MatchFieldType.ipv4_destination, new String[] { internalIp, "32" }));
+ matches.add(new MatchIpv4Destination(internalIp, "32"));
List<ActionInfo> actionsInfos = new ArrayList<>();
// actionsInfos.add(new ActionSetDestinationIp(internalIp, "32"));
LOG.debug("NAT Service : Segment id {} in build preSNAT flow", segmentId);
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type, new long[] { 0x0800L }));
+ matches.add(MatchEthernetType.IPV4);
- matches.add(new MatchInfo(MatchFieldType.ipv4_source, new String[] { internalIp, "32" }));
+ matches.add(new MatchIpv4Source(internalIp, "32"));
- matches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
- MetaDataUtil.getVpnIdMetadata(segmentId), MetaDataUtil.METADATA_MASK_VRFID }));
+ matches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(segmentId), MetaDataUtil.METADATA_MASK_VRFID));
List<ActionInfo> actionsInfos = new ArrayList<>();
actionsInfos.add(new ActionSetSourceIp(externalIp, "32"));
}
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
- MetaDataUtil.getVpnIdMetadata(vpnId), MetaDataUtil.METADATA_MASK_VRFID }));
+ matches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(vpnId), MetaDataUtil.METADATA_MASK_VRFID));
- matches.add(new MatchInfo(MatchFieldType.eth_type, new long[] { 0x0800L }));
+ matches.add(MatchEthernetType.IPV4);
- matches.add(new MatchInfo(MatchFieldType.ipv4_source, new String[] { externalIp, "32" }));
+ matches.add(new MatchIpv4Source(externalIp, "32"));
List<ActionInfo> actionsInfo = new ArrayList<>();
List<InstructionInfo> instructions = new ArrayList<InstructionInfo>();
import org.opendaylight.genius.mdsalutil.FlowEntity;
import org.opendaylight.genius.mdsalutil.InstructionInfo;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MetaDataUtil;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.instructions.InstructionGotoTable;
import org.opendaylight.genius.mdsalutil.instructions.InstructionWriteMetadata;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpProtocol;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv4Destination;
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv4Source;
+import org.opendaylight.genius.mdsalutil.matches.MatchMetadata;
+import org.opendaylight.genius.mdsalutil.matches.MatchTcpDestinationPort;
+import org.opendaylight.genius.mdsalutil.matches.MatchTcpSourcePort;
+import org.opendaylight.genius.mdsalutil.matches.MatchUdpDestinationPort;
+import org.opendaylight.genius.mdsalutil.matches.MatchUdpSourcePort;
import org.opendaylight.genius.mdsalutil.packet.Ethernet;
-import org.opendaylight.genius.mdsalutil.packet.IPProtocols;
import org.opendaylight.genius.mdsalutil.packet.IPv4;
import org.opendaylight.genius.mdsalutil.packet.TCP;
import org.opendaylight.genius.mdsalutil.packet.UDP;
MatchInfo metaDataMatchInfo = null;
if(tableId == NwConstants.OUTBOUND_NAPT_TABLE){
- ipMatchInfo = new MatchInfo(MatchFieldType.ipv4_source, new String[] {ipAddressAsString, "32" });
+ ipMatchInfo = new MatchIpv4Source(ipAddressAsString, "32");
if(protocol == NAPTEntryEvent.Protocol.TCP) {
- protocolMatchInfo = new MatchInfo(MatchFieldType.ip_proto, new long[] {IPProtocols.TCP.intValue()});
- portMatchInfo = new MatchInfo(MatchFieldType.tcp_src, new long[]{port});
+ protocolMatchInfo = MatchIpProtocol.TCP;
+ portMatchInfo = new MatchTcpSourcePort(port);
} else if(protocol == NAPTEntryEvent.Protocol.UDP) {
- protocolMatchInfo = new MatchInfo(MatchFieldType.ip_proto, new long[] {IPProtocols.UDP.intValue()});
- portMatchInfo = new MatchInfo(MatchFieldType.udp_src, new long[]{port});
+ protocolMatchInfo = MatchIpProtocol.UDP;
+ portMatchInfo = new MatchUdpSourcePort(port);
}
- metaDataMatchInfo = new MatchInfo(MatchFieldType.metadata,
- new BigInteger[] { MetaDataUtil.getVpnIdMetadata(segmentId), MetaDataUtil.METADATA_MASK_VRFID });
+ metaDataMatchInfo =
+ new MatchMetadata(MetaDataUtil.getVpnIdMetadata(segmentId), MetaDataUtil.METADATA_MASK_VRFID);
}else{
- ipMatchInfo = new MatchInfo(MatchFieldType.ipv4_destination, new String[] {ipAddressAsString, "32" });
+ ipMatchInfo = new MatchIpv4Destination(ipAddressAsString, "32");
if(protocol == NAPTEntryEvent.Protocol.TCP) {
- protocolMatchInfo = new MatchInfo(MatchFieldType.ip_proto, new long[] {IPProtocols.TCP.intValue()});
- portMatchInfo = new MatchInfo(MatchFieldType.tcp_dst, new long[]{port});
+ protocolMatchInfo = MatchIpProtocol.TCP;
+ portMatchInfo = new MatchTcpDestinationPort(port);
} else if(protocol == NAPTEntryEvent.Protocol.UDP) {
- protocolMatchInfo = new MatchInfo(MatchFieldType.ip_proto, new long[] {IPProtocols.UDP.intValue()});
- portMatchInfo = new MatchInfo(MatchFieldType.udp_dst, new long[]{port});
+ protocolMatchInfo = new MatchUdpDestinationPort(port);
}
- //metaDataMatchInfo = new MatchInfo(MatchFieldType.metadata, new BigInteger[]{BigInteger.valueOf(vpnId), MetaDataUtil.METADATA_MASK_VRFID});
+ //metaDataMatchInfo = new MatchMetadata(BigInteger.valueOf(vpnId), MetaDataUtil.METADATA_MASK_VRFID);
}
ArrayList<MatchInfo> matchInfo = new ArrayList<>();
- matchInfo.add(new MatchInfo(MatchFieldType.eth_type, new long[] { 0x0800L }));
+ matchInfo.add(MatchEthernetType.IPV4);
matchInfo.add(ipMatchInfo);
matchInfo.add(protocolMatchInfo);
matchInfo.add(portMatchInfo);
import com.google.common.base.Optional;
import com.google.common.collect.Sets;
-
+import java.math.BigInteger;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Set;
+import java.util.concurrent.ExecutionException;
+import java.util.concurrent.Future;
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
+import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
import org.opendaylight.genius.mdsalutil.ActionInfo;
import org.opendaylight.genius.mdsalutil.BucketInfo;
import org.opendaylight.genius.mdsalutil.FlowEntity;
import org.opendaylight.genius.mdsalutil.GroupEntity;
import org.opendaylight.genius.mdsalutil.InstructionInfo;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
import org.opendaylight.genius.mdsalutil.MetaDataUtil;
import org.opendaylight.genius.mdsalutil.actions.ActionSetFieldTunnelId;
import org.opendaylight.genius.mdsalutil.instructions.InstructionApplyActions;
import org.opendaylight.genius.mdsalutil.instructions.InstructionGotoTable;
+import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
+import org.opendaylight.genius.mdsalutil.matches.MatchMetadata;
import org.opendaylight.netvirt.bgpmanager.api.IBgpManager;
import org.opendaylight.netvirt.fibmanager.api.IFibManager;
-import org.opendaylight.controller.md.sal.binding.api.DataBroker;
-import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
-import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid;
import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.GroupTypes;
import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import java.math.BigInteger;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-import java.util.concurrent.ExecutionException;
-import java.util.concurrent.Future;
-import java.util.HashMap;
-
public class NaptSwitchHA {
private static final Logger LOG = LoggerFactory.getLogger(NaptSwitchHA.class);
private final DataBroker dataBroker;
FlowEntity flowEntity;
List<MatchInfo> matches = new ArrayList<MatchInfo>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[]{ 0x0800L }));
- matches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
- MetaDataUtil.getVpnIdMetadata(routerVpnId), MetaDataUtil.METADATA_MASK_VRFID }));
+ matches.add(MatchEthernetType.IPV4);
+ matches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(routerVpnId), MetaDataUtil.METADATA_MASK_VRFID));
String flowRef = getFlowRefSnat(dpId, NwConstants.PSNAT_TABLE, routerName);
FlowEntity flowEntity;
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[]{ 0x0800L }));
- matches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
- MetaDataUtil.getVpnIdMetadata(routerVpnId), MetaDataUtil.METADATA_MASK_VRFID }));
+ matches.add(MatchEthernetType.IPV4);
+ matches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(routerVpnId), MetaDataUtil.METADATA_MASK_VRFID));
String flowRef = getFlowRefSnat(dpId, NwConstants.PSNAT_TABLE, routerName);
import org.opendaylight.genius.mdsalutil.FlowEntity;
import org.opendaylight.genius.mdsalutil.InstructionInfo;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
import org.opendaylight.genius.mdsalutil.MetaDataUtil;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.instructions.InstructionGotoTable;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
+import org.opendaylight.genius.mdsalutil.matches.MatchMetadata;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
}
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { 0x0800L }));
+ matches.add(MatchEthernetType.IPV4);
//add match for default route "0.0.0.0/0"
// matches.add(new MatchInfo(MatchFieldType.ipv4_dst, new long[] {
// NatUtil.getIpAddress(defaultIP.getAddress()), 0 }));
//add match for vrfid
- matches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
- MetaDataUtil.getVpnIdMetadata(vpnId), MetaDataUtil.METADATA_MASK_VRFID }));
+ matches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(vpnId), MetaDataUtil.METADATA_MASK_VRFID));
List<InstructionInfo> instructions = new ArrayList<>();
instructions.add(new InstructionGotoTable(NwConstants.PSNAT_TABLE));
}
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { 0x0800L }));
+ matches.add(MatchEthernetType.IPV4);
//add match for default route "0.0.0.0/0"
// matches.add(new MatchInfo(MatchFieldType.ipv4_dst, new long[] {
// NatUtil.getIpAddress(defaultIP.getAddress()), 0 }));
//add match for vrfid
- matches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
- MetaDataUtil.getVpnIdMetadata(bgpVpnId), MetaDataUtil.METADATA_MASK_VRFID }));
+ matches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(bgpVpnId), MetaDataUtil.METADATA_MASK_VRFID));
List<InstructionInfo> instructions = new ArrayList<>();
instructions.add(new InstructionGotoTable(NwConstants.PSNAT_TABLE));
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
import org.opendaylight.genius.mdsalutil.ActionInfo;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.actions.ActionNxResubmit;
import org.opendaylight.genius.mdsalutil.instructions.InstructionApplyActions;
import org.opendaylight.genius.mdsalutil.instructions.InstructionGotoTable;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
+import org.opendaylight.genius.mdsalutil.matches.MatchMplsLabel;
+import org.opendaylight.genius.mdsalutil.matches.MatchTunnelId;
import org.opendaylight.netvirt.bgpmanager.api.IBgpManager;
import org.opendaylight.netvirt.elanmanager.api.IElanService;
import org.opendaylight.netvirt.fibmanager.api.IFibManager;
LOG.info("remove terminatingServiceActions called with DpnId = {} and label = {}", dpnId , serviceId);
List<MatchInfo> mkMatches = new ArrayList<>();
// Matching metadata
- mkMatches.add(new MatchInfo(MatchFieldType.tunnel_id, new BigInteger[] {BigInteger.valueOf(serviceId)}));
+ mkMatches.add(new MatchTunnelId(BigInteger.valueOf(serviceId)));
Flow flowEntity = MDSALUtil.buildFlowNew(NwConstants.INTERNAL_TUNNEL_TABLE,
getFlowRef(dpnId, NwConstants.INTERNAL_TUNNEL_TABLE, serviceId, ""),
5, String.format("%s:%d","TST Flow Entry ",serviceId), 0, 0,
LOG.info("create terminatingServiceAction on DpnId = {} and serviceId = {} and actions = {}", dpnId , serviceId);
- mkMatches.add(new MatchInfo(MatchFieldType.tunnel_id, new BigInteger[] {BigInteger.valueOf(serviceId)}));
+ mkMatches.add(new MatchTunnelId(BigInteger.valueOf(serviceId)));
Flow terminatingServiceTableFlowEntity = MDSALUtil.buildFlowNew(NwConstants.INTERNAL_TUNNEL_TABLE,
getFlowRef(dpnId, NwConstants.INTERNAL_TUNNEL_TABLE, serviceId, ""), 5,
private void makeLFibTableEntry(BigInteger dpId, long serviceId, short tableId) {
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { 0x8847L }));
- matches.add(new MatchInfo(MatchFieldType.mpls_label, new String[]{Long.toString(serviceId)}));
+ matches.add(MatchEthernetType.MPLS_UNICAST);
+ matches.add(new MatchMplsLabel(serviceId));
List<Instruction> instructions = new ArrayList<>();
List<ActionInfo> actionsInfos = new ArrayList<>();
private void removeLFibTableEntry(BigInteger dpnId, long serviceId) {
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { 0x8847L }));
- matches.add(new MatchInfo(MatchFieldType.mpls_label, new String[]{Long.toString(serviceId)}));
+ matches.add(MatchEthernetType.MPLS_UNICAST);
+ matches.add(new MatchMplsLabel(serviceId));
String flowRef = getFlowRef(dpnId, NwConstants.L3_LFIB_TABLE, serviceId, "");
import org.opendaylight.genius.mdsalutil.GroupEntity;
import org.opendaylight.genius.mdsalutil.InstructionInfo;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.actions.ActionGroup;
import org.opendaylight.genius.mdsalutil.actions.ActionOutput;
import org.opendaylight.genius.mdsalutil.instructions.InstructionApplyActions;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
import org.opendaylight.netvirt.bgpmanager.api.IBgpManager;
import org.opendaylight.netvirt.natservice.internal.ExternalNetworksChangeListener;
import org.opendaylight.netvirt.natservice.internal.ExternalRoutersListener;
bucketInfo.add(1, bucketSecondary);
List<MatchInfo> matches = new ArrayList<>();
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { 0x0800L }));
+ matches.add(MatchEthernetType.IPV4);
List<InstructionInfo> instructions = new ArrayList<>();
List<ActionInfo> actionsInfos = new ArrayList<>();
import org.opendaylight.genius.mdsalutil.FlowEntity;
import org.opendaylight.genius.mdsalutil.InstructionInfo;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.actions.ActionGroup;
import org.opendaylight.genius.mdsalutil.instructions.InstructionApplyActions;
import org.opendaylight.genius.mdsalutil.instructions.InstructionGotoTable;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchArpOp;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
import org.opendaylight.netvirt.vpnmanager.arp.responder.ArpResponderConstant;
import org.opendaylight.netvirt.vpnmanager.arp.responder.ArpResponderUtil;
import org.opendaylight.yang.gen.v1.urn.opendaylight.genius.idmanager.rev160406.IdManagerService;
ArpResponderConstant.GROUP_FLOW_NAME.value(), buckets);
final List<MatchInfo> matches = new ArrayList<MatchInfo>();
- matches.add(new MatchInfo(MatchFieldType.eth_type, new long[] { NwConstants.ETHTYPE_ARP }));
- matches.add(new MatchInfo(MatchFieldType.arp_op, new long[] {NwConstants.ARP_REQUEST}));
+ matches.add(MatchEthernetType.ARP);
+ matches.add(MatchArpOp.REQUEST);
final List<ActionInfo> actionInfos = Collections.singletonList(
new ActionGroup(ArpResponderUtil.retrieveStandardArpResponderGroupId(idManagerService)));
final List<InstructionInfo> instructions = Collections.singletonList(new InstructionApplyActions(actionInfos));
private void createArpResponseMatchFlowForGwMacTable(WriteTransaction writeFlowTx, BigInteger dpId) {
List<MatchInfo> matches = new ArrayList<MatchInfo>();
- matches.add(new MatchInfo(MatchFieldType.eth_type, new long[] { NwConstants.ETHTYPE_ARP }));
- matches.add(new MatchInfo(MatchFieldType.arp_op, new long[] {NwConstants.ARP_REPLY}));
+ matches.add(MatchEthernetType.ARP);
+ matches.add(MatchArpOp.REPLY);
List<ActionInfo> actionsInfos = new ArrayList<>();
actionsInfos.add(new ActionPuntToController());
actionsInfos.add(new ActionNxResubmit(NwConstants.LPORT_DISPATCHER_TABLE));
import org.opendaylight.genius.mdsalutil.FlowEntity;
import org.opendaylight.genius.mdsalutil.InstructionInfo;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MetaDataUtil;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.instructions.InstructionGotoTable;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetDestination;
+import org.opendaylight.genius.mdsalutil.matches.MatchMetadata;
import org.opendaylight.genius.utils.cache.DataStoreCache;
import org.opendaylight.netvirt.bgpmanager.api.IBgpManager;
import org.opendaylight.netvirt.fibmanager.api.RouteOrigin;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.Interfaces;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.InterfaceKey;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid;
import org.opendaylight.yang.gen.v1.urn.opendaylight.genius.idmanager.rev160406.AllocateIdInput;
import org.opendaylight.yang.gen.v1.urn.opendaylight.genius.idmanager.rev160406.AllocateIdInputBuilder;
public static FlowEntity buildL3vpnGatewayFlow(BigInteger dpId, String gwMacAddress, long vpnId) {
List<MatchInfo> mkMatches = new ArrayList<MatchInfo>();
- mkMatches.add(new MatchInfo(MatchFieldType.metadata, new BigInteger[] {
- MetaDataUtil.getVpnIdMetadata(vpnId), MetaDataUtil.METADATA_MASK_VRFID }));
- mkMatches.add(new MatchInfo(MatchFieldType.eth_dst, new String[] { gwMacAddress }));
+ mkMatches.add(new MatchMetadata(MetaDataUtil.getVpnIdMetadata(vpnId), MetaDataUtil.METADATA_MASK_VRFID));
+ mkMatches.add(new MatchEthernetDestination(new MacAddress(gwMacAddress)));
List<InstructionInfo> mkInstructions = new ArrayList<InstructionInfo>();
mkInstructions.add(new InstructionGotoTable(NwConstants.L3_FIB_TABLE));
String flowId = getL3VpnGatewayFlowRef(NwConstants.L3_GW_MAC_TABLE, dpId, vpnId, gwMacAddress);
import org.opendaylight.genius.mdsalutil.FlowEntity;
import org.opendaylight.genius.mdsalutil.GroupEntity;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MetaDataUtil;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.instructions.InstructionGotoTable;
import org.opendaylight.genius.mdsalutil.instructions.InstructionWriteMetadata;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchArpOp;
+import org.opendaylight.genius.mdsalutil.matches.MatchArpTpa;
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType;
+import org.opendaylight.genius.mdsalutil.matches.MatchMetadata;
import org.opendaylight.netvirt.vpnmanager.ArpReplyOrRequest;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress;
import org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action;
MetaDataUtil.METADATA_MASK_VRFID);
// Matching Arp request flows
- matches.add(new MatchInfo(MatchFieldType.eth_type,
- new long[] { NwConstants.ETHTYPE_ARP }));
- matches.add(new MatchInfo(MatchFieldType.metadata,
- new BigInteger[] { metadata, metadataMask }));
- matches.add(new MatchInfo(MatchFieldType.arp_op,
- new long[] { ArpReplyOrRequest.REQUEST.getArpOperation() }));
- matches.add(new MatchInfo(MatchFieldType.arp_tpa,
- new String[] { ipAddress, "32" }));
+ matches.add(MatchEthernetType.ARP);
+ matches.add(new MatchMetadata(metadata, metadataMask));
+ matches.add(MatchArpOp.REQUEST);
+ matches.add(new MatchArpTpa(ipAddress, "32"));
return matches;
}
import org.opendaylight.controller.md.sal.binding.api.DataBroker;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
import org.opendaylight.genius.mdsalutil.MDSALUtil;
-import org.opendaylight.genius.mdsalutil.MatchFieldType;
import org.opendaylight.genius.mdsalutil.MatchInfo;
import org.opendaylight.genius.mdsalutil.MetaDataUtil;
import org.opendaylight.genius.mdsalutil.NwConstants;
import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
+import org.opendaylight.genius.mdsalutil.matches.MatchMetadata;
import org.opendaylight.genius.utils.ServiceIndex;
import org.opendaylight.netvirt.bgpmanager.api.IBgpManager;
import org.opendaylight.netvirt.fibmanager.api.IFibManager;
*/
public static Flow buildLPortDispatcherFlow(String interVpnLinkName, long vpnId, int lportTag) {
LOG.info("Inter-vpn-link : buildLPortDispatcherFlow. vpnId {} lportTag {} ", vpnId, lportTag);
- List<MatchInfo> matches = Arrays.asList(new MatchInfo(MatchFieldType.metadata,
- new BigInteger[] {
+ List<MatchInfo> matches = Collections.singletonList(new MatchMetadata(
MetaDataUtil.getMetaDataForLPortDispatcher(lportTag,
ServiceIndex.getIndex(NwConstants.L3VPN_SERVICE_NAME, NwConstants.L3VPN_SERVICE_INDEX)),
- MetaDataUtil.getMetaDataMaskForLPortDispatcher() }));
+ MetaDataUtil.getMetaDataMaskForLPortDispatcher()));
String flowRef = getLportDispatcherFlowRef(interVpnLinkName, lportTag);
Flow lPortDispatcherFlow = MDSALUtil.buildFlowNew(NwConstants.LPORT_DISPATCHER_TABLE, flowRef,
VpnConstants.DEFAULT_LPORT_DISPATCHER_FLOW_PRIORITY, flowRef,