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.sf.classifiers;
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.ParameterBuilder;
17 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.policy.rev140421.subject.feature.definition.Parameter.IsRequired;
18 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.policy.rev140421.subject.feature.definition.Parameter.Type;
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;
22 import com.google.common.collect.ImmutableList;
23 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
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);
49 public static final Long SCTP_VALUE = Long.valueOf(132);
51 public static final ClassifierDefinitionId ID =
52 new ClassifierDefinitionId("79c6fdb2-1e1a-4832-af57-c65baf5c2335");
54 * Protocol classifier-definition
56 public static final ClassifierDefinition DEFINITION =
57 new ClassifierDefinitionBuilder().setId(ID)
58 .setName(new ClassifierName("ip_proto"))
59 .setDescription(new Description("Match on the IP protocol of IP traffic"))
60 .setParameter(ImmutableList.of(
61 new ParameterBuilder().setName(new ParameterName(PROTO_PARAM))
62 .setDescription(new Description(
63 "The IP protocol to match against"))
64 .setIsRequired(IsRequired.Required)
69 public static final InstanceIdentifier IID =
70 InstanceIdentifier.builder(SubjectFeatureDefinitions.class)
71 .child(ClassifierDefinition.class, DEFINITION.getKey())