public class Ipv6ForwardingService extends Object implements SnatServiceListener
| Modifier and Type | Field and Description |
|---|---|
protected org.opendaylight.controller.md.sal.binding.api.DataBroker |
dataBroker |
protected org.opendaylight.yang.gen.v1.urn.opendaylight.genius.idmanager.rev160406.IdManagerService |
idManager |
protected org.opendaylight.genius.interfacemanager.interfaces.IInterfaceManager |
interfaceManager |
protected Ipv6SubnetFlowProgrammer |
ipv6SubnetFlowProgrammer |
protected org.opendaylight.yang.gen.v1.urn.opendaylight.genius.itm.rpcs.rev160406.ItmRpcService |
itmManager |
protected org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager |
mdsalManager |
protected NAPTSwitchSelector |
naptSwitchSelector |
protected org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rpcs.rev160406.OdlInterfaceRpcService |
odlInterfaceRpcService |
| Constructor and Description |
|---|
Ipv6ForwardingService(org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker,
org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager mdsalManager,
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,
org.opendaylight.genius.interfacemanager.interfaces.IInterfaceManager interfaceManager,
Ipv6SubnetFlowProgrammer ipv6SubnetFlowProgrammer) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
addCentralizedRouter(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId,
BigInteger dpnId)
Adds flows for centralized switch for the dpnId.
|
boolean |
addCentralizedRouterAllSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId)
Adds flows for centralized switch for all dpns having ports on the router subnet.
|
protected void |
addIpv6DefaultFibRoute(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
Long routerId,
BigInteger routerMetadata) |
protected void |
addIpv6NaptPfibInboundFlow(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
long routerId,
BigInteger routerMetadata) |
protected void |
addIpv6PsNatMissEntryNonNaptSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
Long routerId,
String routerName,
BigInteger primarySwitchId) |
protected void |
addIpv6SnatMissEntryForNaptSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
Long routerId,
BigInteger routerMetadata) |
protected void |
addIpv6TerminatingServiceTblEntry(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
Long routerId,
BigInteger routerMetadata) |
boolean |
addSnat(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId,
BigInteger dpnId)
Adds snat flows for the dpnId.
|
boolean |
addSnatAllSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId)
Adds snat flows for all dpns having ports on the router subnet.
|
protected long |
createGroupIdForIpv6Router(String groupIdKey) |
boolean |
handleRouterUpdate(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers origRouter,
Routers updatedRouter)
Handles changes to external router.
|
void |
init() |
boolean |
removeCentralizedRouter(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId,
BigInteger dpnId)
Removes flows for centralized switch for the dpnId.
|
boolean |
removeCentralizedRouterAllSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId)
Removes flows for centralized switch for all dpns having ports on the router subnet.
|
protected void |
removeIpv6DefaultFibRoute(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
Long routerId) |
protected void |
removeIpv6NaptPfibInboundFlow(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
long routerId) |
protected void |
removeIpv6PsNatMissEntryNonNaptSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
Long routerId,
String routerName,
BigInteger primarySwitchId) |
protected void |
removeIpv6SnatMissEntryForNaptSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
Long routerId) |
protected void |
removeIpv6TerminatingServiceTblEntry(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
Long routerId) |
boolean |
removeSnat(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId,
BigInteger dpnId)
Removes snat flows for the dpnId.
|
boolean |
removeSnatAllSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId)
Removes snat flows for all dpns having ports on the router subnet.
|
protected boolean |
routerHasIpv6ExtSubnet(Routers routers) |
protected final org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker
protected final org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager mdsalManager
protected final org.opendaylight.yang.gen.v1.urn.opendaylight.genius.idmanager.rev160406.IdManagerService idManager
protected final NAPTSwitchSelector naptSwitchSelector
protected final org.opendaylight.yang.gen.v1.urn.opendaylight.genius.itm.rpcs.rev160406.ItmRpcService itmManager
protected final org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rpcs.rev160406.OdlInterfaceRpcService odlInterfaceRpcService
protected final org.opendaylight.genius.interfacemanager.interfaces.IInterfaceManager interfaceManager
protected final Ipv6SubnetFlowProgrammer ipv6SubnetFlowProgrammer
public Ipv6ForwardingService(org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker,
org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager mdsalManager,
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,
org.opendaylight.genius.interfacemanager.interfaces.IInterfaceManager interfaceManager,
Ipv6SubnetFlowProgrammer ipv6SubnetFlowProgrammer)
public void init()
public boolean addCentralizedRouterAllSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId)
SnatServiceListeneraddCentralizedRouterAllSwitch in interface SnatServiceListenerconfTx - The transaction to use.routers - the router.primarySwitchId - the primaryswitchId.public boolean addCentralizedRouter(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId,
BigInteger dpnId)
SnatServiceListeneraddCentralizedRouter in interface SnatServiceListenerconfTx - The transaction to use.routers - the router.primarySwitchId - the primaryswitchId.dpnId - the dpnId for which the flows needs to be added.public boolean removeCentralizedRouterAllSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId)
throws ExecutionException,
InterruptedException
SnatServiceListenerremoveCentralizedRouterAllSwitch in interface SnatServiceListenerconfTx - The transaction to use.routers - the router.primarySwitchId - the primaryswitchId.ExecutionExceptionInterruptedExceptionpublic boolean removeCentralizedRouter(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId,
BigInteger dpnId)
throws ExecutionException,
InterruptedException
SnatServiceListenerremoveCentralizedRouter in interface SnatServiceListenerconfTx - The transaction to use.routers - the router.primarySwitchId - the primaryswitchId.dpnId - the dpnId for which the flows needs to be removed.ExecutionExceptionInterruptedExceptionpublic boolean handleRouterUpdate(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers origRouter,
Routers updatedRouter)
throws ExecutionException,
InterruptedException
SnatServiceListenerhandleRouterUpdate in interface SnatServiceListenerorigRouter - the Orignal router.updatedRouter - the Updated router.ExecutionExceptionInterruptedExceptionpublic boolean addSnatAllSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId)
SnatServiceListeneraddSnatAllSwitch in interface SnatServiceListenerconfTx - The transaction to use.routers - the router.primarySwitchId - the primaryswitchIdpublic boolean addSnat(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId,
BigInteger dpnId)
SnatServiceListeneraddSnat in interface SnatServiceListenerconfTx - The transaction to use.routers - the router.primarySwitchId - the primaryswitchId.dpnId - the dpnId for which the flows needs to be added.public boolean removeSnatAllSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId)
throws ExecutionException,
InterruptedException
SnatServiceListenerremoveSnatAllSwitch in interface SnatServiceListenerconfTx - The transaction to use.routers - the router.primarySwitchId - the primaryswitchIdExecutionExceptionInterruptedExceptionpublic boolean removeSnat(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId,
BigInteger dpnId)
throws ExecutionException,
InterruptedException
SnatServiceListenerremoveSnat in interface SnatServiceListenerconfTx - The transaction to use.routers - the router.primarySwitchId - the primaryswitchId.dpnId - the dpnId for which the flows needs to be removed.ExecutionExceptionInterruptedExceptionprotected void addIpv6DefaultFibRoute(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
Long routerId,
BigInteger routerMetadata)
protected void removeIpv6DefaultFibRoute(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
Long routerId)
throws ExecutionException,
InterruptedException
protected void addIpv6PsNatMissEntryNonNaptSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
Long routerId,
String routerName,
BigInteger primarySwitchId)
protected void removeIpv6PsNatMissEntryNonNaptSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
Long routerId,
String routerName,
BigInteger primarySwitchId)
throws ExecutionException,
InterruptedException
protected void addIpv6SnatMissEntryForNaptSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
Long routerId,
BigInteger routerMetadata)
protected void removeIpv6SnatMissEntryForNaptSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
Long routerId)
throws ExecutionException,
InterruptedException
protected void addIpv6TerminatingServiceTblEntry(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
Long routerId,
BigInteger routerMetadata)
protected void removeIpv6TerminatingServiceTblEntry(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
Long routerId)
throws ExecutionException,
InterruptedException
protected void addIpv6NaptPfibInboundFlow(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
long routerId,
BigInteger routerMetadata)
protected void removeIpv6NaptPfibInboundFlow(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
long routerId)
throws ExecutionException,
InterruptedException
protected long createGroupIdForIpv6Router(String groupIdKey)
protected boolean routerHasIpv6ExtSubnet(Routers routers)
Copyright © 2019 OpenDaylight. All rights reserved.