X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fmodel%2Fmodel-flow-service%2Fsrc%2Fmain%2Fyang%2Fsal-meter.yang;fp=opendaylight%2Fmd-sal%2Fmodel%2Fmodel-flow-service%2Fsrc%2Fmain%2Fyang%2Fsal-meter.yang;h=50f65df8e5a2be77c88147b80962c16717ee3ca2;hb=7ff2e7fd626af68b5d782bb4f8772a9969cee92c;hp=0000000000000000000000000000000000000000;hpb=79fc532382872d160d2f22119d32d8d6c0796886;p=controller.git diff --git a/opendaylight/md-sal/model/model-flow-service/src/main/yang/sal-meter.yang b/opendaylight/md-sal/model/model-flow-service/src/main/yang/sal-meter.yang new file mode 100644 index 0000000000..50f65df8e5 --- /dev/null +++ b/opendaylight/md-sal/model/model-flow-service/src/main/yang/sal-meter.yang @@ -0,0 +1,98 @@ +module sal-meter { + namespace "urn:opendaylight:meter:service"; + prefix meter; + + import opendaylight-inventory {prefix inv;revision-date "2013-08-19";} + import opendaylight-meter-types {prefix meter-type;revision-date "2013-09-18";} + import flow-capable-transaction {prefix tr;} + + revision "2013-09-18" { + description "Initial revision of meter service"; + } + + grouping node-meter { + uses "inv:node-context-ref"; + + uses meter-type:meter; + } + + /** Base configuration structure **/ + grouping meter-update { + uses "inv:node-context-ref"; + + container original-meter { + uses meter-type:meter; + } + container updated-meter { + uses meter-type:meter; + } + } + + rpc add-meter { + input { + uses tr:transaction-metadata; + leaf meter-ref { + type meter-type:meter-ref; + } + uses node-meter; + } + output { + uses tr:transaction-aware; + } + } + + rpc remove-meter { + input { + uses tr:transaction-metadata; + leaf meter-ref { + type meter-type:meter-ref; + } + + uses node-meter; + } + output { + uses tr:transaction-aware; + } + } + + rpc update-meter { + input { + uses tr:transaction-metadata; + leaf meter-ref { + type meter-type:meter-ref; + } + + uses meter-update; + } + output { + uses tr:transaction-aware; + } + } + + notification meter-added { + uses tr:transaction-metadata; + leaf meter-ref { + type meter-type:meter-ref; + } + uses node-meter; + uses tr:transaction-aware; + } + + notification meter-updated { + uses tr:transaction-metadata; + leaf meter-ref { + type meter-type:meter-ref; + } + uses node-meter; + uses tr:transaction-aware; + } + + notification meter-removed { + uses tr:transaction-metadata; + leaf meter-ref { + type meter-type:meter-ref; + } + uses node-meter; + uses tr:transaction-aware; + } +}