d1a75ef37233645f7f994e3635a29eb46e1b0d21
[transportpce.git] / networkmodel / src / main / resources / OSGI-INF / blueprint / networkmodel-blueprint.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- vi: set et smarttab sw=4 tabstop=4: -->
3 <!-- Copyright © 2016 Orange and others. All rights reserved. This program and the accompanying materials
4     are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution,
5     and is available at http://www.eclipse.org/legal/epl-v10.html -->
6 <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0" xmlns:odl="http://opendaylight.org/xmlns/blueprint/v1.0.0"
7     odl:use-default-for-reference-types="true">
8
9     <reference id="dataBroker" interface="org.opendaylight.mdsal.binding.api.DataBroker" odl:type="default" />
10     <reference id="rpcProviderService" interface="org.opendaylight.mdsal.binding.api.RpcProviderService" />
11     <reference id="deviceTransactionManager" interface="org.opendaylight.transportpce.common.device.DeviceTransactionManager" />
12     <reference id="portMapping" interface="org.opendaylight.transportpce.common.mapping.PortMapping" />
13     <reference id="networkTransactionImpl" interface="org.opendaylight.transportpce.common.network.NetworkTransactionService" />
14     <reference id="mappingUtils" interface="org.opendaylight.transportpce.common.mapping.MappingUtils" />
15
16     <bean id="openRoadmFactory" class="org.opendaylight.transportpce.networkmodel.util.OpenRoadmFactory">
17         <argument ref="mappingUtils" />
18         <argument ref="openRoadmTopology22" />
19         <argument ref="openRoadmOtnTopology22" />
20     </bean>
21
22     <bean id="openRoadmTopology22" class="org.opendaylight.transportpce.networkmodel.util.OpenRoadmTopology22">
23         <argument ref="networkTransactionImpl" />
24         <argument ref="deviceTransactionManager" />
25     </bean>
26
27     <bean id="openRoadmOtnTopology22" class="org.opendaylight.transportpce.networkmodel.util.OpenRoadmOtnTopology22">
28         <argument ref="networkTransactionImpl" />
29         <argument ref="deviceTransactionManager" />
30     </bean>
31
32     <bean id="networkModelService" class="org.opendaylight.transportpce.networkmodel.service.NetworkModelServiceImpl">
33         <argument ref="networkTransactionImpl" />
34         <argument ref="linkDiscoveryImpl" />
35         <argument ref="deviceTransactionManager" />
36         <argument ref="openRoadmFactory" />
37         <argument ref="portMapping" />
38     </bean>
39
40     <bean id="provider" class="org.opendaylight.transportpce.networkmodel.NetworkModelProvider"
41         init-method="init" destroy-method="close">
42         <argument ref="networkTransactionImpl" />
43         <argument ref="dataBroker" />
44         <argument ref="rpcProviderService" />
45         <argument ref="networkutilsServiceImpl" />
46         <argument ref="netconfTopologyListener" />
47         <argument ref="openRoadmFactory" />
48     </bean>
49
50     <bean id="netconfTopologyListener" class="org.opendaylight.transportpce.networkmodel.NetConfTopologyListener">
51         <argument ref="networkModelService" />
52         <argument ref="dataBroker" />
53         <argument ref="deviceTransactionManager" />
54     </bean>
55
56     <bean id="networkutilsServiceImpl" class="org.opendaylight.transportpce.networkmodel.NetworkUtilsImpl">
57         <argument ref="dataBroker" />
58         <argument ref="openRoadmFactory" />
59     </bean>
60
61     <bean id="linkDiscoveryImpl" class="org.opendaylight.transportpce.networkmodel.R2RLinkDiscovery">
62         <argument ref="dataBroker" />
63         <argument ref="deviceTransactionManager" />
64         <argument ref="openRoadmFactory" />
65         <argument ref="networkTransactionImpl" />
66    </bean>
67
68     <service ref="networkModelService" interface="org.opendaylight.transportpce.networkmodel.service.NetworkModelService" />
69
70 </blueprint>