1 package org.opendaylight.groupbasedpolicy.renderer.ofoverlay.sf;
5 import org.opendaylight.groupbasedpolicy.renderer.ofoverlay.flow.FlowUtils;
6 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.PortNumber;
7 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.policy.rev140421.subject.feature.instance.ParameterValue;
8 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.policy.rev140421.subject.feature.instance.ParameterValueBuilder;
9 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.policy.rev140421.subject.feature.instance.parameter.value.RangeValueBuilder;
10 import org.opendaylight.yang.gen.v1.urn.opendaylight.l2.types.rev130827.EtherType;
11 import org.opendaylight.yang.gen.v1.urn.opendaylight.model.match.types.rev131026.ethernet.match.fields.EthernetType;
12 import org.opendaylight.yang.gen.v1.urn.opendaylight.model.match.types.rev131026.ethernet.match.fields.EthernetTypeBuilder;
13 import org.opendaylight.yang.gen.v1.urn.opendaylight.model.match.types.rev131026.match.EthernetMatch;
14 import org.opendaylight.yang.gen.v1.urn.opendaylight.model.match.types.rev131026.match.EthernetMatchBuilder;
15 import org.opendaylight.yang.gen.v1.urn.opendaylight.model.match.types.rev131026.match.IpMatch;
16 import org.opendaylight.yang.gen.v1.urn.opendaylight.model.match.types.rev131026.match.IpMatchBuilder;
17 import org.opendaylight.yang.gen.v1.urn.opendaylight.model.match.types.rev131026.match.Layer4Match;
18 import org.opendaylight.yang.gen.v1.urn.opendaylight.model.match.types.rev131026.match.layer._4.match.SctpMatchBuilder;
19 import org.opendaylight.yang.gen.v1.urn.opendaylight.model.match.types.rev131026.match.layer._4.match.TcpMatchBuilder;
20 import org.opendaylight.yang.gen.v1.urn.opendaylight.model.match.types.rev131026.match.layer._4.match.UdpMatchBuilder;
22 import com.google.common.collect.ImmutableMap;
24 public class ClassifierTestUtils {
26 static final EthernetType IPV4_ETH_TYPE = new EthernetTypeBuilder().setType(new EtherType(FlowUtils.IPv4)).build();
27 static final EthernetType IPV6_ETH_TYPE = new EthernetTypeBuilder().setType(new EtherType(FlowUtils.IPv6)).build();
29 static final Long TCP = Long.valueOf(6);
30 static final Long UDP = Long.valueOf(17);
31 static final Long SCTP = Long.valueOf(132);
33 static Map<String, ParameterValue> createRangeValueParam(String paramName, long min, long max) {
34 return ImmutableMap.<String, ParameterValue> of(paramName,
35 new ParameterValueBuilder()
36 .setRangeValue(new RangeValueBuilder()
43 static Map<String, ParameterValue> createIntValueParam(String paramName, long value) {
44 return ImmutableMap.<String, ParameterValue> of(paramName,
45 new ParameterValueBuilder()
50 static final EthernetMatch createEthernetMatch(EthernetType ethType) {
51 return new EthernetMatchBuilder()
52 .setEthernetType(ethType)
56 static final IpMatch createIpMatch(short ipProtoValue) {
57 return new IpMatchBuilder()
58 .setIpProtocol(ipProtoValue)
62 static final Layer4Match createUdpDstPort(int portNumber) {
63 return new UdpMatchBuilder()
64 .setUdpDestinationPort(new PortNumber(portNumber))
68 static final Layer4Match createUdpSrcPort(int portNumber) {
69 return new UdpMatchBuilder()
70 .setUdpSourcePort(new PortNumber(portNumber))
74 final Layer4Match createTcpDstPort(int portNumber) {
75 return new TcpMatchBuilder()
76 .setTcpDestinationPort(new PortNumber(portNumber))
80 final Layer4Match createTcpSrcPort(int portNumber) {
81 return new TcpMatchBuilder()
82 .setTcpSourcePort(new PortNumber(portNumber))
86 final static Layer4Match createSctpDstPort(int portNumber) {
87 return new SctpMatchBuilder()
88 .setSctpDestinationPort(new PortNumber(portNumber))
92 final static Layer4Match createSctpSrcPort(int portNumber) {
93 return new SctpMatchBuilder()
94 .setSctpSourcePort(new PortNumber(portNumber))