Class BgpRouteVrfEntryHandler
- java.lang.Object
 - 
- org.opendaylight.netvirt.fibmanager.BaseVrfEntryHandler
 - 
- org.opendaylight.netvirt.fibmanager.BgpRouteVrfEntryHandler
 
 
 
- 
- All Implemented Interfaces:
 java.lang.AutoCloseable,org.opendaylight.genius.utils.batching.ResourceHandler
@Singleton public class BgpRouteVrfEntryHandler extends BaseVrfEntryHandler implements org.opendaylight.genius.utils.batching.ResourceHandler
 
- 
- 
Constructor Summary
Constructors Constructor Description BgpRouteVrfEntryHandler(org.opendaylight.mdsal.binding.api.DataBroker dataBroker, NexthopManager nexthopManager, FibUtil fibUtil, org.opendaylight.serviceutils.upgrade.UpgradeState upgradeState, org.opendaylight.genius.datastoreutils.listeners.DataTreeEventCallbackRegistrar eventCallbacks) 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidaddRewriteDstMacAction(org.opendaylight.yangtools.yang.common.Uint32 vpnId, VrfEntry vrfEntry, @Nullable Prefixes prefixInfo, java.util.List<org.opendaylight.genius.mdsalutil.ActionInfo> actionInfos)protected voidaddTunnelInterfaceActions(org.opendaylight.netvirt.fibmanager.NexthopManager.AdjacencyResult adjacencyResult, org.opendaylight.yangtools.yang.common.Uint32 vpnId, VrfEntry vrfEntry, java.util.List<org.opendaylight.genius.mdsalutil.ActionInfo> actionInfos, java.lang.String rd)voidclose()voidcreate(org.opendaylight.mdsal.binding.api.WriteTransaction tx, org.opendaylight.mdsal.common.api.LogicalDatastoreType datastoreType, org.opendaylight.yangtools.yang.binding.InstanceIdentifier identifier, java.lang.Object vrfEntry, java.util.List<org.opendaylight.genius.utils.batching.SubTransaction> subTxns)voidcreateRemoteFibEntry(org.opendaylight.yangtools.yang.common.Uint64 remoteDpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, VrfEntry vrfEntry, org.opendaylight.mdsal.binding.api.WriteTransaction tx, java.util.List<org.opendaylight.genius.utils.batching.SubTransaction> subTxns)voiddelete(org.opendaylight.mdsal.binding.api.WriteTransaction tx, org.opendaylight.mdsal.common.api.LogicalDatastoreType datastoreType, org.opendaylight.yangtools.yang.binding.InstanceIdentifier identifier, java.lang.Object vrfEntry, java.util.List<org.opendaylight.genius.utils.batching.SubTransaction> subTxns)voiddeleteRemoteRoute(@Nullable org.opendaylight.yangtools.yang.common.Uint64 localDpnId, org.opendaylight.yangtools.yang.common.Uint64 remoteDpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, VrfTablesKey vrfTableKey, VrfEntry vrfEntry, java.util.Optional<Routes> extraRouteOptional, @Nullable org.opendaylight.mdsal.binding.api.WriteTransaction tx, java.util.List<org.opendaylight.genius.utils.batching.SubTransaction> subTxns)intgetBatchInterval()intgetBatchSize()java.util.function.Consumer<? super VrfEntry>getConsumerForCreatingRemoteFib(org.opendaylight.yangtools.yang.common.Uint64 dpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, java.lang.String remoteNextHopIp, java.util.Optional<VrfTables> vrfTable, org.opendaylight.mdsal.binding.api.WriteTransaction writeCfgTxn, java.util.List<org.opendaylight.genius.utils.batching.SubTransaction> subTxns)java.util.function.Consumer<? super VrfEntry>getConsumerForDeletingRemoteFib(org.opendaylight.yangtools.yang.common.Uint64 dpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String remoteNextHopIp, java.util.Optional<VrfTables> vrfTable, org.opendaylight.mdsal.binding.api.WriteTransaction writeCfgTxn, java.util.List<org.opendaylight.genius.utils.batching.SubTransaction> subTxns)org.opendaylight.mdsal.common.api.LogicalDatastoreTypegetDatastoreType()org.opendaylight.mdsal.binding.api.DataBrokergetResourceBroker()voidinit()voidprogramRemoteFibForBgpRoutes(org.opendaylight.yangtools.yang.common.Uint64 remoteDpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, VrfEntry vrfEntry, org.opendaylight.mdsal.binding.api.WriteTransaction tx, java.lang.String rd, java.util.List<org.opendaylight.netvirt.fibmanager.NexthopManager.AdjacencyResult> adjacencyResults, java.util.List<org.opendaylight.genius.utils.batching.SubTransaction> subTxns)voidupdate(org.opendaylight.mdsal.binding.api.WriteTransaction tx, org.opendaylight.mdsal.common.api.LogicalDatastoreType datastoreType, org.opendaylight.yangtools.yang.binding.InstanceIdentifier identifier, java.lang.Object original, java.lang.Object update, java.util.List<org.opendaylight.genius.utils.batching.SubTransaction> subTxns)voidupdateContainer(org.opendaylight.mdsal.binding.api.WriteTransaction tx, org.opendaylight.mdsal.common.api.LogicalDatastoreType datastoreType, org.opendaylight.yangtools.yang.binding.InstanceIdentifier identifier, java.lang.Object original, java.lang.Object update, java.util.List<org.opendaylight.genius.utils.batching.SubTransaction> transactionObjects)- 
Methods inherited from class org.opendaylight.netvirt.fibmanager.BaseVrfEntryHandler
buildL3vpnGatewayFlow, checkDpnDeleteFibEntry, deleteLocalAdjacency, deleteRemoteRoute, getFibUtil, getNextHopManager, getVpnToExtraroute, getVpnToExtrarouteIdentifier, installPingResponderFlowEntry, makeConnectedRoute, programRemoteFib, resolveAdjacency 
 - 
 
 - 
 
