Class VrfEntryListener
- java.lang.Object
-
- org.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase<VrfEntry,VrfEntryListener>
-
- org.opendaylight.netvirt.fibmanager.VrfEntryListener
-
- All Implemented Interfaces:
java.lang.AutoCloseable
,java.util.EventListener
,org.opendaylight.controller.md.sal.binding.api.DataTreeChangeListener<VrfEntry>
,org.opendaylight.serviceutils.tools.mdsal.listener.ChainableDataTreeChangeListener<VrfEntry>
@Singleton public class VrfEntryListener extends org.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase<VrfEntry,VrfEntryListener>
-
-
Field Summary
Fields Modifier and Type Field Description static org.opendaylight.yangtools.yang.common.Uint64
COOKIE_TUNNEL
-
Constructor Summary
Constructors Constructor Description VrfEntryListener(org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker, org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager mdsalApiManager, NexthopManager nexthopManager, IElanService elanManager, BaseVrfEntryHandler vrfEntryHandler, BgpRouteVrfEntryHandler bgpRouteVrfEntryHandler, RouterInterfaceVrfEntryHandler routerInterfaceVrfEntryHandler, org.opendaylight.infrautils.jobcoordinator.JobCoordinator jobCoordinator, FibUtil fibUtil, InterVpnLinkCache interVpnLinkCache, org.opendaylight.serviceutils.upgrade.UpgradeState upgradeState, org.opendaylight.genius.datastoreutils.listeners.DataTreeEventCallbackRegistrar eventCallbacks)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
add(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<VrfEntry> identifier, VrfEntry vrfEntry)
static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<VrfTables>
buildVrfId(java.lang.String rd)
void
cleanUpDpnForVpn(org.opendaylight.yangtools.yang.common.Uint64 dpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, com.google.common.util.concurrent.FutureCallback<java.util.List<java.lang.Void>> callback)
void
cleanUpExternalRoutesOnDpn(org.opendaylight.yangtools.yang.common.Uint64 dpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, java.lang.String localNextHopIp, java.lang.String remoteNextHopIp)
protected void
cleanUpOpDataForFib(org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String primaryRd, VrfEntry vrfEntry)
void
close()
void
createTerminatingServiceActions(org.opendaylight.yangtools.yang.common.Uint64 destDpId, org.opendaylight.yangtools.yang.common.Uint32 label, java.util.List<org.opendaylight.genius.mdsalutil.ActionInfo> actionsInfos, org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> tx)
java.util.List<org.opendaylight.yangtools.yang.common.Uint64>
deleteLocalFibEntry(org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, VrfEntry vrfEntry)
protected VrfEntryListener
getDataTreeChangeListener()
protected org.opendaylight.yangtools.yang.binding.InstanceIdentifier<VrfEntry>
getWildCardPath()
void
init()
void
manageRemoteRouteOnDPN(boolean action, org.opendaylight.yangtools.yang.common.Uint64 localDpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, java.lang.String destPrefix, java.lang.String destTepIp, org.opendaylight.yangtools.yang.common.Uint32 label)
void
populateExternalRoutesOnDpn(org.opendaylight.yangtools.yang.common.Uint64 dpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, java.lang.String localNextHopIp, java.lang.String remoteNextHopIp)
void
populateFibOnNewDpn(org.opendaylight.yangtools.yang.common.Uint64 dpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, com.google.common.util.concurrent.FutureCallback<java.util.List<java.lang.Void>> callback)
protected void
remove(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<VrfEntry> identifier, VrfEntry vrfEntry)
void
removeInterVPNLinkRouteFlows(InterVpnLinkDataComposite interVpnLink, java.lang.String vpnName, VrfEntry vrfEntry)
protected void
update(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<VrfEntry> identifier, VrfEntry original, VrfEntry update)
-
-
-
Constructor Detail
-
VrfEntryListener
@Inject public VrfEntryListener(org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker, org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager mdsalApiManager, NexthopManager nexthopManager, IElanService elanManager, BaseVrfEntryHandler vrfEntryHandler, BgpRouteVrfEntryHandler bgpRouteVrfEntryHandler, RouterInterfaceVrfEntryHandler routerInterfaceVrfEntryHandler, org.opendaylight.infrautils.jobcoordinator.JobCoordinator jobCoordinator, FibUtil fibUtil, InterVpnLinkCache interVpnLinkCache, org.opendaylight.serviceutils.upgrade.UpgradeState upgradeState, org.opendaylight.genius.datastoreutils.listeners.DataTreeEventCallbackRegistrar eventCallbacks)
-
-
Method Detail
-
init
@PostConstruct public void init()
- Overrides:
init
in classorg.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase<VrfEntry,VrfEntryListener>
-
close
public void close()
- Specified by:
close
in interfacejava.lang.AutoCloseable
- Overrides:
close
in classorg.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase<VrfEntry,VrfEntryListener>
-
getDataTreeChangeListener
protected VrfEntryListener getDataTreeChangeListener()
- Specified by:
getDataTreeChangeListener
in classorg.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase<VrfEntry,VrfEntryListener>
-
getWildCardPath
protected org.opendaylight.yangtools.yang.binding.InstanceIdentifier<VrfEntry> getWildCardPath()
- Specified by:
getWildCardPath
in classorg.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase<VrfEntry,VrfEntryListener>
-
add
protected void add(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<VrfEntry> identifier, VrfEntry vrfEntry)
- Specified by:
add
in classorg.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase<VrfEntry,VrfEntryListener>
-
remove
protected void remove(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<VrfEntry> identifier, VrfEntry vrfEntry)
- Specified by:
remove
in classorg.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase<VrfEntry,VrfEntryListener>
-
update
protected void update(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<VrfEntry> identifier, VrfEntry original, VrfEntry update)
- Specified by:
update
in classorg.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase<VrfEntry,VrfEntryListener>
-
createTerminatingServiceActions
public void createTerminatingServiceActions(org.opendaylight.yangtools.yang.common.Uint64 destDpId, org.opendaylight.yangtools.yang.common.Uint32 label, java.util.List<org.opendaylight.genius.mdsalutil.ActionInfo> actionsInfos, org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> tx)
-
deleteLocalFibEntry
public java.util.List<org.opendaylight.yangtools.yang.common.Uint64> deleteLocalFibEntry(org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, VrfEntry vrfEntry)
-
cleanUpOpDataForFib
protected void cleanUpOpDataForFib(org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String primaryRd, VrfEntry vrfEntry)
-
populateFibOnNewDpn
public void populateFibOnNewDpn(org.opendaylight.yangtools.yang.common.Uint64 dpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, com.google.common.util.concurrent.FutureCallback<java.util.List<java.lang.Void>> callback)
-
populateExternalRoutesOnDpn
public void populateExternalRoutesOnDpn(org.opendaylight.yangtools.yang.common.Uint64 dpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, java.lang.String localNextHopIp, java.lang.String remoteNextHopIp)
-
manageRemoteRouteOnDPN
public void manageRemoteRouteOnDPN(boolean action, org.opendaylight.yangtools.yang.common.Uint64 localDpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, java.lang.String destPrefix, java.lang.String destTepIp, org.opendaylight.yangtools.yang.common.Uint32 label)
-
cleanUpDpnForVpn
public void cleanUpDpnForVpn(org.opendaylight.yangtools.yang.common.Uint64 dpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, com.google.common.util.concurrent.FutureCallback<java.util.List<java.lang.Void>> callback)
-
cleanUpExternalRoutesOnDpn
public void cleanUpExternalRoutesOnDpn(org.opendaylight.yangtools.yang.common.Uint64 dpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, java.lang.String localNextHopIp, java.lang.String remoteNextHopIp)
-
buildVrfId
public static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<VrfTables> buildVrfId(java.lang.String rd)
-
removeInterVPNLinkRouteFlows
public void removeInterVPNLinkRouteFlows(InterVpnLinkDataComposite interVpnLink, java.lang.String vpnName, VrfEntry vrfEntry)
-
-