@Singleton public class FibManagerImpl extends Object implements IFibManager
Constructor and Description |
---|
FibManagerImpl(NexthopManager nexthopManager,
VrfEntryListener vrfEntryListener,
org.osgi.framework.BundleContext bundleContext,
FibUtil fibUtil,
InterVpnLinkCache interVpnLinkCache) |
Modifier and Type | Method and Description |
---|---|
void |
addFibEntryForRouterInterface(String rd,
String prefix,
RouterInterface routerInterface,
long label,
org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> writeConfigTxn) |
void |
addOrUpdateFibEntry(String rd,
String macAddress,
String prefix,
List<String> nextHopList,
VrfEntryBase.EncapType encapType,
long label,
long l3vni,
String gwMacAddress,
String parentVpnRd,
RouteOrigin origin,
org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> writeConfigTxn) |
void |
addVrfTable(String rd,
org.opendaylight.controller.md.sal.binding.api.WriteTransaction writeConfigTxn) |
boolean |
checkFibEntryExist(String rd,
String prefix,
String nextHopIp) |
void |
cleanUpDpnForVpn(BigInteger dpnId,
long vpnId,
String rd,
com.google.common.util.concurrent.FutureCallback<List<Void>> callback) |
void |
cleanUpExternalRoutesOnDpn(BigInteger dpnId,
long vpnId,
String rd,
String localNextHopIp,
String remoteNextHopIp) |
String |
getConfTransType() |
String |
getReqTransType() |
String |
getTransportTypeStr(String tunType) |
boolean |
isVPNConfigured() |
void |
manageRemoteRouteOnDPN(boolean action,
BigInteger dpnId,
long vpnId,
String rd,
String destPrefix,
String destTepIp,
long label) |
void |
populateExternalRoutesOnDpn(BigInteger localDpnId,
long vpnId,
String rd,
String localNextHopIp,
String remoteNextHopIp) |
void |
populateFibOnNewDpn(BigInteger dpnId,
long vpnId,
String rd,
com.google.common.util.concurrent.FutureCallback<List<Void>> callback) |
void |
programDcGwLoadBalancingGroup(List<String> availableDcGws,
BigInteger dpnId,
String destinationIp,
int addRemoveOrUpdate,
boolean isTunnelUp,
Class<? extends org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rev160406.TunnelTypeBase> tunnelType) |
void |
refreshVrfEntry(String rd,
String prefix) |
void |
removeFibEntry(String rd,
String prefix,
org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> writeConfigTxn) |
void |
removeInterVPNLinkRouteFlows(String interVpnLinkName,
boolean isVpnFirstEndPoint,
VrfEntry vrfEntry) |
void |
removeOrUpdateFibEntry(String rd,
String prefix,
String nextHopToRemove,
org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> writeConfigTxn) |
void |
removeVrfTable(String rd,
org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> writeConfigTxn) |
void |
setConfTransType(String service,
String transportType) |
void |
updateRoutePathForFibEntry(String rd,
String prefix,
String nextHop,
long label,
boolean nextHopAdd,
org.opendaylight.controller.md.sal.binding.api.WriteTransaction writeConfigTxn) |
void |
writeConfTransTypeConfigDS() |
@Inject public FibManagerImpl(NexthopManager nexthopManager, VrfEntryListener vrfEntryListener, org.osgi.framework.BundleContext bundleContext, FibUtil fibUtil, InterVpnLinkCache interVpnLinkCache)
public void populateFibOnNewDpn(BigInteger dpnId, long vpnId, String rd, com.google.common.util.concurrent.FutureCallback<List<Void>> callback)
populateFibOnNewDpn
in interface IFibManager
public void populateExternalRoutesOnDpn(BigInteger localDpnId, long vpnId, String rd, String localNextHopIp, String remoteNextHopIp)
populateExternalRoutesOnDpn
in interface IFibManager
public void cleanUpExternalRoutesOnDpn(BigInteger dpnId, long vpnId, String rd, String localNextHopIp, String remoteNextHopIp)
cleanUpExternalRoutesOnDpn
in interface IFibManager
public void cleanUpDpnForVpn(BigInteger dpnId, long vpnId, String rd, com.google.common.util.concurrent.FutureCallback<List<Void>> callback)
cleanUpDpnForVpn
in interface IFibManager
public void setConfTransType(String service, String transportType)
setConfTransType
in interface IFibManager
public void writeConfTransTypeConfigDS()
writeConfTransTypeConfigDS
in interface IFibManager
public String getConfTransType()
getConfTransType
in interface IFibManager
public String getReqTransType()
getReqTransType
in interface IFibManager
public String getTransportTypeStr(String tunType)
getTransportTypeStr
in interface IFibManager
public void manageRemoteRouteOnDPN(boolean action, BigInteger dpnId, long vpnId, String rd, String destPrefix, String destTepIp, long label)
manageRemoteRouteOnDPN
in interface IFibManager
public void addOrUpdateFibEntry(String rd, String macAddress, String prefix, List<String> nextHopList, VrfEntryBase.EncapType encapType, long label, long l3vni, String gwMacAddress, String parentVpnRd, RouteOrigin origin, org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> writeConfigTxn)
addOrUpdateFibEntry
in interface IFibManager
public void addFibEntryForRouterInterface(String rd, String prefix, RouterInterface routerInterface, long label, org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> writeConfigTxn)
addFibEntryForRouterInterface
in interface IFibManager
public void removeOrUpdateFibEntry(String rd, String prefix, String nextHopToRemove, org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> writeConfigTxn)
removeOrUpdateFibEntry
in interface IFibManager
public void removeFibEntry(String rd, String prefix, org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> writeConfigTxn)
removeFibEntry
in interface IFibManager
public void updateRoutePathForFibEntry(String rd, String prefix, String nextHop, long label, boolean nextHopAdd, org.opendaylight.controller.md.sal.binding.api.WriteTransaction writeConfigTxn)
updateRoutePathForFibEntry
in interface IFibManager
public void removeVrfTable(String rd, org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> writeConfigTxn)
removeVrfTable
in interface IFibManager
public void addVrfTable(String rd, org.opendaylight.controller.md.sal.binding.api.WriteTransaction writeConfigTxn)
addVrfTable
in interface IFibManager
public boolean isVPNConfigured()
isVPNConfigured
in interface IFibManager
public void removeInterVPNLinkRouteFlows(String interVpnLinkName, boolean isVpnFirstEndPoint, VrfEntry vrfEntry)
removeInterVPNLinkRouteFlows
in interface IFibManager
public boolean checkFibEntryExist(String rd, String prefix, String nextHopIp)
checkFibEntryExist
in interface IFibManager
public void programDcGwLoadBalancingGroup(List<String> availableDcGws, BigInteger dpnId, String destinationIp, int addRemoveOrUpdate, boolean isTunnelUp, Class<? extends org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rev160406.TunnelTypeBase> tunnelType)
programDcGwLoadBalancingGroup
in interface IFibManager
public void refreshVrfEntry(String rd, String prefix)
refreshVrfEntry
in interface IFibManager
Copyright © 2019 OpenDaylight. All rights reserved.