Interface OpenflowProtocolData
- All Superinterfaces:
org.opendaylight.yangtools.binding.BindingContract<org.opendaylight.yangtools.binding.DataContainer>,org.opendaylight.yangtools.binding.DataContainer,org.opendaylight.yangtools.binding.DataRoot<OpenflowProtocolData>
@Generated("mdsal-binding-generator")
public interface OpenflowProtocolData
extends org.opendaylight.yangtools.binding.DataRoot<OpenflowProtocolData>
This class represents the following YANG schema fragment defined in module openflow-protocol
module openflow-protocol {
namespace urn:opendaylight:openflow:protocol;
prefix ofproto;
import ietf-yang-types {
prefix yang;
}
import openflow-types {
prefix oft;
}
import openflow-extensible-match {
prefix oxm;
}
import openflow-instruction {
prefix ofinstruction;
}
import openflow-action {
prefix ofaction;
}
revision 2013-07-31 {
}
grouping port-grouping {
leaf port-no {
type uint32;
}
leaf hw-addr {
type yang:mac-address;
}
leaf name {
type string;
}
leaf config {
type oft:port-config;
}
leaf state {
type oft:port-state;
}
leaf current-features {
type oft:port-features;
}
leaf advertised-features {
type oft:port-features;
}
leaf supported-features {
type oft:port-features;
}
leaf peer-features {
type oft:port-features;
}
leaf curr-speed {
type uint32;
units kbps;
}
leaf max-speed {
type uint32;
units kbps;
}
leaf config-v10 {
type oft:port-config-v10;
}
leaf state-v10 {
type oft:port-state-v10;
}
leaf current-features-v10 {
type oft:port-features-v10;
}
leaf advertised-features-v10 {
type oft:port-features-v10;
}
leaf supported-features-v10 {
type oft:port-features-v10;
}
leaf peer-features-v10 {
type oft:port-features-v10;
}
}
grouping buckets-grouping {
list buckets-list {
uses bucket-grouping;
}
}
grouping bucket-grouping {
leaf weight {
type uint16;
}
leaf watch-port {
type oft:port-number;
}
leaf watch-group {
type uint32;
}
uses ofaction:actions-grouping;
}
container table-features-properties-container {
uses table-features-properties-grouping;
}
grouping table-features-properties-grouping {
list table-feature-properties {
config false;
leaf type {
type oft:table-features-prop-type;
}
}
}
grouping ofHeader {
leaf version {
type uint8;
}
leaf xid {
type uint32;
}
}
grouping ofHelloElementHeader {
leaf type {
type oft:hello-element-type;
}
}
grouping hello {
uses ofHeader;
list elements {
uses ofHelloElementHeader;
leaf-list version-bitmap {
type boolean;
ordered-by user;
}
}
}
grouping error {
uses ofHeader;
leaf type {
type uint16;
}
leaf code {
type uint16;
}
leaf type-string {
type string;
}
leaf code-string {
type string;
}
leaf data {
type binary;
}
}
grouping echo-request {
uses ofHeader;
leaf data {
type binary;
}
}
grouping echo-reply {
uses ofHeader;
leaf data {
type binary;
}
}
grouping experimenter-core {
leaf experimenter {
type oft:experimenter-id;
}
leaf exp_type {
type uint32;
}
choice experimenter-data-of-choice;
}
grouping experimenter-of-message {
uses ofHeader;
uses experimenter-core;
}
grouping features-request {
uses ofHeader;
}
grouping features-reply {
uses ofHeader;
leaf datapathId {
type uint64;
}
leaf buffers {
type uint32;
}
leaf tables {
type uint8;
}
leaf auxiliaryId {
type uint8;
}
leaf capabilities {
type oft:capabilities;
}
leaf reserved {
type uint32;
}
leaf capabilities-v10 {
type oft:capabilities-v10;
}
leaf actions-v10 {
type oft:action-type-v10;
}
list phy-port {
uses port-grouping;
}
}
grouping get-config-request {
uses ofHeader;
}
grouping get-config-reply {
uses ofHeader;
leaf flags {
type oft:switch-config-flag;
}
leaf miss-send-len {
type uint16;
}
}
grouping set-config {
uses ofHeader;
leaf flags {
type oft:switch-config-flag;
}
leaf miss-send-len {
type uint16;
}
}
grouping packet-in {
uses ofHeader;
leaf buffer-id {
type uint32;
}
leaf total-len {
type uint16;
}
leaf reason {
type oft:packet-in-reason;
}
leaf table-id {
type oft:table-id;
}
leaf cookie {
type uint64;
}
uses oxm:match-grouping;
leaf data {
type binary;
}
leaf in-port {
type uint16;
}
}
grouping flow-removed {
uses ofHeader;
leaf cookie {
type uint64;
}
leaf priority {
type uint16;
}
leaf reason {
type oft:flow-removed-reason;
}
leaf table-id {
type oft:table-id;
}
leaf duration-sec {
type uint32;
}
leaf duration-nsec {
type uint32;
}
leaf idle-timeout {
type uint16;
}
leaf hard-timeout {
type uint16;
}
leaf packet-count {
type uint64;
}
leaf byte-count {
type uint64;
}
uses oxm:match-grouping;
uses oxm:match-v10-grouping;
}
grouping port-status {
uses ofHeader;
uses port-grouping;
leaf reason {
type oft:port-reason;
}
}
grouping packet-out {
uses ofHeader;
uses ofaction:actions-grouping;
leaf data {
type binary;
}
leaf buffer-id {
type uint32;
}
leaf in-port {
type oft:port-number;
}
}
grouping flow-mod {
uses ofHeader;
leaf cookie {
type uint64;
}
leaf cookie-mask {
type uint64;
}
leaf table-id {
type oft:table-id;
}
leaf command {
type oft:flow-mod-command;
}
leaf idle-timeout {
type uint16;
}
leaf hard-timeout {
type uint16;
}
leaf priority {
type uint16;
}
leaf buffer-id {
type uint32;
}
leaf out-port {
type oft:port-number;
}
leaf out-group {
type uint32;
}
leaf flags {
type oft:flow-mod-flags;
}
uses oxm:match-grouping;
uses ofinstruction:instructions-grouping;
leaf flags-v10 {
type oft:flow-mod-flags-v10;
}
uses oxm:match-v10-grouping;
uses ofaction:actions-grouping;
}
grouping group-mod {
uses ofHeader;
leaf command {
type oft:group-mod-command;
}
leaf type {
type oft:group-type;
}
leaf group-id {
type oft:group-id;
}
uses buckets-grouping;
}
grouping port-mod {
uses ofHeader;
leaf port-no {
type oft:port-number;
}
leaf hw-address {
type yang:mac-address;
}
leaf config {
type oft:port-config;
}
leaf mask {
type oft:port-config;
}
leaf advertise {
type oft:port-features;
}
leaf config-v10 {
type oft:port-config-v10;
}
leaf mask-v10 {
type oft:port-config-v10;
}
leaf advertise-v10 {
type oft:port-features-v10;
}
}
grouping table-mod {
uses ofHeader;
leaf table-id {
type oft:table-id;
}
leaf config {
type oft:table-config;
}
}
grouping multipart-request {
uses ofHeader;
leaf type {
type oft:multipart-type;
}
leaf flags {
type oft:multipart-request-flags;
}
choice multipart-request-body {
case multipart-request-desc-case {
container multipart-request-desc {
leaf empty {
type empty;
}
}
}
case multipart-request-flow-case {
container multipart-request-flow {
leaf table-id {
type uint8;
}
leaf out-port {
type uint32;
}
leaf out-group {
type uint32;
}
leaf cookie {
type uint64;
}
leaf cookie-mask {
type uint64;
}
uses oxm:match-grouping;
uses oxm:match-v10-grouping;
}
}
case multipart-request-aggregate-case {
container multipart-request-aggregate {
leaf table-id {
type uint8;
}
leaf out-port {
type uint32;
}
leaf out-group {
type uint32;
}
leaf cookie {
type uint64;
}
leaf cookie-mask {
type uint64;
}
uses oxm:match-grouping;
uses oxm:match-v10-grouping;
}
}
case multipart-request-table-case {
container multipart-request-table {
leaf empty {
type empty;
}
}
}
case multipart-request-port-stats-case {
container multipart-request-port-stats {
leaf port-no {
type uint32;
}
}
}
case multipart-request-queue-case {
container multipart-request-queue {
leaf port-no {
type uint32;
}
leaf queue-id {
type uint32;
}
}
}
case multipart-request-group-case {
container multipart-request-group {
leaf group-id {
type oft:group-id;
}
}
}
case multipart-request-group-desc-case {
container multipart-request-group-desc {
leaf empty {
type empty;
}
}
}
case multipart-request-group-features-case {
container multipart-request-group-features {
leaf empty {
type empty;
}
}
}
case multipart-request-meter-case {
container multipart-request-meter {
leaf meter-id {
type oft:meter-id;
}
}
}
case multipart-request-meter-config-case {
container multipart-request-meter-config {
leaf meter-id {
type oft:meter-id;
}
}
}
case multipart-request-meter-features-case {
container multipart-request-meter-features {
leaf empty {
type empty;
}
}
}
case multipart-request-table-features-case {
container multipart-request-table-features {
list table-features {
leaf table-id {
type uint8;
}
leaf name {
type string;
}
leaf metadata-match {
type uint64;
}
leaf metadata-write {
type uint64;
}
leaf config {
type oft:table-config;
}
leaf max-entries {
type uint32;
}
uses table-features-properties-grouping;
}
}
}
case multipart-request-port-desc-case {
container multipart-request-port-desc {
leaf empty {
type empty;
}
}
}
case multipart-request-experimenter-case {
container multipart-request-experimenter {
uses experimenter-core;
}
}
}
}
grouping multipart-reply {
uses ofHeader;
leaf type {
type oft:multipart-type;
}
leaf flags {
type oft:multipart-request-flags;
}
choice multipart-reply-body {
case multipart-reply-desc-case {
container multipart-reply-desc {
leaf mfr_desc {
type string;
}
leaf hw_desc {
type string;
}
leaf sw_desc {
type string;
}
leaf serial_num {
type string;
}
leaf dp_desc {
type string;
}
}
}
case multipart-reply-flow-case {
container multipart-reply-flow {
list flow-stats {
leaf table-id {
type uint8;
}
leaf duration-sec {
type uint32;
}
leaf duration-nsec {
type uint32;
}
leaf priority {
type uint16;
}
leaf idle-timeout {
type uint16;
}
leaf hard-timeout {
type uint16;
}
leaf flags {
type oft:flow-mod-flags;
}
leaf cookie {
type uint64;
}
leaf packet-count {
type uint64;
}
leaf byte-count {
type uint64;
}
uses oxm:match-grouping;
uses ofinstruction:instructions-grouping;
uses oxm:match-v10-grouping;
uses ofaction:actions-grouping;
}
}
}
case multipart-reply-aggregate-case {
container multipart-reply-aggregate {
leaf packet-count {
type uint64;
}
leaf byte-count {
type uint64;
}
leaf flow-count {
type uint32;
}
}
}
case multipart-reply-table-case {
container multipart-reply-table {
list table-stats {
leaf table-id {
type uint8;
}
leaf active-count {
type uint32;
}
leaf lookup-count {
type uint64;
}
leaf matched-count {
type uint64;
}
leaf name {
type string;
}
leaf wildcards {
type oft:flow-wildcards-v10;
}
leaf nw-src-mask {
type uint8;
}
leaf nw-dst-mask {
type uint8;
}
leaf max-entries {
type uint32;
}
}
}
}
case multipart-reply-port-stats-case {
container multipart-reply-port-stats {
list port-stats {
leaf port-no {
type uint32;
}
leaf rx-packets {
type uint64;
}
leaf tx-packets {
type uint64;
}
leaf rx-bytes {
type uint64;
}
leaf tx-bytes {
type uint64;
}
leaf rx-dropped {
type uint64;
}
leaf tx-dropped {
type uint64;
}
leaf rx-errors {
type uint64;
}
leaf tx-errors {
type uint64;
}
leaf rx-frame-err {
type uint64;
}
leaf rx-over-err {
type uint64;
}
leaf rx-crc-err {
type uint64;
}
leaf collisions {
type uint64;
}
leaf duration-sec {
type uint32;
}
leaf duration-nsec {
type uint32;
}
}
}
}
case multipart-reply-queue-case {
container multipart-reply-queue {
list queue-stats {
leaf port-no {
type uint32;
}
leaf queue-id {
type uint32;
}
leaf tx-bytes {
type uint64;
}
leaf tx-packets {
type uint64;
}
leaf tx-errors {
type uint64;
}
leaf duration-sec {
type uint32;
}
leaf duration-nsec {
type uint32;
}
}
}
}
case multipart-reply-group-case {
container multipart-reply-group {
list group-stats {
leaf group-id {
type oft:group-id;
}
leaf ref-count {
type uint32;
}
leaf packet-count {
type uint64;
}
leaf byte-count {
type uint64;
}
leaf duration-sec {
type uint32;
}
leaf duration-nsec {
type uint32;
}
list bucket-stats {
leaf packet-count {
type uint64;
}
leaf byte-count {
type uint64;
}
}
}
}
}
case multipart-reply-group-desc-case {
container multipart-reply-group-desc {
list group-desc {
leaf type {
type oft:group-type;
}
leaf group-id {
type oft:group-id;
}
uses buckets-grouping;
}
}
}
case multipart-reply-group-features-case {
container multipart-reply-group-features {
leaf types {
type oft:group-types;
}
leaf capabilities {
type oft:group-capabilities;
}
leaf-list max_groups {
type uint32;
ordered-by user;
}
leaf-list actions-bitmap {
type oft:action-type;
ordered-by user;
}
}
}
case multipart-reply-meter-case {
container multipart-reply-meter {
list meter-stats {
leaf meter-id {
type oft:meter-id;
}
leaf flow-count {
type uint32;
}
leaf packet-in-count {
type uint64;
}
leaf byte-in-count {
type uint64;
}
leaf duration-sec {
type uint32;
}
leaf duration-nsec {
type uint32;
}
list meter-band-stats {
leaf packet-band-count {
type uint64;
}
leaf byte-band-count {
type uint64;
}
}
}
}
}
case multipart-reply-meter-config-case {
container multipart-reply-meter-config {
list meter-config {
leaf flags {
type oft:meter-flags;
}
leaf meter-id {
type oft:meter-id;
}
list bands {
uses meter-band-header;
}
}
}
}
case multipart-reply-meter-features-case {
container multipart-reply-meter-features {
leaf max-meter {
type uint32;
}
leaf band-types {
type oft:meter-band-type-bitmap;
}
leaf capabilities {
type oft:meter-flags;
}
leaf max-bands {
type uint8;
}
leaf max-color {
type uint8;
}
}
}
case multipart-reply-table-features-case {
container multipart-reply-table-features {
list table-features {
leaf table-id {
type uint8;
}
leaf name {
type string;
}
leaf metadata-match {
type binary;
}
leaf metadata-write {
type binary;
}
leaf config {
type oft:table-config;
}
leaf max-entries {
type uint32;
}
uses table-features-properties-grouping;
}
}
}
case multipart-reply-port-desc-case {
container multipart-reply-port-desc {
list ports {
uses port-grouping;
}
}
}
case multipart-reply-experimenter-case {
container multipart-reply-experimenter {
uses experimenter-core;
}
}
}
}
grouping barrier-request {
uses ofHeader;
}
grouping barrier-reply {
uses ofHeader;
}
grouping queue-get-config-request {
uses ofHeader;
leaf port {
type oft:port-number;
}
}
grouping queue-get-config-reply {
uses ofHeader;
leaf port {
type oft:port-number;
}
list queues {
uses packet-queue;
}
}
grouping packet-queue {
leaf queue-id {
type oft:queue-id;
}
leaf port {
type oft:port-number;
}
uses queue-property-header;
}
container queue-prop-container {
uses queue-property-header;
}
grouping queue-property-header {
list queue-property {
config false;
leaf property {
type oft:queue-properties;
}
}
}
grouping role-request {
uses ofHeader;
leaf role {
type oft:controller-role;
}
leaf generation-id {
type uint64;
}
}
grouping role-reply {
uses ofHeader;
leaf role {
type oft:controller-role;
}
leaf generation-id {
type uint64;
}
}
grouping get-async-request {
uses ofHeader;
}
grouping get-async-reply {
uses ofHeader;
uses async-body-grouping;
}
grouping set-async {
uses ofHeader;
uses async-body-grouping;
}
grouping async-body-grouping {
list packet-in-mask {
leaf-list mask {
type oft:packet-in-reason;
}
}
list port-status-mask {
leaf-list mask {
type oft:port-reason;
}
}
list flow-removed-mask {
leaf-list mask {
type oft:flow-removed-reason;
}
}
}
grouping meter-mod {
uses ofHeader;
leaf command {
type oft:meter-mod-command;
}
leaf flags {
type oft:meter-flags;
}
leaf meter-id {
type oft:meter-id;
}
list bands {
uses meter-band-header;
}
}
container meter-band-container {
uses meter-band-header;
}
grouping meter-band-header {
choice meter-band {
case meter-band-drop-case {
container meter-band-drop {
uses meter-band-commons;
}
}
case meter-band-dscp-remark-case {
container meter-band-dscp-remark {
uses meter-band-commons;
leaf prec-level {
type uint8;
}
}
}
case meter-band-experimenter-case {
container meter-band-experimenter {
uses meter-band-commons;
}
}
}
}
grouping meter-band-commons {
leaf type {
type oft:meter-band-type;
}
leaf rate {
type uint32;
}
leaf burst-size {
type uint32;
}
}
notification hello-message {
uses hello;
}
notification error-message {
uses error;
}
notification echo-request-message {
uses echo-request;
}
notification experimenter-message {
uses experimenter-of-message;
}
rpc echo {
input input {
uses echo-request;
}
output output {
uses echo-reply;
}
}
rpc echo-reply {
input input {
uses echo-reply;
}
}
rpc hello {
input input {
uses hello;
}
}
rpc experimenter {
input input {
uses experimenter-of-message;
}
}
rpc get-features {
input input {
uses features-request;
}
output output {
uses features-reply;
}
}
rpc get-config {
input input {
uses get-config-request;
}
output output {
uses get-config-reply;
}
}
rpc set-config {
input input {
uses set-config;
}
}
notification packet-in-message {
uses packet-in;
}
notification flow-removed-message {
uses flow-removed;
}
notification port-status-message {
uses port-status;
}
rpc packet-out {
input input {
uses packet-out;
}
}
rpc flow-mod {
input input {
uses flow-mod;
}
}
rpc group-mod {
input input {
uses group-mod;
}
}
rpc port-mod {
input input {
uses port-mod;
}
}
rpc table-mod {
input input {
uses table-mod;
}
}
rpc multipart-request {
input input {
uses multipart-request;
}
}
notification multipart-reply-message {
uses multipart-reply;
}
rpc barrier {
input input {
uses barrier-request;
}
output output {
uses barrier-reply;
}
}
rpc get-queue-config {
input input {
uses queue-get-config-request;
}
output output {
uses queue-get-config-reply;
}
}
rpc role-request {
input input {
uses role-request;
}
output output {
uses role-reply;
}
}
rpc get-async {
input input {
uses get-async-request;
}
output output {
uses get-async-reply;
}
}
rpc set-async {
input input {
uses set-async;
}
}
rpc meter-mod {
input input {
uses meter-mod;
}
}
}
-
Method Summary
Modifier and TypeMethodDescriptionReturn meterBandContainer, ornullif it is not present.Return queuePropContainer, ornullif it is not present.Return tableFeaturesPropertiesContainer, ornullif it is not present.default Class<OpenflowProtocolData> @NonNull MeterBandContainerReturn meterBandContainer, or an empty instance if it is not present.@NonNull QueuePropContainerReturn queuePropContainer, or an empty instance if it is not present.@NonNull TableFeaturesPropertiesContainerReturn tableFeaturesPropertiesContainer, or an empty instance if it is not present.
-
Method Details
-
implementedInterface
- Specified by:
implementedInterfacein interfaceorg.opendaylight.yangtools.binding.BindingContract<org.opendaylight.yangtools.binding.DataContainer>- Specified by:
implementedInterfacein interfaceorg.opendaylight.yangtools.binding.DataRoot<OpenflowProtocolData>
-
getTableFeaturesPropertiesContainer
TableFeaturesPropertiesContainer getTableFeaturesPropertiesContainer()Return tableFeaturesPropertiesContainer, ornullif it is not present.- Returns:
TableFeaturesPropertiesContainertableFeaturesPropertiesContainer, ornullif it is not present.
-
nonnullTableFeaturesPropertiesContainer
@NonNull TableFeaturesPropertiesContainer nonnullTableFeaturesPropertiesContainer()Return tableFeaturesPropertiesContainer, or an empty instance if it is not present.- Returns:
TableFeaturesPropertiesContainertableFeaturesPropertiesContainer, or an empty instance if it is not present.
-
getQueuePropContainer
QueuePropContainer getQueuePropContainer()Return queuePropContainer, ornullif it is not present.- Returns:
QueuePropContainerqueuePropContainer, ornullif it is not present.
-
nonnullQueuePropContainer
@NonNull QueuePropContainer nonnullQueuePropContainer()Return queuePropContainer, or an empty instance if it is not present.- Returns:
QueuePropContainerqueuePropContainer, or an empty instance if it is not present.
-
getMeterBandContainer
MeterBandContainer getMeterBandContainer()Return meterBandContainer, ornullif it is not present.- Returns:
MeterBandContainermeterBandContainer, ornullif it is not present.
-
nonnullMeterBandContainer
@NonNull MeterBandContainer nonnullMeterBandContainer()Return meterBandContainer, or an empty instance if it is not present.- Returns:
MeterBandContainermeterBandContainer, or an empty instance if it is not present.
-