odl:type="default" />
<reference id="mdsalUtils"
interface="org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager" />
+ <reference id="interfaceManager"
+ interface="org.opendaylight.genius.interfacemanager.interfaces.IInterfaceManager" />
<reference id="notificationPublishService"
interface="org.opendaylight.controller.md.sal.binding.api.NotificationPublishService" />
<reference id="bgpmanager"
<reference id="neutronVpnService"
interface="org.opendaylight.netvirt.neutronvpn.interfaces.INeutronVpnManager"
availability="optional" />
+ <reference id="vpnManager"
+ interface="org.opendaylight.netvirt.vpnmanager.api.IVpnManager"
+ availability="optional" />
+ <reference id="entityOwnershipService"
+ interface="org.opendaylight.controller.md.sal.common.api.clustering.EntityOwnershipService" />
<odl:rpc-service id="idManagerService"
interface="org.opendaylight.yang.gen.v1.urn.opendaylight.genius.idmanager.rev160406.IdManagerService" />
interface="org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.l3vpn.rev130911.OdlL3vpnListener" />
<odl:notification-listener ref="dpnInVpnChangeListener" />
- <bean id="vpnInterfaceManager"
- class="org.opendaylight.netvirt.vpnmanager.VpnInterfaceManager"
- init-method="start" destroy-method="close">
+ <bean id="vpnOpDataSyncer" class="org.opendaylight.netvirt.vpnmanager.VpnOpDataSyncer"/>
+
+ <bean id="vpnFootprintService" class="org.opendaylight.netvirt.vpnmanager.VpnFootprintService">
<argument ref="dataBroker" />
- <argument ref="bgpmanager" />
- <argument ref="odlArputilService" />
- <argument ref="idManagerService" />
- <argument ref="mdsalUtils" />
<argument ref="fibManager" />
<argument ref="odlInterfaceRpcService" />
<argument ref="notificationPublishService" />
+ <argument ref="vpnOpDataSyncer" />
</bean>
+ <service ref="vpnFootprintService"
+ interface="org.opendaylight.netvirt.vpnmanager.api.IVpnFootprintService" />
- <bean id="tunnelInterfaceStateListener"
- class="org.opendaylight.netvirt.vpnmanager.TunnelInterfaceStateListener"
+ <bean id="arpResponderHandler" class="org.opendaylight.netvirt.vpnmanager.arp.responder.ArpResponderHandler">
+ <argument ref="dataBroker" />
+ <argument ref="elanService" />
+ <argument ref="interfaceManager" />
+ </bean>
+
+ <bean id="vpnInterfaceManager"
+ class="org.opendaylight.netvirt.vpnmanager.VpnInterfaceManager"
init-method="start" destroy-method="close">
<argument ref="dataBroker" />
<argument ref="bgpmanager" />
+ <argument ref="odlArputilService" />
+ <argument ref="idManagerService" />
+ <argument ref="mdsalUtils" />
<argument ref="fibManager" />
- <argument ref="itmRpcService" />
+ <argument ref="odlInterfaceRpcService" />
+ <argument ref="vpnFootprintService" />
+ <argument ref="interfaceManager" />
+ <argument ref="vpnManager" />
+ <argument ref="interVpnLinkService" />
+ <argument ref="arpResponderHandler" />
</bean>
<bean id="interfaceStateChangeListener"
init-method="start" destroy-method="close">
<argument ref="dataBroker" />
<argument ref="vpnInterfaceManager" />
+ <argument ref="vpnFootprintService" />
</bean>
<bean id="arpMonitorEventListener"
<argument ref="mdsalUtils" />
<argument ref="alivenessManager" />
<argument ref="neutronVpnService" />
+ <argument ref="interfaceManager" />
+ <argument ref="entityOwnershipService" />
</bean>
<bean id="subnetRoutePacketInHandler"
class="org.opendaylight.netvirt.vpnmanager.SubnetRoutePacketInHandler">
<argument ref="dataBroker" />
<argument ref="packetProcessingService" />
+ <argument ref="odlInterfaceRpcService" />
+ <argument ref="centralizedSwitchProvider" />
</bean>
<service ref="subnetRoutePacketInHandler" odl:type="default"
interface="org.opendaylight.yang.gen.v1.urn.opendaylight.packet.service.rev130709.PacketProcessingListener" />
<odl:notification-listener ref="subnetRoutePacketInHandler" />
+ <odl:clustered-app-config id="vpnConfig"
+ binding-class="org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.vpn.config.rev161130.VpnConfig"
+ default-config-file-name="netvirt-vpnmanager-config.xml"
+ update-strategy="none">
+ </odl:clustered-app-config>
+
<bean id="arpNotificationHandler"
class="org.opendaylight.netvirt.vpnmanager.ArpNotificationHandler">
<argument ref="dataBroker" />
- <argument ref="vpnInterfaceManager" />
- <argument ref="elanService" />
<argument ref="idManagerService" />
- <argument ref="odlArputilService" />
- <argument ref="arpMonitoringHandler" />
- <argument ref="odlInterfaceRpcService" />
+ <argument ref="interfaceManager"/>
+ <argument ref="vpnConfig"/>
</bean>
<service ref="arpNotificationHandler" odl:type="default"
interface="org.opendaylight.yang.gen.v1.urn.opendaylight.genius.arputil.rev160406.OdlArputilListener" />
<argument ref="dataBroker" />
<argument ref="vpnInterfaceManager" />
<argument ref="vpnSubnetRouteHandler" />
+ <argument ref="subnetOpDpnManager" />
+ <argument ref="neutronVpnService" />
</bean>
<bean id="vpnSubnetRouteHandler"
<argument ref="vpnInterfaceManager" />
<argument ref="idManagerService" />
<argument ref="lockManagerService" />
+ <argument ref="vpnOpDataSyncer"/>
+ <argument ref="VpnNodeListener"/>
+ </bean>
+
+ <bean id="tunnelInterfaceStateListener"
+ class="org.opendaylight.netvirt.vpnmanager.TunnelInterfaceStateListener"
+ init-method="start" destroy-method="close">
+ <argument ref="dataBroker" />
+ <argument ref="bgpmanager" />
+ <argument ref="fibManager" />
+ <argument ref="itmRpcService" />
+ <argument ref="odlInterfaceRpcService"/>
+ <argument ref="vpnInterfaceManager" />
+ <argument ref="vpnSubnetRouteHandler" />
</bean>
- <service ref="vpnSubnetRouteHandler" odl:type="default"
- interface="org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.neutronvpn.rev150602.NeutronvpnListener" />
- <odl:notification-listener ref="vpnSubnetRouteHandler" />
<bean id="subnetOpDpnManager" class="org.opendaylight.netvirt.vpnmanager.SubnetOpDpnManager">
<argument ref="dataBroker" />
<argument ref="vpnInstanceListener" />
<argument ref="vpnInterfaceManager" />
<argument ref="mdsalUtils" />
+ <argument ref="vpnFootprintService" />
+ <argument ref="elanService" />
+ <argument ref="interfaceManager" />
+ <argument ref="vpnSubnetRouteHandler" />
</bean>
<service ref="vpnManagerImpl"
interface="org.opendaylight.netvirt.vpnmanager.api.IVpnManager" />
<argument ref="idManagerService" />
<argument ref="vpnInterfaceManager" />
<argument ref="fibManager" />
+ <argument ref="vpnOpDataSyncer" />
+ <argument ref="mdsalUtils" />
</bean>
<bean id="fibEntriesListener" class="org.opendaylight.netvirt.vpnmanager.FibEntriesListener"
<argument ref="vpnInstanceListener" />
</bean>
- <bean id="VpnInterfaceOpListener"
- class="org.opendaylight.netvirt.vpnmanager.VpnInterfaceOpListener"
- init-method="start" destroy-method="close">
- <argument ref="dataBroker" />
- <argument ref="vpnInterfaceManager" />
- </bean>
-
<odl:rpc-implementation ref="vpnRpcServiceImpl" />
<bean id="vpnRpcServiceImpl"
class="org.opendaylight.netvirt.vpnmanager.VpnRpcServiceImpl">
<service ref="vpnRpcServiceImpl"
interface="org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.vpn.rpc.rev160201.VpnRpcService" />
+ <bean id="interVpnLinkService"
+ class="org.opendaylight.netvirt.vpnmanager.intervpnlink.IVpnLinkServiceImpl"
+ init-method="start" destroy-method="close">
+ <argument ref="dataBroker" />
+ <argument ref="idManagerService" />
+ <argument ref="bgpmanager" />
+ <argument ref="fibManager" />
+ </bean>
+ <service ref="interVpnLinkService"
+ interface="org.opendaylight.netvirt.vpnmanager.api.intervpnlink.IVpnLinkService"/>
+
+ <bean id="interVpnLinkLocator"
+ class="org.opendaylight.netvirt.vpnmanager.intervpnlink.InterVpnLinkLocator" >
+ <argument ref="dataBroker" />
+ </bean>
+
<bean id="interVpnLinkListener"
class="org.opendaylight.netvirt.vpnmanager.intervpnlink.InterVpnLinkListener"
init-method="start" destroy-method="close">
<argument ref="bgpmanager" />
<argument ref="fibManager" />
<argument ref="notificationPublishService" />
+ <argument ref="interVpnLinkService" />
+ <argument ref="interVpnLinkLocator" />
+ <argument ref="vpnFootprintService" />
+ <argument ref="vpnOpDataSyncer" />
+ </bean>
+
+ <bean id="interVpnLinkStateListener"
+ class="org.opendaylight.netvirt.vpnmanager.intervpnlink.InterVpnLinkStateListener"
+ init-method="start" destroy-method="close">
+ <argument ref="dataBroker" />
+ <argument ref="interVpnLinkService" />
</bean>
<bean id="interVpnLinkNodeListener"
init-method="start" destroy-method="close">
<argument ref="dataBroker" />
<argument ref="mdsalUtils" />
+ <argument ref="vpnFootprintService" />
</bean>
<bean id="tunnelEndPointChangeListener"
init-method="start" destroy-method="close">
<argument ref="dataBroker" />
<argument ref="mdsalUtils" />
+ <argument ref="idManagerService" />
</bean>
<bean id="vpnElanInterfaceChangeListener"
<argument ref="dataBroker" />
<argument ref="elanService" />
</bean>
+
+ <bean id="vpnOpInstanceCacheManager"
+ class="org.opendaylight.netvirt.vpnmanager.cache.listeners.VpnOpInstanceCacheManager"
+ init-method="start" destroy-method="close">
+ <argument ref="dataBroker" />
+ </bean>
+
+ <bean id="centralizedSwitchProvider"
+ class="org.opendaylight.netvirt.vpnmanager.CentralizedSwitchProvider">
+ <argument ref="dataBroker" />
+ </bean>
+ <service ref="centralizedSwitchProvider"
+ interface="org.opendaylight.netvirt.vpnmanager.api.ICentralizedSwitchProvider" />
+
+ <bean id="centralizedSwitchChangeListener"
+ class="org.opendaylight.netvirt.vpnmanager.CentralizedSwitchChangeListener"
+ init-method="init" destroy-method="close">
+ <argument ref="dataBroker" />
+ <argument ref="vpnManager" />
+ </bean>
+
+ <bean id="l3vpnRegistry"
+ class="org.opendaylight.netvirt.vpnmanager.populator.registry.L3vpnRegistry"
+ init-method="init" destroy-method="close">
+ </bean>
+
+ <bean id="l3vpnOverMplsGrePopulator"
+ class="org.opendaylight.netvirt.vpnmanager.populator.impl.L3vpnOverMplsGrePopulator"
+ init-method="init" destroy-method="close">
+ <argument ref="dataBroker" />
+ <argument ref="vpnInterfaceManager" />
+ <argument ref="bgpmanager" />
+ <argument ref="fibManager" />
+ <argument ref="idManagerService" />
+ </bean>
+
+ <bean id="l3vpnOverVxlanPopulator"
+ class="org.opendaylight.netvirt.vpnmanager.populator.impl.L3vpnOverVxlanPopulator"
+ init-method="init" destroy-method="close">
+ <argument ref="dataBroker" />
+ <argument ref="vpnInterfaceManager" />
+ <argument ref="bgpmanager" />
+ <argument ref="fibManager" />
+ </bean>
+
+ <bean id="subnetmapChangeListener"
+ class="org.opendaylight.netvirt.vpnmanager.SubnetmapChangeListener"
+ init-method="start" destroy-method="close">
+ <argument ref="dataBroker" />
+ <argument ref="vpnSubnetRouteHandler" />
+ </bean>
+
+ <bean id="vpnOpStatusListener"
+ class="org.opendaylight.netvirt.vpnmanager.VpnOpStatusListener"
+ init-method="start" destroy-method="close">
+ <argument ref="dataBroker" />
+ <argument ref="bgpmanager" />
+ <argument ref="idManagerService" />
+ <argument ref="fibManager" />
+ <argument ref="mdsalUtils" />
+ <argument ref="vpnFootprintService" />
+ </bean>
</blueprint>