OTN Renderer Consolidation
[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.mdsal.binding.api.DataBroker"
15         odl:type="default" />
16   <reference id="notificationPublishService"
17         interface="org.opendaylight.mdsal.binding.api.NotificationPublishService"
18         odl:type="default" />
19   <reference id="rpcProviderService" interface="org.opendaylight.mdsal.binding.api.RpcProviderService" />
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="openRoadmOtnInterface"
44         class="org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmOtnInterface221">
45     <argument ref="portMapping"/>
46     <argument ref="openRoadmInterfaces"/>
47   </bean>
48
49   <bean id="openRoadmInterfaceFactory"
50         class="org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterfaceFactory">
51     <argument ref="mappingUtils"/>
52     <argument ref="openRoadmInterface121"/>
53     <argument ref="openRoadmInterface221"/>
54     <argument ref="openRoadmOtnInterface"/>
55   </bean>
56
57   <bean id="deviceRenderer" class="org.opendaylight.transportpce.renderer.provisiondevice.DeviceRendererServiceImpl" >
58     <argument ref="dataBroker" />
59     <argument ref="deviceTransactionManager" />
60     <argument ref="openRoadmInterfaceFactory" />
61     <argument ref="openRoadmInterfaces" />
62     <argument ref="crossConnect" />
63     <argument ref="portMapping" />
64   </bean>
65
66   <bean id="otnDeviceRenderer" class="org.opendaylight.transportpce.renderer.provisiondevice.OtnDeviceRendererServiceImpl" >
67     <argument ref="openRoadmInterfaceFactory" />
68     <argument ref="crossConnect" />
69     <argument ref="openRoadmInterfaces" />
70     <argument ref="deviceTransactionManager" />
71   </bean>
72
73     <bean id="deviceRendererRPCImpl" class="org.opendaylight.transportpce.renderer.rpcs.DeviceRendererRPCImpl" >
74     <argument ref="deviceRenderer" />
75     <argument ref="otnDeviceRenderer" />
76   </bean>
77
78   <bean id="networkModelWavelengthService"
79         class="org.opendaylight.transportpce.renderer.NetworkModelWavelengthServiceImpl">
80     <argument ref="dataBroker" />
81   </bean>
82
83   <bean id="rendererServiceOperations" class="org.opendaylight.transportpce.renderer.provisiondevice.RendererServiceOperationsImpl" >
84     <argument ref="deviceRenderer" />
85     <argument ref="olmService" />
86     <argument ref="dataBroker" />
87     <argument ref="networkModelWavelengthService" />
88     <argument ref="notificationPublishService" />
89   </bean>
90
91   <bean id="rendererProvider" class="org.opendaylight.transportpce.renderer.RendererProvider"
92         init-method="init" destroy-method="close">
93     <argument ref="rpcProviderService" />
94     <argument ref="deviceRendererRPCImpl" />
95     <argument ref="rendererServiceOperations" />
96   </bean>
97
98   <service ref="deviceRenderer"
99            interface="org.opendaylight.transportpce.renderer.provisiondevice.DeviceRendererService" />
100
101   <service ref="rendererServiceOperations"
102            interface="org.opendaylight.transportpce.renderer.provisiondevice.RendererServiceOperations" />
103   <service ref="networkModelWavelengthService"
104            interface="org.opendaylight.transportpce.renderer.NetworkModelWavelengthService" />
105 </blueprint>