module v3po-impl { yang-version 1; namespace "urn:opendaylight:params:xml:ns:yang:v3po:impl"; prefix "v3po-impl"; import config { prefix config; revision-date 2013-04-05; } import opendaylight-md-sal-binding { prefix md-sal-binding; revision-date 2013-10-28;} import opendaylight-md-sal-dom {prefix dom;} import vpp-jvpp-cfg { prefix vjvppc; revision-date 2016-04-06; } import translate-api { prefix tapi; revision-date 2016-04-06; } import data-api { prefix dapi; revision-date 2016-04-11; } description "Service definition for v3po project"; revision "2014-12-10" { description "Initial revision"; } identity v3po { base config:module-type; config:provided-service dom:dom-broker-osgi-registry; config:java-name-prefix V3po; } augment "/config:modules/config:module/config:configuration" { case v3po { when "/config:modules/config:module/config:type = 'v3po'"; container dom-broker { uses config:service-ref { refine type { mandatory true; config:required-identity dom:dom-broker-osgi-registry; } } } container honeycomb-dom-data-broker { uses config:service-ref { refine type { mandatory true; config:required-identity dom:dom-async-data-broker; } } } } } identity binding-broker-netconf { base config:module-type; config:provided-service md-sal-binding:binding-broker-osgi-registry; config:java-name-prefix NetconfBindingBroker; } augment "/config:modules/config:module/config:configuration" { case binding-broker-netconf { when "/config:modules/config:module/config:type = 'binding-broker-netconf'"; container netconf-binding-broker { uses config:service-ref { refine type { mandatory true; config:required-identity md-sal-binding:binding-async-data-broker; } } } } } identity honeycomb-dom-data-broker { base config:module-type; config:provided-service dom:dom-async-data-broker; config:java-name-prefix DataBroker; } augment "/config:modules/config:module/config:configuration" { case honeycomb-dom-data-broker { when "/config:modules/config:module/config:type = 'honeycomb-dom-data-broker'"; container config-data-tree { uses config:service-ref { refine type { mandatory true; config:required-identity dapi:honeycomb-modifiable-data-tree; } } } container operational-data-tree { uses config:service-ref { refine type { mandatory true; config:required-identity dapi:honeycomb-readable-data-tree; } } } } } identity honeycomb-context-dom-data-broker { base config:module-type; config:provided-service dom:dom-async-data-broker; config:java-name-prefix ContextDataBroker; description "DomBroker on top of context data-tree"; } augment "/config:modules/config:module/config:configuration" { case honeycomb-context-dom-data-broker { when "/config:modules/config:module/config:type = 'honeycomb-context-dom-data-broker'"; container context-data-tree { uses config:service-ref { refine type { mandatory true; config:required-identity dapi:data-tree; } } } } } identity netconf-monitoring-reader { base config:module-type; config:provided-service tapi:honeycomb-reader; } augment "/config:modules/config:module/config:configuration" { case netconf-monitoring-reader { when "/config:modules/config:module/config:type = 'netconf-monitoring-reader'"; container netconf-monitoring-binding-broker { uses config:service-ref { refine type { mandatory true; config:required-identity md-sal-binding:binding-async-data-broker; } } } } } identity context-reader { base config:module-type; config:provided-service tapi:honeycomb-reader; description "A reader to provide mapping context related data"; } augment "/config:modules/config:module/config:configuration" { case context-reader { when "/config:modules/config:module/config:type = 'context-reader'"; container context-binding-broker { uses config:service-ref { refine type { mandatory true; config:required-identity md-sal-binding:binding-async-data-broker; } } } } } }