@Singleton public class NaptSwitchHA extends Object
Constructor and Description |
---|
NaptSwitchHA(org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker,
org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager mdsalManager,
ExternalRoutersListener externalRouterListener,
org.opendaylight.yang.gen.v1.urn.opendaylight.genius.itm.rpcs.rev160406.ItmRpcService itmManager,
org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rpcs.rev160406.OdlInterfaceRpcService odlInterfaceRpcService,
org.opendaylight.yang.gen.v1.urn.opendaylight.genius.idmanager.rev160406.IdManagerService idManager,
NAPTSwitchSelector naptSwitchSelector,
IFibManager fibManager,
EvpnNaptSwitchHA evpnNaptSwitchHA,
IElanService elanManager,
SnatServiceManager natServiceManager,
NatserviceConfig config,
NaptEventHandler naptEventHandler,
org.opendaylight.genius.interfacemanager.interfaces.IInterfaceManager interfaceManager,
NatOverVxlanUtil natOverVxlanUtil) |
Modifier and Type | Method and Description |
---|---|
protected void |
bestEffortDeletion(long routerId,
String routerName,
Map<String,Long> externalIpLabel,
org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx) |
org.opendaylight.genius.mdsalutil.FlowEntity |
buildSnatFlowEntity(BigInteger dpId,
String routerName,
long groupId,
long routerVpnId,
int addordel) |
org.opendaylight.genius.mdsalutil.FlowEntity |
buildSnatFlowEntityForNaptSwitch(BigInteger dpId,
String routerName,
long routerVpnId,
int addordel) |
protected String |
getTunnelInterfaceName(BigInteger srcDpId,
BigInteger dstDpId) |
List<org.opendaylight.genius.mdsalutil.BucketInfo> |
handleGroupInNeighborSwitches(BigInteger dpnId,
String routerName,
long routerId,
BigInteger naptSwitch) |
List<org.opendaylight.genius.mdsalutil.BucketInfo> |
handleGroupInPrimarySwitch() |
protected void |
installSnatFlows(String routerName,
Long routerId,
BigInteger naptSwitch,
Long routerVpnId,
org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx) |
protected void |
installSnatGroupEntry(BigInteger dpnId,
List<org.opendaylight.genius.mdsalutil.BucketInfo> bucketInfo,
String routerName) |
boolean |
isNaptSwitchDown(String routerName,
Long routerId,
BigInteger dpnId,
BigInteger naptSwitch,
Long routerVpnId,
Collection<String> externalIpCache,
boolean isClearBgpRts,
org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx) |
boolean |
isNaptSwitchDown(String routerName,
Long routerId,
BigInteger dpnId,
BigInteger naptSwitch,
Long routerVpnId,
Collection<String> externalIpCache,
org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx) |
protected void |
removeSnatFlowsInOldNaptSwitch(String routerName,
Long routerId,
BigInteger naptSwitch,
Map<String,Long> externalIpmap,
org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx) |
protected void |
subnetRegisterMapping(Routers routerEntry,
Long segmentId) |
boolean |
updateNaptSwitch(String routerName,
BigInteger naptSwitchId) |
void |
updateNaptSwitchBucketStatus(String routerName,
long routerId,
BigInteger naptSwitch) |
@Inject public NaptSwitchHA(org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker, org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager mdsalManager, ExternalRoutersListener externalRouterListener, org.opendaylight.yang.gen.v1.urn.opendaylight.genius.itm.rpcs.rev160406.ItmRpcService itmManager, org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rpcs.rev160406.OdlInterfaceRpcService odlInterfaceRpcService, org.opendaylight.yang.gen.v1.urn.opendaylight.genius.idmanager.rev160406.IdManagerService idManager, NAPTSwitchSelector naptSwitchSelector, IFibManager fibManager, EvpnNaptSwitchHA evpnNaptSwitchHA, IElanService elanManager, SnatServiceManager natServiceManager, NatserviceConfig config, NaptEventHandler naptEventHandler, org.opendaylight.genius.interfacemanager.interfaces.IInterfaceManager interfaceManager, NatOverVxlanUtil natOverVxlanUtil)
protected void removeSnatFlowsInOldNaptSwitch(String routerName, Long routerId, BigInteger naptSwitch, @Nullable Map<String,Long> externalIpmap, org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx) throws ExecutionException, InterruptedException
public boolean isNaptSwitchDown(String routerName, Long routerId, BigInteger dpnId, BigInteger naptSwitch, Long routerVpnId, Collection<String> externalIpCache, org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx) throws ExecutionException, InterruptedException
public boolean isNaptSwitchDown(String routerName, Long routerId, BigInteger dpnId, BigInteger naptSwitch, Long routerVpnId, Collection<String> externalIpCache, boolean isClearBgpRts, org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx) throws ExecutionException, InterruptedException
public void updateNaptSwitchBucketStatus(String routerName, long routerId, BigInteger naptSwitch)
public List<org.opendaylight.genius.mdsalutil.BucketInfo> handleGroupInPrimarySwitch()
@Nonnull public List<org.opendaylight.genius.mdsalutil.BucketInfo> handleGroupInNeighborSwitches(BigInteger dpnId, String routerName, long routerId, BigInteger naptSwitch)
protected void installSnatGroupEntry(BigInteger dpnId, List<org.opendaylight.genius.mdsalutil.BucketInfo> bucketInfo, String routerName)
@Nullable protected String getTunnelInterfaceName(BigInteger srcDpId, BigInteger dstDpId)
public boolean updateNaptSwitch(String routerName, BigInteger naptSwitchId)
public org.opendaylight.genius.mdsalutil.FlowEntity buildSnatFlowEntity(BigInteger dpId, String routerName, long groupId, long routerVpnId, int addordel)
public org.opendaylight.genius.mdsalutil.FlowEntity buildSnatFlowEntityForNaptSwitch(BigInteger dpId, String routerName, long routerVpnId, int addordel)
protected void installSnatFlows(String routerName, Long routerId, BigInteger naptSwitch, Long routerVpnId, org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx)
protected void bestEffortDeletion(long routerId, String routerName, Map<String,Long> externalIpLabel, org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx) throws ExecutionException, InterruptedException
Copyright © 2019 OpenDaylight. All rights reserved.