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">
6 <reference id="dataBroker"
7 interface="org.opendaylight.controller.md.sal.binding.api.DataBroker"
9 <reference id="mdsalUtils"
10 interface="org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager" />
11 <reference id="interfaceManager"
12 interface="org.opendaylight.genius.interfacemanager.interfaces.IInterfaceManager" />
13 <reference id="notificationPublishService"
14 interface="org.opendaylight.controller.md.sal.binding.api.NotificationPublishService" />
15 <reference id="bgpmanager"
16 interface="org.opendaylight.netvirt.bgpmanager.api.IBgpManager" />
17 <reference id="elanService"
18 interface="org.opendaylight.netvirt.elanmanager.api.IElanService" />
19 <reference id="fibManager"
20 interface="org.opendaylight.netvirt.fibmanager.api.IFibManager" />
21 <reference id="neutronVpnService"
22 interface="org.opendaylight.netvirt.neutronvpn.interfaces.INeutronVpnManager"
23 availability="optional" />
25 <odl:rpc-service id="idManagerService"
26 interface="org.opendaylight.yang.gen.v1.urn.opendaylight.genius.idmanager.rev160406.IdManagerService" />
27 <odl:rpc-service id="itmRpcService"
28 interface="org.opendaylight.yang.gen.v1.urn.opendaylight.genius.itm.rpcs.rev160406.ItmRpcService" />
29 <odl:rpc-service id="odlInterfaceRpcService"
30 interface="org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rpcs.rev160406.OdlInterfaceRpcService" />
31 <odl:rpc-service id="odlArputilService"
32 interface="org.opendaylight.yang.gen.v1.urn.opendaylight.genius.arputil.rev160406.OdlArputilService" />
33 <odl:rpc-service id="packetProcessingService"
34 interface="org.opendaylight.yang.gen.v1.urn.opendaylight.packet.service.rev130709.PacketProcessingService" />
35 <odl:rpc-service id="lockManagerService"
36 interface="org.opendaylight.yang.gen.v1.urn.opendaylight.genius.lockmanager.rev160413.LockManagerService" />
37 <odl:rpc-service id="alivenessManager"
38 interface="org.opendaylight.yang.gen.v1.urn.opendaylight.genius.alivenessmonitor.rev160411.AlivenessMonitorService" />
40 <bean id="dpnInVpnChangeListener"
41 class="org.opendaylight.netvirt.vpnmanager.DpnInVpnChangeListener">
42 <argument ref="dataBroker" />
43 <argument ref="mdsalUtils" />
45 <service ref="dpnInVpnChangeListener" odl:type="default"
46 interface="org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.l3vpn.rev130911.OdlL3vpnListener" />
47 <odl:notification-listener ref="dpnInVpnChangeListener" />
49 <bean id="vpnOpDataSyncer" class="org.opendaylight.netvirt.vpnmanager.VpnOpDataSyncer"/>
51 <bean id="vpnFootprintService" class="org.opendaylight.netvirt.vpnmanager.VpnFootprintService">
52 <argument ref="dataBroker" />
53 <argument ref="fibManager" />
54 <argument ref="odlInterfaceRpcService" />
55 <argument ref="notificationPublishService" />
56 <argument ref="vpnOpDataSyncer" />
59 <bean id="vpnInterfaceManager"
60 class="org.opendaylight.netvirt.vpnmanager.VpnInterfaceManager"
61 init-method="start" destroy-method="close">
62 <argument ref="dataBroker" />
63 <argument ref="bgpmanager" />
64 <argument ref="odlArputilService" />
65 <argument ref="idManagerService" />
66 <argument ref="mdsalUtils" />
67 <argument ref="fibManager" />
68 <argument ref="odlInterfaceRpcService" />
69 <argument ref="vpnFootprintService" />
70 <argument ref="vpnOpDataSyncer" />
71 <argument ref="neutronVpnService" />
74 <bean id="interfaceStateChangeListener"
75 class="org.opendaylight.netvirt.vpnmanager.InterfaceStateChangeListener"
76 init-method="start" destroy-method="close">
77 <argument ref="dataBroker" />
78 <argument ref="vpnInterfaceManager" />
81 <bean id="vpnInterfaceOpListener"
82 class="org.opendaylight.netvirt.vpnmanager.VpnInterfaceOpListener"
83 init-method="start" destroy-method="close">
84 <argument ref="dataBroker" />
85 <argument ref="vpnInterfaceManager" />
86 <argument ref="vpnFootprintService" />
89 <bean id="arpMonitorEventListener"
90 class="org.opendaylight.netvirt.vpnmanager.ArpMonitorEventListener">
91 <argument ref="dataBroker" />
92 <argument ref="alivenessManager" />
94 <odl:notification-listener ref="arpMonitorEventListener" />
96 <bean id="arpMonitoringHandler"
97 class="org.opendaylight.netvirt.vpnmanager.ArpMonitoringHandler"
98 init-method="start" destroy-method="close">
99 <argument ref="dataBroker" />
100 <argument ref="odlInterfaceRpcService" />
101 <argument ref="mdsalUtils" />
102 <argument ref="alivenessManager" />
103 <argument ref="neutronVpnService" />
104 <argument ref="interfaceManager" />
107 <bean id="subnetRoutePacketInHandler"
108 class="org.opendaylight.netvirt.vpnmanager.SubnetRoutePacketInHandler">
109 <argument ref="dataBroker" />
110 <argument ref="packetProcessingService" />
112 <service ref="subnetRoutePacketInHandler" odl:type="default"
113 interface="org.opendaylight.yang.gen.v1.urn.opendaylight.packet.service.rev130709.PacketProcessingListener" />
114 <odl:notification-listener ref="subnetRoutePacketInHandler" />
116 <odl:clustered-app-config id="vpnConfig"
117 binding-class="org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.vpn.config.rev161130.VpnConfig">
118 </odl:clustered-app-config>
120 <bean id="arpNotificationHandler"
121 class="org.opendaylight.netvirt.vpnmanager.ArpNotificationHandler">
122 <argument ref="dataBroker" />
123 <argument ref="vpnInterfaceManager" />
124 <argument ref="elanService" />
125 <argument ref="idManagerService" />
126 <argument ref="odlArputilService" />
127 <argument ref="arpMonitoringHandler" />
128 <argument ref="odlInterfaceRpcService" />
129 <argument ref="interfaceManager"/>
130 <argument ref="vpnConfig"/>
132 <service ref="arpNotificationHandler" odl:type="default"
133 interface="org.opendaylight.yang.gen.v1.urn.opendaylight.genius.arputil.rev160406.OdlArputilListener" />
134 <odl:notification-listener ref="arpNotificationHandler" />
136 <bean id="subnetRouteInterfaceStateChangeListener"
137 class="org.opendaylight.netvirt.vpnmanager.SubnetRouteInterfaceStateChangeListener"
138 init-method="start" destroy-method="close">
139 <argument ref="dataBroker" />
140 <argument ref="vpnInterfaceManager" />
141 <argument ref="vpnSubnetRouteHandler" />
144 <bean id="vpnSubnetRouteHandler"
145 class="org.opendaylight.netvirt.vpnmanager.VpnSubnetRouteHandler">
146 <argument ref="dataBroker" />
147 <argument ref="subnetOpDpnManager" />
148 <argument ref="bgpmanager" />
149 <argument ref="vpnInterfaceManager" />
150 <argument ref="idManagerService" />
151 <argument ref="lockManagerService" />
152 <argument ref="vpnOpDataSyncer"/>
154 <service ref="vpnSubnetRouteHandler" odl:type="default"
155 interface="org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.neutronvpn.rev150602.NeutronvpnListener" />
156 <odl:notification-listener ref="vpnSubnetRouteHandler" />
158 <bean id="tunnelInterfaceStateListener"
159 class="org.opendaylight.netvirt.vpnmanager.TunnelInterfaceStateListener"
160 init-method="start" destroy-method="close">
161 <argument ref="dataBroker" />
162 <argument ref="bgpmanager" />
163 <argument ref="fibManager" />
164 <argument ref="itmRpcService" />
165 <argument ref="odlInterfaceRpcService"/>
166 <argument ref="vpnInterfaceManager" />
167 <argument ref="vpnSubnetRouteHandler" />
170 <bean id="subnetOpDpnManager" class="org.opendaylight.netvirt.vpnmanager.SubnetOpDpnManager">
171 <argument ref="dataBroker" />
174 <bean id="vpnManagerImpl" class="org.opendaylight.netvirt.vpnmanager.VpnManagerImpl"
176 <argument ref="dataBroker" />
177 <argument ref="idManagerService" />
178 <argument ref="vpnInstanceListener" />
179 <argument ref="vpnInterfaceManager" />
180 <argument ref="mdsalUtils" />
181 <argument ref="vpnFootprintService" />
183 <service ref="vpnManagerImpl"
184 interface="org.opendaylight.netvirt.vpnmanager.api.IVpnManager" />
186 <bean id="vpnInstanceListener"
187 class="org.opendaylight.netvirt.vpnmanager.VpnInstanceListener"
188 init-method="start" destroy-method="close">
189 <argument ref="dataBroker" />
190 <argument ref="bgpmanager" />
191 <argument ref="idManagerService" />
192 <argument ref="vpnInterfaceManager" />
193 <argument ref="fibManager" />
194 <argument ref="vpnOpDataSyncer" />
197 <bean id="fibEntriesListener" class="org.opendaylight.netvirt.vpnmanager.FibEntriesListener"
198 init-method="start" destroy-method="close">
199 <argument ref="dataBroker" />
200 <argument ref="vpnInstanceListener" />
203 <odl:rpc-implementation ref="vpnRpcServiceImpl" />
204 <bean id="vpnRpcServiceImpl"
205 class="org.opendaylight.netvirt.vpnmanager.VpnRpcServiceImpl">
206 <argument ref="dataBroker" />
207 <argument ref="idManagerService" />
208 <argument ref="vpnInterfaceManager" />
209 <argument ref="fibManager" />
210 <argument ref="bgpmanager" />
212 <service ref="vpnRpcServiceImpl"
213 interface="org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.vpn.rpc.rev160201.VpnRpcService" />
215 <bean id="interVpnLinkService"
216 class="org.opendaylight.netvirt.vpnmanager.intervpnlink.InterVpnLinkService">
217 <argument ref="dataBroker" />
220 <bean id="interVpnLinkListener"
221 class="org.opendaylight.netvirt.vpnmanager.intervpnlink.InterVpnLinkListener"
222 init-method="start" destroy-method="close">
223 <argument ref="dataBroker" />
224 <argument ref="idManagerService" />
225 <argument ref="mdsalUtils" />
226 <argument ref="bgpmanager" />
227 <argument ref="fibManager" />
228 <argument ref="notificationPublishService" />
229 <argument ref="interVpnLinkService" />
230 <argument ref="vpnFootprintService" />
231 <argument ref="vpnOpDataSyncer" />
234 <bean id="interVpnLinkNodeListener"
235 class="org.opendaylight.netvirt.vpnmanager.intervpnlink.InterVpnLinkNodeListener"
236 init-method="start" destroy-method="close">
237 <argument ref="dataBroker" />
238 <argument ref="mdsalUtils" />
239 <argument ref="vpnFootprintService" />
242 <bean id="tunnelEndPointChangeListener"
243 class="org.opendaylight.netvirt.vpnmanager.TunnelEndPointChangeListener"
244 init-method="start" destroy-method="close">
245 <argument ref="dataBroker" />
246 <argument ref="vpnInterfaceManager" />
249 <bean id="VpnNodeListener"
250 class="org.opendaylight.netvirt.vpnmanager.VpnNodeListener"
251 init-method="start" destroy-method="close">
252 <argument ref="dataBroker" />
253 <argument ref="mdsalUtils" />
254 <argument ref="idManagerService" />
257 <bean id="vpnElanInterfaceChangeListener"
258 class="org.opendaylight.netvirt.vpnmanager.VpnElanInterfaceChangeListener"
259 init-method="start" destroy-method="close">
260 <argument ref="dataBroker" />
261 <argument ref="elanService" />
264 <bean id="vpnOpInstanceCacheManager"
265 class="org.opendaylight.netvirt.vpnmanager.cache.listeners.VpnOpInstanceCacheManager"
266 init-method="start" destroy-method="close">
267 <argument ref="dataBroker" />