1 <?xml version="1.0" encoding="UTF-8"?>
2 <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
3 xmlns:odl="http://opendaylight.org/xmlns/blueprint/v1.0.0">
5 <reference id="classLoadingStrategy" interface="org.opendaylight.mdsal.binding.generator.api.ClassLoadingStrategy" />
6 <reference id="schemaService" interface="org.opendaylight.mdsal.dom.api.DOMSchemaService" />
7 <reference id="domRpcService" interface="org.opendaylight.controller.md.sal.dom.api.DOMRpcService"/>
8 <reference id="domRpcRegistry" interface="org.opendaylight.controller.md.sal.dom.api.DOMRpcProviderService"/>
9 <reference id="domMountPointService" interface="org.opendaylight.controller.md.sal.dom.api.DOMMountPointService"/>
10 <reference id="domNotificationService" interface="org.opendaylight.controller.md.sal.dom.api.DOMNotificationService"/>
11 <reference id="domNotificationPublishService" interface="org.opendaylight.controller.md.sal.dom.api.DOMNotificationPublishService"/>
12 <reference id="domNotificationListenerRegistry" interface="org.opendaylight.controller.md.sal.dom.spi.DOMNotificationSubscriptionListenerRegistry"/>
13 <reference id="domDefaultDataBroker" interface="org.opendaylight.controller.md.sal.dom.api.DOMDataBroker"
15 <reference id="domPingPongDataBroker" interface="org.opendaylight.controller.md.sal.dom.api.DOMDataBroker"
18 <bean id="wiring" class="org.opendaylight.controller.md.sal.binding.impl.BindingBrokerWiring">
19 <argument ref="classLoadingStrategy"/>
20 <argument ref="schemaService"/>
21 <argument ref="domRpcService"/>
22 <argument ref="domRpcRegistry"/>
23 <argument ref="domMountPointService"/>
24 <argument ref="domNotificationService"/>
25 <argument ref="domNotificationPublishService"/>
26 <argument ref="domNotificationListenerRegistry"/>
27 <argument ref="domDefaultDataBroker"/>
28 <argument ref="domPingPongDataBroker"/>
31 <!-- Runtime binding/normalized mapping service -->
33 <bean id="mappingCodec" factory-ref="wiring" factory-method="getBindingToNormalizedNodeCodec" />
35 <service ref="mappingCodec" odl:type="default">
37 <value>org.opendaylight.mdsal.binding.dom.codec.api.BindingNormalizedNodeSerializer</value>
38 <value>org.opendaylight.mdsal.binding.dom.codec.api.BindingCodecTreeFactory</value>
42 <!-- TODO: remove this service as it is referring to a class. To do that we need to migrate everyone over to 'factory' -->
43 <service id="codec" ref="mappingCodec" interface="org.opendaylight.controller.md.sal.binding.impl.BindingToNormalizedNodeCodec"/>
45 <!-- Adapter service -->
46 <bean id="adapterFactory" factory-ref="wiring" factory-method="getAdapterFactory" />
48 <service id="factory" ref="adapterFactory">
50 <value>org.opendaylight.controller.md.sal.binding.spi.AdapterFactory</value>
54 <!-- Binding RPC Registry Service -->
56 <bean id="bindingRpcRegistry" factory-ref="wiring" factory-method="getRpcProviderRegistry" />
58 <service ref="bindingRpcRegistry" interface="org.opendaylight.controller.sal.binding.api.RpcProviderRegistry"
61 <!-- Binding MountPoint Service -->
63 <bean id="bindingMountPointService" factory-ref="wiring" factory-method="getMountPointService" />
65 <service ref="bindingMountPointService" interface="org.opendaylight.controller.md.sal.binding.api.MountPointService"
68 <!-- Binding Notification Service -->
70 <bean id="bindingNotificationServiceAdapter" factory-ref="wiring" factory-method="getNotificationService" />
71 <service ref="bindingNotificationServiceAdapter" interface="org.opendaylight.controller.md.sal.binding.api.NotificationService"
74 <bean id="bindingNotificationPublishAdapter" factory-ref="wiring" factory-method="getNotificationPublishService" />
75 <service ref="bindingNotificationPublishAdapter" interface="org.opendaylight.controller.md.sal.binding.api.NotificationPublishService"
78 <bean id="notificationProviderService" factory-ref="wiring" factory-method="getNotificationProviderService" />
79 <service ref="notificationProviderService" interface="org.opendaylight.controller.sal.binding.api.NotificationProviderService" odl:type="default" />
81 <bean id="deprecatedNotificationService" factory-ref="wiring" factory-method="getNotificationProviderService" />
82 <service ref="deprecatedNotificationService" interface="org.opendaylight.controller.sal.binding.api.NotificationService" odl:type="default" />
84 <!-- Binding DataBroker -->
86 <bean id="bindingDataBroker" factory-ref="wiring" factory-method="getDataBroker" />
88 <service ref="bindingDataBroker" interface="org.opendaylight.controller.md.sal.binding.api.DataBroker"
91 <!-- Binding PingPong DataBroker -->
93 <bean id="bindingPingPongDataBroker" factory-ref="wiring" factory-method="getPingPongDataBroker" />
95 <service ref="bindingPingPongDataBroker" interface="org.opendaylight.controller.md.sal.binding.api.DataBroker"
98 <!-- Legacy BindingAwareBroker -->
100 <bean id="bindingNotificationProviderService" class="org.opendaylight.controller.md.sal.binding.compat.HeliumNotificationProviderServiceWithInterestListeners">
101 <argument ref="bindingNotificationPublishAdapter"/>
102 <argument ref="bindingNotificationServiceAdapter"/>
103 <argument ref="domNotificationListenerRegistry"/>
106 <bean id="bindingAwareBroker" class="org.opendaylight.controller.sal.binding.impl.RootBindingAwareBroker"
107 init-method="start" destroy-method="close">
108 <argument value="deprecated-BindingAwareBroker"/>
109 <property name="dataBroker" ref="bindingDataBroker"/>
110 <property name="mountService" ref="bindingMountPointService"/>
111 <property name="rpcBroker" ref="bindingRpcRegistry"/>
112 <property name="notificationBroker" ref="bindingNotificationProviderService"/>
113 <property name="notificationPublishService" ref="bindingNotificationPublishAdapter"/>
116 <service ref="bindingAwareBroker" interface="org.opendaylight.controller.sal.binding.api.BindingAwareBroker"/>