- 
- 
Constructor Detail
- 
BgpRouteVrfEntryHandler
@Inject public BgpRouteVrfEntryHandler(org.opendaylight.mdsal.binding.api.DataBroker dataBroker, NexthopManager nexthopManager, FibUtil fibUtil, org.opendaylight.serviceutils.upgrade.UpgradeState upgradeState, org.opendaylight.genius.datastoreutils.listeners.DataTreeEventCallbackRegistrar eventCallbacks) 
 - 
 
- 
Method Detail
- 
init
@PostConstruct public void init()
 
- 
close
public void close()
- Specified by:
 closein interfacejava.lang.AutoCloseable- Overrides:
 closein classBaseVrfEntryHandler
 
- 
getResourceBroker
public org.opendaylight.mdsal.binding.api.DataBroker getResourceBroker()
- Specified by:
 getResourceBrokerin interfaceorg.opendaylight.genius.utils.batching.ResourceHandler
 
- 
getBatchSize
public int getBatchSize()
- Specified by:
 getBatchSizein interfaceorg.opendaylight.genius.utils.batching.ResourceHandler
 
- 
getBatchInterval
public int getBatchInterval()
- Specified by:
 getBatchIntervalin interfaceorg.opendaylight.genius.utils.batching.ResourceHandler
 
- 
getDatastoreType
public org.opendaylight.mdsal.common.api.LogicalDatastoreType getDatastoreType()
- Specified by:
 getDatastoreTypein interfaceorg.opendaylight.genius.utils.batching.ResourceHandler
 
- 
update
public void update(org.opendaylight.mdsal.binding.api.WriteTransaction tx, org.opendaylight.mdsal.common.api.LogicalDatastoreType datastoreType, org.opendaylight.yangtools.yang.binding.InstanceIdentifier identifier, java.lang.Object original, java.lang.Object update, java.util.List<org.opendaylight.genius.utils.batching.SubTransaction> subTxns)- Specified by:
 updatein interfaceorg.opendaylight.genius.utils.batching.ResourceHandler
 
- 
updateContainer
public void updateContainer(org.opendaylight.mdsal.binding.api.WriteTransaction tx, org.opendaylight.mdsal.common.api.LogicalDatastoreType datastoreType, org.opendaylight.yangtools.yang.binding.InstanceIdentifier identifier, java.lang.Object original, java.lang.Object update, java.util.List<org.opendaylight.genius.utils.batching.SubTransaction> transactionObjects)- Specified by:
 updateContainerin interfaceorg.opendaylight.genius.utils.batching.ResourceHandler
 
