90747b71d83cca152a472bd3eddcb6193b7a06b6
[transportpce.git] / renderer / src / main / resources / org / opendaylight / blueprint / renderer-blueprint.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- vi: set et smarttab sw=4 tabstop=4: -->
3 <!--
4 Copyright © 2016 Orange and others. All rights reserved.
5
6 This program and the accompanying materials are made available under the
7 terms of the Eclipse Public License v1.0 which accompanies this distribution,
8 and is available at http://www.eclipse.org/legal/epl-v10.html
9 -->
10 <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
11   xmlns:odl="http://opendaylight.org/xmlns/blueprint/v1.0.0"
12   odl:use-default-for-reference-types="true">
13
14   <reference id="dataBroker" interface="org.opendaylight.controller.md.sal.binding.api.DataBroker"
15         odl:type="default" />
16   <reference id="notificationPublishService"
17         interface="org.opendaylight.controller.md.sal.binding.api.NotificationPublishService"
18         odl:type="default" />
19   <reference id="rpcProviderRegistry" interface="org.opendaylight.controller.sal.binding.api.RpcProviderRegistry" />
20   <reference id="deviceTransactionManager" interface="org.opendaylight.transportpce.common.device.DeviceTransactionManager" />
21   <reference id="openRoadmInterfaces" interface="org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfaces" />
22   <reference id="portMapping" interface="org.opendaylight.transportpce.common.mapping.PortMapping" />
23   <reference id="crossConnect" interface="org.opendaylight.transportpce.common.crossconnect.CrossConnect" />
24
25   <odl:rpc-service id="olmService"
26       interface="org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev170418.TransportpceOlmService"/>
27
28   <bean id="openRoadmInterfaceFactory" class="org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterfaceFactory" >
29     <argument ref="portMapping" />
30     <argument ref="openRoadmInterfaces" />
31   </bean>
32
33   <bean id="deviceRenderer" class="org.opendaylight.transportpce.renderer.provisiondevice.DeviceRendererServiceImpl" >
34     <argument ref="dataBroker" />
35     <argument ref="deviceTransactionManager" />
36     <argument ref="openRoadmInterfaceFactory" />
37     <argument ref="openRoadmInterfaces" />
38     <argument ref="crossConnect" />
39     <argument ref="portMapping" />
40   </bean>
41
42   <bean id="deviceRendererRPCImpl" class="org.opendaylight.transportpce.renderer.rpcs.DeviceRendererRPCImpl" >
43     <argument ref="deviceRenderer" />
44   </bean>
45
46   <bean id="networkModelWavelengthService"
47         class="org.opendaylight.transportpce.renderer.NetworkModelWavelengthServiceImpl">
48     <argument ref="dataBroker" />
49   </bean>
50
51   <bean id="rendererServiceOperations" class="org.opendaylight.transportpce.renderer.provisiondevice.RendererServiceOperationsImpl" >
52     <argument ref="deviceRenderer" />
53     <argument ref="olmService" />
54     <argument ref="dataBroker" />
55     <argument ref="networkModelWavelengthService" />
56     <argument ref="notificationPublishService" />
57   </bean>
58
59   <bean id="rendererProvider" class="org.opendaylight.transportpce.renderer.RendererProvider"
60         init-method="init" destroy-method="close">
61     <argument ref="rpcProviderRegistry" />
62     <argument ref="deviceRendererRPCImpl" />
63     <argument ref="rendererServiceOperations" />
64   </bean>
65
66   <service ref="deviceRenderer"
67            interface="org.opendaylight.transportpce.renderer.provisiondevice.DeviceRendererService" />
68
69   <service ref="rendererServiceOperations"
70            interface="org.opendaylight.transportpce.renderer.provisiondevice.RendererServiceOperations" />
71
72   <service ref="networkModelWavelengthService"
73            interface="org.opendaylight.transportpce.renderer.NetworkModelWavelengthService" />
74
75 </blueprint>