From: Kamal Rameshan Date: Thu, 17 Apr 2014 02:59:54 +0000 (-0700) Subject: Bug:701-Have Typed ErrorNotification for different node errors X-Git-Tag: autorelease-tag-v20140601202136_82eb3f9~181^2 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=commitdiff_plain;h=76e27b5eb6498a4cc12e052a54e91e1323abfb54 Bug:701-Have Typed ErrorNotification for different node errors Change-Id: I674203531d0205dd13b47b64616624b5193bcb4d Signed-off-by: Kamal Rameshan --- diff --git a/opendaylight/md-sal/model/model-flow-service/src/main/yang/node-errors.yang b/opendaylight/md-sal/model/model-flow-service/src/main/yang/node-errors.yang new file mode 100644 index 0000000000..a8eec26936 --- /dev/null +++ b/opendaylight/md-sal/model/model-flow-service/src/main/yang/node-errors.yang @@ -0,0 +1,168 @@ +module node-error { + namespace "urn:opendaylight:node:error:service"; + prefix node-error; + + import sal-flow {prefix flow; revision-date "2013-08-19";} + import flow-errors {prefix error;} + import flow-capable-transaction {prefix tr;} + import yang-ext {prefix ext; revision-date "2013-07-09";} + import opendaylight-inventory {prefix inv;revision-date "2013-08-19";} + import opendaylight-flow-types {prefix types;revision-date "2013-10-26";} + import opendaylight-group-types {prefix group-type;revision-date 2013-10-18;} + import opendaylight-meter-types {prefix meter-type;revision-date "2013-09-18";} + + revision "2014-04-10" { + description "Initial revision of errors received from a node"; + } + + notification hello-failed-error-notification { + description "Model for ofp_error-Type=0, Hello protocol failed"; + + uses error:error-message; + uses tr:transaction-aware; + uses tr:transaction-metadata; + uses flow:base-node-error-notification; + uses flow:node-error-reference; + } + + notification bad-request-error-notification { + description "Model for ofp_error-Type=1, Request was not understood."; + + uses error:error-message; + uses tr:transaction-aware; + uses tr:transaction-metadata; + uses flow:base-node-error-notification; + uses flow:node-error-reference; + } + + notification bad-action-error-notification { + description "Model for ofp_error-Type=2, Error in action description."; + + uses error:error-message; + uses tr:transaction-aware; + uses tr:transaction-metadata; + uses flow:base-node-error-notification; + uses flow:node-error-reference; + } + + notification bad-instruction-error-notification { + description "Model for ofp_error-Type=3, Error in instruction list."; + + uses error:error-message; + uses tr:transaction-aware; + uses tr:transaction-metadata; + uses flow:base-node-error-notification; + uses flow:node-error-reference; + } + + notification bad-match-error-notification { + description "Model for ofp_error-Type=4, Error in match."; + + uses error:error-message; + uses tr:transaction-aware; + uses tr:transaction-metadata; + uses flow:base-node-error-notification; + uses flow:node-error-reference; + } + + notification flow-mod-error-notification { + description "Model for ofp_error-Type=5 - Problem modifying flow entry."; + + uses error:error-message; + uses tr:transaction-aware; + uses tr:transaction-metadata; + uses flow:base-node-error-notification; + uses flow:node-error-reference; + uses flow:node-error-reference; + } + + notification group-mod-error-notification { + description "Model for ofp_error-Type=6 - Problem modifying group entry."; + + uses error:error-message; + uses tr:transaction-aware; + uses tr:transaction-metadata; + uses flow:base-node-error-notification; + uses flow:node-error-reference; + } + + notification port-mod-error-notification { + description "Model for ofp_error-Type=7 - Port mod request failed."; + + uses error:error-message; + uses tr:transaction-aware; + uses tr:transaction-metadata; + uses flow:base-node-error-notification; + uses flow:node-error-reference; + } + + notification table-mod-error-notification { + description "Model for ofp_error-Type=8 - Table mod request failed."; + + uses error:error-message; + uses tr:transaction-aware; + uses tr:transaction-metadata; + uses flow:base-node-error-notification; + uses flow:node-error-reference; + } + + notification queue-op-error-notification { + description "Model for ofp_error-Type=9 - Queue operation failed."; + + uses error:error-message; + uses tr:transaction-aware; + uses tr:transaction-metadata; + uses flow:base-node-error-notification; + uses flow:node-error-reference; + } + + notification switch-config-error-notification { + description "Model for ofp_error-Type=10 - Switch Config request failed."; + + uses error:error-message; + uses tr:transaction-aware; + uses tr:transaction-metadata; + uses flow:base-node-error-notification; + uses flow:node-error-reference; + } + + notification role-request-error-notification { + description "Model for ofp_error-Type=11 - Controller Role request failed."; + + uses error:error-message; + uses tr:transaction-aware; + uses tr:transaction-metadata; + uses flow:base-node-error-notification; + uses flow:node-error-reference; + } + + notification meter-mod-error-notification { + description "Model for ofp_error-Type=12 - Error in meter."; + + uses error:error-message; + uses tr:transaction-aware; + uses tr:transaction-metadata; + uses flow:base-node-error-notification; + uses flow:node-error-reference; + } + + notification table-features-error-notification { + description "Model for ofp_error-Type=13 - Setting table features failed."; + + uses error:error-message; + uses tr:transaction-aware; + uses tr:transaction-metadata; + uses flow:base-node-error-notification; + uses flow:node-error-reference; + } + + notification experimenter-error-notification { + description "Model for ofp_error-Type=65535 - Experimenter Error Messages"; + uses error:error-message; + uses tr:transaction-aware; + uses tr:transaction-metadata; + uses flow:base-node-error-notification; + uses flow:node-error-reference; + } +} + diff --git a/opendaylight/md-sal/model/model-flow-service/src/main/yang/sal-flow.yang b/opendaylight/md-sal/model/model-flow-service/src/main/yang/sal-flow.yang index b3e6e450af..4cb1d08917 100644 --- a/opendaylight/md-sal/model/model-flow-service/src/main/yang/sal-flow.yang +++ b/opendaylight/md-sal/model/model-flow-service/src/main/yang/sal-flow.yang @@ -38,6 +38,33 @@ module sal-flow { uses types:flow; } + grouping base-node-error-notification { + leaf node { + ext:context-reference "inv:node-context"; + type inv:node-ref; + } + } + + grouping node-error-reference { + choice object-reference { + case flow-ref{ + leaf flow-ref { + type types:flow-ref; + } + } + case group-ref{ + leaf group-ref { + type group-type:group-ref; + } + } + case meter-ref{ + leaf meter-ref { + type meter-type:meter-ref; + } + } + } + } + /** Base configuration structure **/ grouping flow-update { uses "inv:node-context-ref"; @@ -124,28 +151,8 @@ module sal-flow { uses error:error-message; uses tr:transaction-aware; uses tr:transaction-metadata; - choice object-reference { - case flow-ref{ - leaf flow-ref { - type types:flow-ref; - } - } - case group-ref{ - leaf group-ref { - type group-type:group-ref; - } - } - case meter-ref{ - leaf meter-ref { - type meter-type:meter-ref; - } - } - } - leaf node { - ext:context-reference "inv:node-context"; - type inv:node-ref; - } - + uses node-error-reference; + uses base-node-error-notification; } notification node-experimenter-error-notification {