1 module opendaylight-flow-types {
2 namespace "urn:opendaylight:flow:types";
5 import ietf-yang-types {prefix yang; revision-date "2013-07-15";}
6 import opendaylight-match-types {prefix match; revision-date "2013-10-26";}
7 import opendaylight-action-types {prefix action;}
8 import opendaylight-meter-types {prefix meter; revision-date "2013-09-18";}
10 revision "2013-10-26" {
11 description "Initial revision of flow service";
15 type instance-identifier;
19 description "openflow specific type - flow cookie / flow cookie mask";
23 typedef output-port-values {
58 grouping instruction-list {
66 grouping instruction {
68 case go-to-table-case {
69 container go-to-table {
76 case write-metadata-case {
77 container write-metadata {
88 case write-actions-case {
89 container write-actions {
90 uses action:action-list;
94 case apply-actions-case {
95 container apply-actions {
96 uses action:action-list;
100 case clear-actions-case {
101 container clear-actions {
102 uses action:action-list;
116 typedef flow-mod-flags {
125 typedef removed-flow-reason {
127 enum OFPRR_IDLE_TIMEOUT{
129 description "Flow idle time exceeded idle_timeout.";
131 enum OFPRR_HARD_TIMEOUT {
133 description "Time exceeded hard_timeout.";
137 description "Evicted by a DELETE flow mod.";
139 enum OFPRR_GROUP_DELETE {
141 description "Group was removed.";
147 grouping generic_flow_attributes {
174 container instructions {
175 uses instruction-list;
178 uses generic_flow_attributes;
180 leaf container-name {
223 grouping flow-statistics {
242 grouping flow-table-statistics {
256 grouping flow-mod-removed {
257 uses generic_flow_attributes;
259 leaf removed_reason {
260 type removed-flow-reason;