ca76f85b46130ea9783bc1415682122e3f157e95
[transportpce.git] / olm / src / main / resources / OSGI-INF / blueprint / olm-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:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.1.0">
12
13     <cm:property-placeholder persistent-id="org.opendaylight.transportpce" update-strategy="reload">
14         <cm:default-properties>
15             <cm:property name="timer1" value="" />
16             <cm:property name="timer2" value="" />
17             <!--The following values are used to speed-up tests with simulators without convergence times-->
18             <!--cm:property name="timer1" value="3000" /-->
19             <!--cm:property name="timer2" value="2000" /-->
20         </cm:default-properties>
21     </cm:property-placeholder>
22
23
24   <reference id="dataBroker"
25         interface="org.opendaylight.mdsal.binding.api.DataBroker"/>
26   <reference id="rpcProviderService"
27         interface="org.opendaylight.mdsal.binding.api.RpcProviderService" />
28   <reference id="openRoadmInterfaces"
29         interface="org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfaces" />
30   <reference id="crossConnect"
31         interface="org.opendaylight.transportpce.common.crossconnect.CrossConnect" />
32   <reference id="deviceTransactionManager"
33         interface="org.opendaylight.transportpce.common.device.DeviceTransactionManager" />
34   <reference id="portMapping"
35         interface="org.opendaylight.transportpce.common.mapping.PortMapping" />
36   <reference id="mappingUtils" interface="org.opendaylight.transportpce.common.mapping.MappingUtils" />
37
38   <bean id="powerMgmt" class="org.opendaylight.transportpce.olm.power.PowerMgmtImpl" >
39     <argument ref="dataBroker" />
40     <argument ref="openRoadmInterfaces" />
41     <argument ref="crossConnect" />
42     <argument ref="deviceTransactionManager" />
43     <argument ref="portMapping" />
44     <argument value="${timer1}"/>
45     <argument value="${timer2}"/>
46   </bean>
47
48   <bean id="olmPowerServiceImpl" class="org.opendaylight.transportpce.olm.service.OlmPowerServiceImpl">
49     <argument ref="dataBroker" />
50     <argument ref="powerMgmt" />
51     <argument ref="deviceTransactionManager" />
52     <argument ref="portMapping" />
53     <argument ref="mappingUtils" />
54     <argument ref="openRoadmInterfaces" />
55   </bean>
56
57   <bean id="olmPowerServiceRpcImpl" class="org.opendaylight.transportpce.olm.OlmPowerServiceRpcImpl">
58     <argument ref="olmPowerServiceImpl" />
59   </bean>
60
61   <bean id="provider" class="org.opendaylight.transportpce.olm.OlmProvider"
62         init-method="init" destroy-method="close">
63     <argument ref="rpcProviderService" />
64     <argument ref="olmPowerServiceRpcImpl" />
65   </bean>
66
67   <service ref="olmPowerServiceRpcImpl"
68            interface="org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.TransportpceOlmService"/>
69   </blueprint>