2 * Copyright (c) 2014 Cisco Systems, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
9 package org.opendaylight.groupbasedpolicy.api.sf;
11 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.common.rev140421.ClassifierDefinitionId;
12 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.common.rev140421.ClassifierName;
13 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.common.rev140421.Description;
14 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.common.rev140421.ParameterName;
15 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.policy.rev140421.SubjectFeatureDefinitions;
16 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.policy.rev140421.subject.feature.definition.Parameter.IsRequired;
17 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.policy.rev140421.subject.feature.definition.Parameter.Type;
18 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.policy.rev140421.subject.feature.definition.ParameterBuilder;
19 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.policy.rev140421.subject.feature.definitions.ClassifierDefinition;
20 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.policy.rev140421.subject.feature.definitions.ClassifierDefinitionBuilder;
21 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
23 import com.google.common.collect.ImmutableList;
26 * Match on the IP protocol of IP traffic
28 public class IpProtoClassifierDefinition {
31 * Protocol parameter name
33 public static final String PROTO_PARAM = "proto";
37 public static final Long TCP_VALUE = Long.valueOf(6);
41 public static final Long UDP_VALUE = Long.valueOf(17);
45 public static final Long ICMP_VALUE = Long.valueOf(1);
47 * ICMPv6 protocol value
49 public static final Long ICMPv6_VALUE = Long.valueOf(58);
53 public static final Long SCTP_VALUE = Long.valueOf(132);
55 public static final ClassifierDefinitionId ID = new ClassifierDefinitionId("Classifier-IP-Protocol");
57 * Protocol classifier-definition
59 public static final ClassifierDefinition DEFINITION = new ClassifierDefinitionBuilder().setId(ID)
60 .setName(new ClassifierName("ip_proto"))
61 .setDescription(new Description("Match on the IP protocol of IP traffic"))
62 .setParameter(ImmutableList.of(new ParameterBuilder().setName(new ParameterName(PROTO_PARAM))
63 .setDescription(new Description("The IP protocol to match against"))
64 .setIsRequired(IsRequired.Required)
69 public static final InstanceIdentifier<ClassifierDefinition> IID = InstanceIdentifier
70 .builder(SubjectFeatureDefinitions.class).child(ClassifierDefinition.class, DEFINITION.getKey()).build();