Merge "Removing Blind imports across the module"
[netvirt.git] / vpnservice / neutronvpn / neutronvpn-impl / src / main / resources / org / opendaylight / blueprint / neutronvpn.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
3            xmlns:odl="http://opendaylight.org/xmlns/blueprint/v1.0.0"
4            odl:use-default-for-reference-types="true">
5
6   <reference id="dataBroker"
7              interface="org.opendaylight.controller.md.sal.binding.api.DataBroker"
8              odl:type="default" />
9   <reference id="elanService"
10              interface="org.opendaylight.netvirt.elanmanager.api.IElanService" />
11   <reference id="entityOwnershipService"
12              interface="org.opendaylight.controller.md.sal.common.api.clustering.EntityOwnershipService" />
13   <reference id="mdsalUtils"
14              interface="org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager" />
15   <reference id="notificationPublishService"
16              interface="org.opendaylight.controller.md.sal.binding.api.NotificationPublishService" />
17   <reference id="vpnManager"
18            interface="org.opendaylight.netvirt.vpnmanager.api.IVpnManager" />
19
20
21   <odl:rpc-service id="idManagerService"
22                    interface="org.opendaylight.yang.gen.v1.urn.opendaylight.genius.idmanager.rev160406.IdManagerService" />
23   <odl:rpc-service id="odlInterfaceRpcService"
24                    interface="org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rpcs.rev160406.OdlInterfaceRpcService" />
25   <odl:rpc-service id="itmRpcService"
26                    interface="org.opendaylight.yang.gen.v1.urn.opendaylight.genius.itm.rpcs.rev160406.ItmRpcService" />
27   <odl:rpc-service id="lockManagerService"
28                    interface="org.opendaylight.yang.gen.v1.urn.opendaylight.genius.lockmanager.rev160413.LockManagerService" />
29   <odl:rpc-service id="vpnRpcService"
30                    interface="org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.vpn.rpc.rev160201.VpnRpcService" />
31   <odl:rpc-service id="odlArputilService"
32                    interface="org.opendaylight.yang.gen.v1.urn.opendaylight.genius.arputil.rev160406.OdlArputilService" />
33
34   <bean id="neutronvpnNatManager"
35         class="org.opendaylight.netvirt.neutronvpn.NeutronvpnNatManager"
36         destroy-method="close">
37     <argument ref="dataBroker" />
38     <argument ref="mdsalUtils" />
39     <argument ref="lockManagerService" />
40     <argument ref="elanService" />
41   </bean>
42
43   <bean id="neutronFloatingToFixedIpMappingChangeListener"
44         class="org.opendaylight.netvirt.neutronvpn.NeutronFloatingToFixedIpMappingChangeListener"
45         init-method="start" destroy-method="close">
46     <argument ref="dataBroker" />
47     <argument ref="lockManagerService" />
48   </bean>
49
50   <bean id="neutronvpnManager" class="org.opendaylight.netvirt.neutronvpn.NeutronvpnManager"
51         destroy-method="close">
52     <argument ref="dataBroker" />
53     <argument ref="mdsalUtils" />
54     <argument ref="notificationPublishService" />
55     <argument ref="neutronvpnNatManager" />
56     <argument ref="lockManagerService" />
57     <argument ref="vpnRpcService" />
58     <argument ref="elanService" />
59     <argument ref="neutronFloatingToFixedIpMappingChangeListener" />
60   </bean>
61   <odl:rpc-implementation ref="neutronvpnManager" />
62
63   <bean id="neutronBgpvpnChangeListener"
64         class="org.opendaylight.netvirt.neutronvpn.NeutronBgpvpnChangeListener"
65         init-method="start" destroy-method="close">
66     <argument ref="dataBroker" />
67     <argument ref="neutronvpnManager" />
68     <argument ref="idManagerService" />
69   </bean>
70
71   <bean id="neutronHostConfigChangeListener"
72         class="org.opendaylight.netvirt.neutronvpn.NeutronHostConfigChangeListener"
73         init-method="start" destroy-method="close">
74     <argument ref="dataBroker" />
75   </bean>
76
77   <bean id="neutronNetworkChangeListener"
78         class="org.opendaylight.netvirt.neutronvpn.NeutronNetworkChangeListener"
79         init-method="start" destroy-method="close">
80     <argument ref="dataBroker" />
81     <argument ref="neutronvpnNatManager" />
82     <argument ref="elanService" />
83     <argument ref="odlInterfaceRpcService" />
84   </bean>
85
86   <bean id="neutronQosPolicyChangeListener"
87         class="org.opendaylight.netvirt.neutronvpn.NeutronQosPolicyChangeListener"
88         init-method="start" destroy-method="close">
89     <argument ref="dataBroker" />
90     <argument ref="odlInterfaceRpcService" />
91   </bean>
92
93   <bean id="neutronSubnetChangeListener"
94         class="org.opendaylight.netvirt.neutronvpn.NeutronSubnetChangeListener"
95         init-method="start" destroy-method="close">
96     <argument ref="dataBroker" />
97     <argument ref="neutronvpnManager" />
98   </bean>
99
100   <bean id="neutronRouterChangeListener"
101         class="org.opendaylight.netvirt.neutronvpn.NeutronRouterChangeListener"
102         init-method="start" destroy-method="close">
103     <argument ref="dataBroker" />
104     <argument ref="neutronvpnManager" />
105     <argument ref="neutronvpnNatManager" />
106     <argument ref="neutronSubnetGwMacResolver" />
107   </bean>
108
109   <bean id="neutronPortChangeListener"
110         class="org.opendaylight.netvirt.neutronvpn.NeutronPortChangeListener"
111         init-method="start" destroy-method="close">
112     <argument ref="dataBroker" />
113     <argument ref="neutronvpnManager" />
114     <argument ref="neutronvpnNatManager" />
115     <argument ref="notificationPublishService" />
116     <argument ref="lockManagerService" />
117     <argument ref="neutronSubnetGwMacResolver" />
118     <argument ref="odlInterfaceRpcService" />
119   </bean>
120
121   <bean id="neutronSubnetGwMacResolver"
122         class="org.opendaylight.netvirt.neutronvpn.NeutronSubnetGwMacResolver"
123         init-method="start" destroy-method="close">
124     <argument ref="dataBroker" />
125     <argument ref="vpnManager" />
126     <argument ref="odlArputilService" />
127     <argument ref="elanService" />
128   </bean>
129
130   <bean id="l2GatewayListener"
131         class="org.opendaylight.netvirt.neutronvpn.l2gw.L2GatewayListener"
132         init-method="start" destroy-method="close">
133     <argument ref="dataBroker" />
134     <argument ref="entityOwnershipService" />
135     <argument ref="itmRpcService" />
136   </bean>
137
138   <bean id="l2GwTransportZoneListener"
139         class="org.opendaylight.netvirt.neutronvpn.l2gw.L2GwTransportZoneListener"
140         init-method="start" destroy-method="close">
141     <argument ref="dataBroker" />
142     <argument ref="itmRpcService" />
143   </bean>
144
145   <bean id="neutronSecurityRuleListener"
146         class="org.opendaylight.netvirt.neutronvpn.NeutronSecurityRuleListener"
147         init-method="start" destroy-method="close">
148     <argument ref="dataBroker" />
149   </bean>
150   
151   <bean id="neutronvpnManagerImpl"
152         class="org.opendaylight.netvirt.neutronvpn.NeutronvpnManagerImpl">
153         <argument ref="neutronvpnManager" />
154   </bean>
155   
156   <bean id="InterfaceStateToTransportZoneListener"
157         class="org.opendaylight.netvirt.neutronvpn.InterfaceStateToTransportZoneListener"
158         destroy-method="close">
159     <argument ref="dataBroker" />
160     <argument ref="neutronvpnManager" />
161   </bean>
162   <service ref="neutronvpnManagerImpl" odl:type="default"
163            interface="org.opendaylight.netvirt.neutronvpn.interfaces.INeutronVpnManager" />
164 </blueprint>