1312d8d1119f9439e80d0fcc3d1ca290433adbf1
[transportpce.git] / renderer / src / main / resources / OSGI-INF / 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   <reference id="mappingUtils" interface="org.opendaylight.transportpce.common.mapping.MappingUtils"/>
25   <reference id="FixedFlexImpl" interface="org.opendaylight.transportpce.common.fixedflex.FixedFlexInterface"/>
26
27   <odl:rpc-service id="olmService"
28       interface="org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev170418.TransportpceOlmService"/>
29
30   <bean id="openRoadmInterface121"
31         class="org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterface121">
32     <argument ref="portMapping"/>
33     <argument ref="openRoadmInterfaces"/>
34   </bean>
35
36   <bean id="openRoadmInterface221"
37         class="org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterface221">
38     <argument ref="portMapping"/>
39     <argument ref="openRoadmInterfaces"/>
40     <argument ref="FixedFlexImpl"/>
41   </bean>
42
43   <bean id="openRoadmInterfaceFactory"
44         class="org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterfaceFactory">
45     <argument ref="mappingUtils"/>
46     <argument ref="openRoadmInterface121"/>
47     <argument ref="openRoadmInterface221"/>
48   </bean>
49
50   <bean id="deviceRenderer" class="org.opendaylight.transportpce.renderer.provisiondevice.DeviceRendererServiceImpl" >
51     <argument ref="dataBroker" />
52     <argument ref="deviceTransactionManager" />
53     <argument ref="openRoadmInterfaceFactory" />
54     <argument ref="openRoadmInterfaces" />
55     <argument ref="crossConnect" />
56     <argument ref="portMapping" />
57   </bean>
58
59     <bean id="deviceRendererRPCImpl" class="org.opendaylight.transportpce.renderer.rpcs.DeviceRendererRPCImpl" >
60     <argument ref="deviceRenderer" />
61   </bean>
62
63   <bean id="networkModelWavelengthService"
64         class="org.opendaylight.transportpce.renderer.NetworkModelWavelengthServiceImpl">
65     <argument ref="dataBroker" />
66   </bean>
67
68   <bean id="rendererServiceOperations" class="org.opendaylight.transportpce.renderer.provisiondevice.RendererServiceOperationsImpl" >
69     <argument ref="deviceRenderer" />
70     <argument ref="olmService" />
71     <argument ref="dataBroker" />
72     <argument ref="networkModelWavelengthService" />
73     <argument ref="notificationPublishService" />
74   </bean>
75
76   <bean id="rendererProvider" class="org.opendaylight.transportpce.renderer.RendererProvider"
77         init-method="init" destroy-method="close">
78     <argument ref="rpcProviderRegistry" />
79     <argument ref="deviceRendererRPCImpl" />
80     <argument ref="rendererServiceOperations" />
81   </bean>
82
83   <service ref="deviceRenderer"
84            interface="org.opendaylight.transportpce.renderer.provisiondevice.DeviceRendererService" />
85
86   <service ref="rendererServiceOperations"
87            interface="org.opendaylight.transportpce.renderer.provisiondevice.RendererServiceOperations" />
88   <service ref="networkModelWavelengthService"
89            interface="org.opendaylight.transportpce.renderer.NetworkModelWavelengthService" />
90 </blueprint>