@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) |
Modifier and Type | Method and Description |
---|---|
protected void |
bestEffortDeletion(long routerId,
String routerName,
Map<String,Long> externalIpLabel,
org.opendaylight.controller.md.sal.binding.api.WriteTransaction removeFlowInvTx) |
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) |
boolean |
getSwitchStatus(BigInteger switchId) |
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.controller.md.sal.binding.api.WriteTransaction writeFlowInvTx) |
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.controller.md.sal.binding.api.WriteTransaction writeFlowInvTx) |
boolean |
isNaptSwitchDown(String routerName,
Long routerId,
BigInteger dpnId,
BigInteger naptSwitch,
Long routerVpnId,
Collection<String> externalIpCache,
org.opendaylight.controller.md.sal.binding.api.WriteTransaction writeFlowInvTx) |
protected void |
removeSnatFlowsInOldNaptSwitch(String routerName,
Long routerId,
BigInteger naptSwitch,
Map<String,Long> externalIpmap,
org.opendaylight.controller.md.sal.binding.api.WriteTransaction removeFlowInvTx) |
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)
protected void removeSnatFlowsInOldNaptSwitch(String routerName, Long routerId, BigInteger naptSwitch, Map<String,Long> externalIpmap, org.opendaylight.controller.md.sal.binding.api.WriteTransaction removeFlowInvTx)
public boolean isNaptSwitchDown(String routerName, Long routerId, BigInteger dpnId, BigInteger naptSwitch, Long routerVpnId, Collection<String> externalIpCache, org.opendaylight.controller.md.sal.binding.api.WriteTransaction writeFlowInvTx)
public boolean isNaptSwitchDown(String routerName, Long routerId, BigInteger dpnId, BigInteger naptSwitch, Long routerVpnId, Collection<String> externalIpCache, boolean isClearBgpRts, org.opendaylight.controller.md.sal.binding.api.WriteTransaction writeFlowInvTx)
public void updateNaptSwitchBucketStatus(String routerName, long routerId, BigInteger naptSwitch)
public boolean getSwitchStatus(BigInteger switchId)
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)
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.controller.md.sal.binding.api.WriteTransaction writeFlowInvTx)
protected void bestEffortDeletion(long routerId, String routerName, Map<String,Long> externalIpLabel, org.opendaylight.controller.md.sal.binding.api.WriteTransaction removeFlowInvTx)
Copyright © 2019 OpenDaylight. All rights reserved.