X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-binding-broker%2Fsrc%2Fmain%2Fyang%2Fopendaylight-binding-broker-impl.yang;h=aec27235910633fb34389208e02b550c81a85a43;hp=9da073f71b44545694350d17c15f588ea2c36af3;hb=74561c35949153a92df7d352be0fb135c30f39c4;hpb=a158ee12b65d80611aa7f2a34ab962ea795dccec diff --git a/opendaylight/md-sal/sal-binding-broker/src/main/yang/opendaylight-binding-broker-impl.yang b/opendaylight/md-sal/sal-binding-broker/src/main/yang/opendaylight-binding-broker-impl.yang index 9da073f71b..aec2723591 100644 --- a/opendaylight/md-sal/sal-binding-broker/src/main/yang/opendaylight-binding-broker-impl.yang +++ b/opendaylight/md-sal/sal-binding-broker/src/main/yang/opendaylight-binding-broker-impl.yang @@ -1,5 +1,5 @@ module opendaylight-sal-binding-broker-impl { - yang-version 1; + yang-version 1; namespace "urn:opendaylight:params:xml:ns:yang:controller:md:sal:binding:impl"; prefix "binding-impl"; @@ -10,7 +10,7 @@ module opendaylight-sal-binding-broker-impl { description "Service definition for Binding Aware MD-SAL."; - + revision "2013-10-28" { description "Initial revision"; @@ -18,30 +18,35 @@ module opendaylight-sal-binding-broker-impl { identity binding-dom-mapping-service { base config:service-type; - config:java-class "org.opendaylight.controller.sal.binding.impl.connect.dom.BindingIndependentMappingService"; + config:java-class "org.opendaylight.controller.md.sal.binding.impl.BindingToNormalizedNodeCodec"; } - identity binding-broker-impl { base config:module-type; config:provided-service sal:binding-broker-osgi-registry; config:provided-service sal:binding-rpc-registry; config:java-name-prefix BindingBrokerImpl; } - - identity binding-data-broker { + + identity binding-data-compatible-broker { base config:module-type; config:provided-service sal:binding-data-broker; config:provided-service sal:binding-data-consumer-broker; - config:java-name-prefix DataBrokerImpl; + config:java-name-prefix ForwardedCompatibleDataBrokerImpl; } + identity binding-forwarded-data-broker { + base config:module-type; + config:provided-service sal:binding-async-data-broker; + config:java-name-prefix BindingAsyncDataBrokerImpl; + } + identity binding-rpc-broker { base config:module-type; config:provided-service sal:binding-rpc-registry; config:java-name-prefix RpcBrokerImpl; } - + identity binding-notification-broker { base config:module-type; config:provided-service sal:binding-notification-service; @@ -55,10 +60,30 @@ module opendaylight-sal-binding-broker-impl { config:java-name-prefix RuntimeMapping; } + grouping dom-forwarding-component { + container dom-async-broker { + uses config:service-ref { + refine type { + mandatory true; + config:required-identity dom:dom-broker-osgi-registry; + } + } + } + + container binding-mapping-service { + uses config:service-ref { + refine type { + mandatory true; + config:required-identity binding-dom-mapping-service; + } + } + } + } + augment "/config:modules/config:module/config:configuration" { case binding-broker-impl { when "/config:modules/config:module/config:type = 'binding-broker-impl'"; - + /* container rpc-registry { uses config:service-ref { @@ -68,16 +93,16 @@ module opendaylight-sal-binding-broker-impl { } } }*/ - + container data-broker { uses config:service-ref { refine type { - mandatory true; + mandatory false; config:required-identity sal:binding-data-broker; } } } - + container notification-service { uses config:service-ref { refine type { @@ -85,32 +110,36 @@ module opendaylight-sal-binding-broker-impl { config:required-identity sal:binding-notification-service; } } - } - } - } - - augment "/config:modules/config:module/config:configuration" { - case binding-data-broker { - when "/config:modules/config:module/config:type = 'binding-data-broker'"; - container dom-broker { - uses config:service-ref { - refine type { - mandatory true; - config:required-identity dom:dom-broker-osgi-registry; - } - } } - container mapping-service { + + container root-data-broker { uses config:service-ref { refine type { - mandatory true; - config:required-identity binding-dom-mapping-service; + mandatory false; + config:required-identity sal:binding-async-data-broker; } } - } + } + } + } + + augment "/config:modules/config:module/config:configuration" { + case binding-data-compatible-broker { + when "/config:modules/config:module/config:type = 'binding-data-compatible-broker'"; + + uses dom-forwarding-component; } } + augment "/config:modules/config:module/config:configuration" { + case binding-forwarded-data-broker { + when "/config:modules/config:module/config:type = 'binding-forwarded-data-broker'"; + container binding-forwarded-data-broker { + uses dom-forwarding-component; + } + } + } + augment "/config:modules/config:module/config:state" { case runtime-generated-mapping { @@ -118,12 +147,6 @@ module opendaylight-sal-binding-broker-impl { } } - augment "/config:modules/config:module/config:state" { - case binding-data-broker { - when "/config:modules/config:module/config:type = 'binding-data-broker'"; - uses common:data-state; - } - } augment "/config:modules/config:module/config:state" { case binding-rpc-broker { when "/config:modules/config:module/config:type = 'binding-rpc-broker'"; @@ -136,4 +159,4 @@ module opendaylight-sal-binding-broker-impl { uses common:notification-state; } } -} \ No newline at end of file +}