- 
create
public void create(org.opendaylight.mdsal.binding.api.WriteTransaction tx, org.opendaylight.mdsal.common.api.LogicalDatastoreType datastoreType, org.opendaylight.yangtools.yang.binding.InstanceIdentifier identifier, java.lang.Object vrfEntry, java.util.List<org.opendaylight.genius.utils.batching.SubTransaction> subTxns)- Specified by:
 createin interfaceorg.opendaylight.genius.utils.batching.ResourceHandler
 
- 
delete
public void delete(org.opendaylight.mdsal.binding.api.WriteTransaction tx, org.opendaylight.mdsal.common.api.LogicalDatastoreType datastoreType, org.opendaylight.yangtools.yang.binding.InstanceIdentifier identifier, java.lang.Object vrfEntry, java.util.List<org.opendaylight.genius.utils.batching.SubTransaction> subTxns)- Specified by:
 deletein interfaceorg.opendaylight.genius.utils.batching.ResourceHandler
 
- 
programRemoteFibForBgpRoutes
public void programRemoteFibForBgpRoutes(org.opendaylight.yangtools.yang.common.Uint64 remoteDpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, VrfEntry vrfEntry, org.opendaylight.mdsal.binding.api.WriteTransaction tx, java.lang.String rd, java.util.List<org.opendaylight.netvirt.fibmanager.NexthopManager.AdjacencyResult> adjacencyResults, java.util.List<org.opendaylight.genius.utils.batching.SubTransaction> subTxns) 
- 
createRemoteFibEntry
public void createRemoteFibEntry(org.opendaylight.yangtools.yang.common.Uint64 remoteDpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, VrfEntry vrfEntry, org.opendaylight.mdsal.binding.api.WriteTransaction tx, java.util.List<org.opendaylight.genius.utils.batching.SubTransaction> subTxns) 
- 
deleteRemoteRoute
public void deleteRemoteRoute(@Nullable org.opendaylight.yangtools.yang.common.Uint64 localDpnId, org.opendaylight.yangtools.yang.common.Uint64 remoteDpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, VrfTablesKey vrfTableKey, VrfEntry vrfEntry, java.util.Optional<Routes> extraRouteOptional, @Nullable org.opendaylight.mdsal.binding.api.WriteTransaction tx, java.util.List<org.opendaylight.genius.utils.batching.SubTransaction> subTxns) 
- 
getConsumerForCreatingRemoteFib
public java.util.function.Consumer<? super VrfEntry> getConsumerForCreatingRemoteFib(org.opendaylight.yangtools.yang.common.Uint64 dpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, java.lang.String remoteNextHopIp, java.util.Optional<VrfTables> vrfTable, org.opendaylight.mdsal.binding.api.WriteTransaction writeCfgTxn, java.util.List<org.opendaylight.genius.utils.batching.SubTransaction> subTxns)
 
- 
getConsumerForDeletingRemoteFib
public java.util.function.Consumer<? super VrfEntry> getConsumerForDeletingRemoteFib(org.opendaylight.yangtools.yang.common.Uint64 dpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String remoteNextHopIp, java.util.Optional<VrfTables> vrfTable, org.opendaylight.mdsal.binding.api.WriteTransaction writeCfgTxn, java.util.List<org.opendaylight.genius.utils.batching.SubTransaction> subTxns)
 
- 
addTunnelInterfaceActions
protected void addTunnelInterfaceActions(org.opendaylight.netvirt.fibmanager.NexthopManager.AdjacencyResult adjacencyResult, org.opendaylight.yangtools.yang.common.Uint32 vpnId, VrfEntry vrfEntry, java.util.List<org.opendaylight.genius.mdsalutil.ActionInfo> actionInfos, java.lang.String rd)- Overrides:
 addTunnelInterfaceActionsin classBaseVrfEntryHandler
 
- 
addRewriteDstMacAction
protected void addRewriteDstMacAction(org.opendaylight.yangtools.yang.common.Uint32 vpnId, VrfEntry vrfEntry, @Nullable Prefixes prefixInfo, java.util.List<org.opendaylight.genius.mdsalutil.ActionInfo> actionInfos)- Overrides:
 addRewriteDstMacActionin classBaseVrfEntryHandler
 
 - 
 
 -