Class FibManagerImpl
- java.lang.Object
-
- org.opendaylight.netvirt.fibmanager.FibManagerImpl
-
- All Implemented Interfaces:
IFibManager
@Singleton public class FibManagerImpl extends java.lang.Object implements IFibManager
-
-
Constructor Summary
Constructors Constructor Description FibManagerImpl(NexthopManager nexthopManager, VrfEntryListener vrfEntryListener, org.osgi.framework.BundleContext bundleContext, FibUtil fibUtil, InterVpnLinkCache interVpnLinkCache)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddFibEntryForRouterInterface(java.lang.String rd, java.lang.String prefix, RouterInterface routerInterface, org.opendaylight.yangtools.yang.common.Uint32 label, org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> writeConfigTxn)voidaddOrUpdateFibEntry(java.lang.String rd, java.lang.String macAddress, java.lang.String prefix, java.util.List<java.lang.String> nextHopList, VrfEntryBase.EncapType encapType, org.opendaylight.yangtools.yang.common.Uint32 label, org.opendaylight.yangtools.yang.common.Uint32 l3vni, java.lang.String gwMacAddress, java.lang.String parentVpnRd, RouteOrigin origin, org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> writeConfigTxn)voidaddVrfTable(java.lang.String rd, org.opendaylight.controller.md.sal.binding.api.WriteTransaction writeConfigTxn)voidcleanUpDpnForVpn(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)voidcleanUpExternalRoutesOnDpn(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)java.lang.StringgetConfTransType()java.lang.StringgetReqTransType()java.lang.StringgetTransportTypeStr(java.lang.String tunType)booleanisVPNConfigured()voidmanageRemoteRouteOnDPN(boolean action, org.opendaylight.yangtools.yang.common.Uint64 dpnId, 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)voidpopulateExternalRoutesOnDpn(org.opendaylight.yangtools.yang.common.Uint64 localDpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, java.lang.String localNextHopIp, java.lang.String remoteNextHopIp)voidpopulateFibOnNewDpn(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)voidprogramDcGwLoadBalancingGroup(org.opendaylight.yangtools.yang.common.Uint64 dpnId, java.lang.String destinationIp, int addRemoveOrUpdate, boolean isTunnelUp, java.lang.Class<? extends org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rev160406.TunnelTypeBase> tunnelType)voidrefreshVrfEntry(java.lang.String rd, java.lang.String prefix)voidremoveFibEntry(java.lang.String rd, java.lang.String prefix, java.lang.String eventSource, org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> writeConfigTxn)voidremoveInterVPNLinkRouteFlows(java.lang.String interVpnLinkName, boolean isVpnFirstEndPoint, VrfEntry vrfEntry)voidremoveOrUpdateFibEntry(java.lang.String rd, java.lang.String prefix, java.lang.String nextHopToRemove, org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> writeConfigTxn)voidremoveVrfTable(java.lang.String rd, org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> writeConfigTxn)voidsetConfTransType(java.lang.String service, java.lang.String transportType)voidupdateRoutePathForFibEntry(java.lang.String rd, java.lang.String prefix, java.lang.String nextHop, org.opendaylight.yangtools.yang.common.Uint32 label, boolean nextHopAdd, org.opendaylight.controller.md.sal.binding.api.WriteTransaction writeConfigTxn)voidwriteConfTransTypeConfigDS()
-
-
-
Constructor Detail
-
FibManagerImpl
@Inject public FibManagerImpl(NexthopManager nexthopManager, VrfEntryListener vrfEntryListener, org.osgi.framework.BundleContext bundleContext, FibUtil fibUtil, InterVpnLinkCache interVpnLinkCache)
-
-
Method Detail
-
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)- Specified by:
populateFibOnNewDpnin interfaceIFibManager
-
populateExternalRoutesOnDpn
public void populateExternalRoutesOnDpn(org.opendaylight.yangtools.yang.common.Uint64 localDpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, java.lang.String localNextHopIp, java.lang.String remoteNextHopIp)- Specified by:
populateExternalRoutesOnDpnin interfaceIFibManager
-
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)- Specified by:
cleanUpExternalRoutesOnDpnin interfaceIFibManager
-
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)- Specified by:
cleanUpDpnForVpnin interfaceIFibManager
-
setConfTransType
public void setConfTransType(java.lang.String service, java.lang.String transportType)- Specified by:
setConfTransTypein interfaceIFibManager
-
writeConfTransTypeConfigDS
public void writeConfTransTypeConfigDS()
- Specified by:
writeConfTransTypeConfigDSin interfaceIFibManager
-
getConfTransType
public java.lang.String getConfTransType()
- Specified by:
getConfTransTypein interfaceIFibManager
-
getReqTransType
public java.lang.String getReqTransType()
- Specified by:
getReqTransTypein interfaceIFibManager
-
getTransportTypeStr
public java.lang.String getTransportTypeStr(java.lang.String tunType)
- Specified by:
getTransportTypeStrin interfaceIFibManager
-
manageRemoteRouteOnDPN
public void manageRemoteRouteOnDPN(boolean action, org.opendaylight.yangtools.yang.common.Uint64 dpnId, 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)- Specified by:
manageRemoteRouteOnDPNin interfaceIFibManager
-
addOrUpdateFibEntry
public void addOrUpdateFibEntry(java.lang.String rd, java.lang.String macAddress, java.lang.String prefix, java.util.List<java.lang.String> nextHopList, VrfEntryBase.EncapType encapType, org.opendaylight.yangtools.yang.common.Uint32 label, org.opendaylight.yangtools.yang.common.Uint32 l3vni, java.lang.String gwMacAddress, java.lang.String parentVpnRd, RouteOrigin origin, org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> writeConfigTxn)- Specified by:
addOrUpdateFibEntryin interfaceIFibManager
-
addFibEntryForRouterInterface
public void addFibEntryForRouterInterface(java.lang.String rd, java.lang.String prefix, RouterInterface routerInterface, org.opendaylight.yangtools.yang.common.Uint32 label, org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> writeConfigTxn)- Specified by:
addFibEntryForRouterInterfacein interfaceIFibManager
-
removeOrUpdateFibEntry
public void removeOrUpdateFibEntry(java.lang.String rd, java.lang.String prefix, java.lang.String nextHopToRemove, org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> writeConfigTxn)- Specified by:
removeOrUpdateFibEntryin interfaceIFibManager
-
removeFibEntry
public void removeFibEntry(java.lang.String rd, java.lang.String prefix, java.lang.String eventSource, org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> writeConfigTxn)- Specified by:
removeFibEntryin interfaceIFibManager
-
updateRoutePathForFibEntry
public void updateRoutePathForFibEntry(java.lang.String rd, java.lang.String prefix, java.lang.String nextHop, org.opendaylight.yangtools.yang.common.Uint32 label, boolean nextHopAdd, org.opendaylight.controller.md.sal.binding.api.WriteTransaction writeConfigTxn)- Specified by:
updateRoutePathForFibEntryin interfaceIFibManager
-
removeVrfTable
public void removeVrfTable(java.lang.String rd, org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> writeConfigTxn)- Specified by:
removeVrfTablein interfaceIFibManager
-
addVrfTable
public void addVrfTable(java.lang.String rd, org.opendaylight.controller.md.sal.binding.api.WriteTransaction writeConfigTxn)- Specified by:
addVrfTablein interfaceIFibManager
-
isVPNConfigured
public boolean isVPNConfigured()
- Specified by:
isVPNConfiguredin interfaceIFibManager
-
removeInterVPNLinkRouteFlows
public void removeInterVPNLinkRouteFlows(java.lang.String interVpnLinkName, boolean isVpnFirstEndPoint, VrfEntry vrfEntry)- Specified by:
removeInterVPNLinkRouteFlowsin interfaceIFibManager
-
programDcGwLoadBalancingGroup
public void programDcGwLoadBalancingGroup(org.opendaylight.yangtools.yang.common.Uint64 dpnId, java.lang.String destinationIp, int addRemoveOrUpdate, boolean isTunnelUp, java.lang.Class<? extends org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rev160406.TunnelTypeBase> tunnelType)- Specified by:
programDcGwLoadBalancingGroupin interfaceIFibManager
-
refreshVrfEntry
public void refreshVrfEntry(java.lang.String rd, java.lang.String prefix)- Specified by:
refreshVrfEntryin interfaceIFibManager
-
-