b667ca00767ba870f391dde587535f3f1ca706c1
[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   <reference id="networkModelService" interface="org.opendaylight.transportpce.networkmodel.service.NetworkModelService"/>
27
28   <odl:rpc-service id="olmService"
29       interface="org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev170418.TransportpceOlmService"/>
30
31   <bean id="openRoadmInterface121"
32         class="org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterface121">
33     <argument ref="portMapping"/>
34     <argument ref="openRoadmInterfaces"/>
35   </bean>
36
37   <bean id="openRoadmInterface221"
38         class="org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterface221">
39     <argument ref="portMapping"/>
40     <argument ref="openRoadmInterfaces"/>
41     <argument ref="FixedFlexImpl"/>
42   </bean>
43
44   <bean id="openRoadmOtnInterface"
45         class="org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmOtnInterface221">
46     <argument ref="portMapping"/>
47     <argument ref="openRoadmInterfaces"/>
48   </bean>
49
50   <bean id="openRoadmInterfaceFactory"
51         class="org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterfaceFactory">
52     <argument ref="mappingUtils"/>
53     <argument ref="openRoadmInterface121"/>
54     <argument ref="openRoadmInterface221"/>
55     <argument ref="openRoadmOtnInterface"/>
56   </bean>
57
58   <bean id="deviceRenderer" class="org.opendaylight.transportpce.renderer.provisiondevice.DeviceRendererServiceImpl" >
59     <argument ref="dataBroker" />
60     <argument ref="deviceTransactionManager" />
61     <argument ref="openRoadmInterfaceFactory" />
62     <argument ref="openRoadmInterfaces" />
63     <argument ref="crossConnect" />
64     <argument ref="portMapping" />
65     <argument ref="networkModelService" />
66   </bean>
67
68   <bean id="otnDeviceRenderer" class="org.opendaylight.transportpce.renderer.provisiondevice.OtnDeviceRendererServiceImpl" >
69     <argument ref="openRoadmInterfaceFactory" />
70     <argument ref="crossConnect" />
71     <argument ref="openRoadmInterfaces" />
72     <argument ref="deviceTransactionManager" />
73     <argument ref="networkModelService" />
74   </bean>
75
76     <bean id="deviceRendererRPCImpl" class="org.opendaylight.transportpce.renderer.rpcs.DeviceRendererRPCImpl" >
77     <argument ref="deviceRenderer" />
78     <argument ref="otnDeviceRenderer" />
79   </bean>
80
81   <bean id="networkModelWavelengthService"
82         class="org.opendaylight.transportpce.renderer.NetworkModelWavelengthServiceImpl">
83     <argument ref="dataBroker" />
84   </bean>
85
86   <bean id="rendererServiceOperations" class="org.opendaylight.transportpce.renderer.provisiondevice.RendererServiceOperationsImpl" >
87     <argument ref="deviceRenderer" />
88     <argument ref="otnDeviceRenderer"/>
89     <argument ref="olmService" />
90     <argument ref="dataBroker" />
91     <argument ref="networkModelWavelengthService" />
92     <argument ref="notificationPublishService" />
93   </bean>
94
95   <bean id="rendererProvider" class="org.opendaylight.transportpce.renderer.RendererProvider"
96         init-method="init" destroy-method="close">
97     <argument ref="rpcProviderService" />
98     <argument ref="deviceRendererRPCImpl" />
99     <argument ref="rendererServiceOperations" />
100   </bean>
101
102   <service ref="deviceRenderer"
103            interface="org.opendaylight.transportpce.renderer.provisiondevice.DeviceRendererService" />
104   <service ref="rendererServiceOperations"
105            interface="org.opendaylight.transportpce.renderer.provisiondevice.RendererServiceOperations" />
106   <service ref="networkModelWavelengthService"
107            interface="org.opendaylight.transportpce.renderer.NetworkModelWavelengthService" />
108   <service ref="otnDeviceRenderer"
109             interface="org.opendaylight.transportpce.renderer.provisiondevice.OtnDeviceRendererService"/>
110
111 </blueprint>