Interface OpendaylightMatchTypesData
- All Superinterfaces:
org.opendaylight.yangtools.yang.binding.DataRoot
@Generated("mdsal-binding-generator")
public interface OpendaylightMatchTypesData
extends org.opendaylight.yangtools.yang.binding.DataRoot
This class represents the following YANG schema fragment defined in module opendaylight-match-types
module opendaylight-match-types { namespace urn:opendaylight:model:match:types; prefix match; import ietf-inet-types { prefix inet; revision-date 2013-07-15; } import ietf-yang-types { prefix yang; revision-date 2013-07-15; } import opendaylight-l2-types { prefix l2t; revision-date 2013-08-27; } import opendaylight-inventory { prefix inv; revision-date 2013-08-19; } import opendaylight-arbitrary-bitmask-fields { prefix mask; revision-date 2016-01-30; } import opendaylight-ipv6-arbitrary-bitmask-fields { prefix ipv6-arbitrary-mask; revision-date 2016-02-24; } revision 2013-10-26 { } grouping mac-address-filter { leaf address { type yang:mac-address; } leaf mask { type yang:mac-address; } } grouping of-metadata { leaf metadata { type uint64; } leaf metadata-mask { type uint64; } } grouping packet-type-fields { leaf packet-type { type uint32; } } grouping ethernet-match-fields { container ethernet-source { presence "Match field is active and set"; uses mac-address-filter; } container ethernet-destination { presence "Match field is active and set"; uses mac-address-filter; } container ethernet-type { presence "Match field is active and set"; leaf type { type l2t:ether-type; } } } grouping vlan-match-fields { container vlan-id { presence "Match field is active and set"; leaf vlan-id-present { type boolean; } leaf vlan-id { type l2t:vlan-id; } } leaf vlan-pcp { type l2t:vlan-pcp; } } grouping ip-match-fields { leaf ip-protocol { type uint8; } leaf ip-dscp { type inet:dscp; } leaf ip-ecn { type uint8; } leaf ip-proto { type inet:ip-version; } } grouping ipv4-match-fields { leaf ipv4-source { type inet:ipv4-prefix; } leaf ipv4-destination { type inet:ipv4-prefix; } } grouping ipv6-match-fields { leaf ipv6-source { type inet:ipv6-prefix; } leaf ipv6-destination { type inet:ipv6-prefix; } leaf ipv6-nd-target { type inet:ipv6-address; } container ipv6-label { leaf ipv6-flabel { type inet:ipv6-flow-label; } leaf flabel-mask { type inet:ipv6-flow-label; } } leaf ipv6-nd-sll { type yang:mac-address; } leaf ipv6-nd-tll { type yang:mac-address; } container ipv6-ext-header { leaf ipv6-exthdr { type uint16; } leaf ipv6-exthdr-mask { type uint16 { range 0..512; } } } } grouping udp-match-fields { leaf udp-source-port { type inet:port-number; } leaf udp-source-port-mask { type inet:port-number; } leaf udp-destination-port { type inet:port-number; } leaf udp-destination-port-mask { type inet:port-number; } } grouping protocol-match-fields { leaf mpls-label { type uint32; } leaf mpls-tc { type uint8; } leaf mpls-bos { type uint8; } container pbb { leaf pbb-isid { type uint32; } leaf pbb-mask { type uint32 { range 0..16777216; } } } } grouping tcp-match-fields { leaf tcp-source-port { type inet:port-number; } leaf tcp-source-port-mask { type inet:port-number; } leaf tcp-destination-port { type inet:port-number; } leaf tcp-destination-port-mask { type inet:port-number; } } grouping sctp-match-fields { leaf sctp-source-port { type inet:port-number; } leaf sctp-destination-port { type inet:port-number; } } grouping icmpv4-match-fields { leaf icmpv4-type { type uint8; } leaf icmpv4-code { type uint8; } } grouping icmpv6-match-fields { leaf icmpv6-type { type uint8; } leaf icmpv6-code { type uint8; } } grouping arp-match-fields { leaf arp-op { type uint16; } leaf arp-source-transport-address { type inet:ipv4-prefix; } leaf arp-target-transport-address { type inet:ipv4-prefix; } container arp-source-hardware-address { presence "Match field is active and set"; uses mac-address-filter; } container arp-target-hardware-address { presence "Match field is active and set"; uses mac-address-filter; } } grouping tcp-flags-match-fields { leaf tcp-flags { type uint16; } leaf tcp-flags-mask { type uint16; } } grouping tunnel-ipv4-match-fields { leaf tunnel-ipv4-source { type inet:ipv4-prefix; } leaf tunnel-ipv4-destination { type inet:ipv4-prefix; } } grouping match { leaf in-port { type inv:node-connector-id; } leaf in-phy-port { type inv:node-connector-id; } container packet-type-match { uses packet-type-fields; } container metadata { uses of-metadata; } container tunnel { leaf tunnel-id { type uint64; } leaf tunnel-mask { type uint64; } } container ethernet-match { uses ethernet-match-fields; } container vlan-match { uses vlan-match-fields; } container ip-match { uses ip-match-fields; } choice layer-3-match { case ipv4-match { uses ipv4-match-fields; } case ipv4-match-arbitrary-bit-mask { uses mask:ipv4-match-arbitrary-bitmask-fields; } case ipv6-match { uses ipv6-match-fields; } case ipv6-match-arbitrary-bit-mask { uses ipv6-arbitrary-mask:ipv6-match-arbitrary-bitmask-fields; } case arp-match { uses arp-match-fields; } case tunnel-ipv4-match { uses tunnel-ipv4-match-fields; } } choice layer-4-match { case udp-match { uses udp-match-fields; } case tcp-match { uses tcp-match-fields; } case sctp-match { uses sctp-match-fields; } } container icmpv4-match { uses icmpv4-match-fields; } container icmpv6-match { uses icmpv6-match-fields; } container protocol-match-fields { uses protocol-match-fields; } container tcp-flags-match { uses tcp-flags-match-fields; } } }