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