X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=model%2Fmodel-flow-base%2Fsrc%2Fmain%2Fyang%2Fopendaylight-flow-types.yang;h=ce4baf673802d2024116ea96c630f393a34704bf;hb=3c58c44881df41f633ba6a7d7a9165d773055ce5;hp=b07c4bfe2b1ca129551eaf78e8e0be97c4fc38a4;hpb=cb7a2057130204f4d690d6d23a6b0371bb6850c7;p=openflowplugin.git diff --git a/model/model-flow-base/src/main/yang/opendaylight-flow-types.yang b/model/model-flow-base/src/main/yang/opendaylight-flow-types.yang index b07c4bfe2b..ce4baf6738 100644 --- a/model/model-flow-base/src/main/yang/opendaylight-flow-types.yang +++ b/model/model-flow-base/src/main/yang/opendaylight-flow-types.yang @@ -8,20 +8,21 @@ module opendaylight-flow-types { import opendaylight-meter-types {prefix meter; revision-date "2013-09-18";} import openflow-protocol { prefix ofproto; revision-date "2013-07-31"; } import openflow-types { prefix oft; revision-date "2013-07-31"; } + import opendaylight-multipart-types { prefix multipart; revision-date "2017-01-12"; } revision "2013-10-26" { description "Initial revision of flow service"; } - + typedef flow-ref { type instance-identifier; } - + typedef flow-cookie { description "openflow specific type - flow cookie / flow cookie mask"; type uint64; } - + typedef output-port-values { type enumeration { enum MAX { @@ -74,47 +75,47 @@ module opendaylight-flow-types { } } } - + case write-metadata-case { container write-metadata { leaf metadata { type uint64; } - + leaf metadata-mask { type uint64; } } } - + case write-actions-case { container write-actions { uses action:action-list; } } - + case apply-actions-case { container apply-actions { uses action:action-list; } } - + case clear-actions-case { container clear-actions { uses action:action-list; } } - + case meter-case { container meter { leaf meter-id { type meter:meter-id; - } + } } } } } - + typedef flow-mod-flags { type bits { bit CHECK_OVERLAP; @@ -124,77 +125,89 @@ module opendaylight-flow-types { bit SEND_FLOW_REM; } } + typedef removed-flow-reason { + type enumeration { + enum OFPRR_IDLE_TIMEOUT{ + value 0; + description "Flow idle time exceeded idle_timeout."; + } + enum OFPRR_HARD_TIMEOUT { + value 1; + description "Time exceeded hard_timeout."; + } + enum OFPRR_DELETE { + value 2; + description "Evicted by a DELETE flow mod."; + } + enum OFPRR_GROUP_DELETE { + value 3; + description "Group was removed."; + } + + } + } - typedef removed_reason_flags { - type bits { - bit IDLE_TIMEOUT; - bit HARD_TIMEOUT; - bit DELETE; - bit GROUP_DELETE; - } - } - grouping generic_flow_attributes { leaf priority { type uint16; } - + leaf idle-timeout { type uint16; } - + leaf hard-timeout { type uint16; } - + leaf cookie { type flow-cookie; } - + leaf table_id { type uint8; } } - + grouping flow { container match { uses match:match; } - + container instructions { uses instruction-list; - } - + } + uses generic_flow_attributes; - + leaf container-name { - type string; + type string; } - + leaf cookie_mask { type flow-cookie; } - + leaf buffer_id { type uint32; } - + leaf out_port { type uint64; } - + leaf out_group { type uint32; } - + leaf flags { type flow-mod-flags; } - + leaf flow-name { type string; } - + leaf installHw { type boolean; } @@ -232,28 +245,28 @@ module opendaylight-flow-types { grouping flow-table-statistics { leaf active { type yang:counter64; - } + } leaf lookup { type yang:counter64; } leaf matched { - type yang:counter64; + type yang:counter64; } } - + grouping flow-mod-removed { uses generic_flow_attributes; - + leaf removed_reason { - type removed_reason_flags; + type removed-flow-reason; } leaf duration_nsec { type uint32; } - + leaf duration_sec { type uint32; } @@ -265,7 +278,7 @@ module opendaylight-flow-types { leaf byte_count { type uint64; } - + container match { uses match:match; } @@ -279,4 +292,13 @@ module opendaylight-flow-types { type oft:flow-mod-command; } } + + augment "/multipart:multipart-request/multipart:multipart-request-body" { + case multipart-request-flow-stats { + uses flow; + } + case multipart-request-flow-aggregate-stats { + uses flow; + } + } }