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)
SnatServiceListener
addCentralizedRouterAllSwitch
in interface SnatServiceListener
confTx
- 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)
SnatServiceListener
addCentralizedRouter
in interface SnatServiceListener
confTx
- 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
SnatServiceListener
removeCentralizedRouterAllSwitch
in interface SnatServiceListener
confTx
- The transaction to use.routers
- the router.primarySwitchId
- the primaryswitchId.ExecutionException
InterruptedException
public boolean removeCentralizedRouter(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, Routers routers, BigInteger primarySwitchId, BigInteger dpnId) throws ExecutionException, InterruptedException
SnatServiceListener
removeCentralizedRouter
in interface SnatServiceListener
confTx
- The transaction to use.routers
- the router.primarySwitchId
- the primaryswitchId.dpnId
- the dpnId for which the flows needs to be removed.ExecutionException
InterruptedException
public boolean handleRouterUpdate(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, Routers origRouter, Routers updatedRouter) throws ExecutionException, InterruptedException
SnatServiceListener
handleRouterUpdate
in interface SnatServiceListener
origRouter
- the Orignal router.updatedRouter
- the Updated router.ExecutionException
InterruptedException
public boolean addSnatAllSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, Routers routers, BigInteger primarySwitchId)
SnatServiceListener
addSnatAllSwitch
in interface SnatServiceListener
confTx
- 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)
SnatServiceListener
addSnat
in interface SnatServiceListener
confTx
- 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
SnatServiceListener
removeSnatAllSwitch
in interface SnatServiceListener
confTx
- The transaction to use.routers
- the router.primarySwitchId
- the primaryswitchIdExecutionException
InterruptedException
public boolean removeSnat(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, Routers routers, BigInteger primarySwitchId, BigInteger dpnId) throws ExecutionException, InterruptedException
SnatServiceListener
removeSnat
in interface SnatServiceListener
confTx
- The transaction to use.routers
- the router.primarySwitchId
- the primaryswitchId.dpnId
- the dpnId for which the flows needs to be removed.ExecutionException
InterruptedException
protected 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.