@Singleton public final class InterVpnLinkUtil extends Object
Constructor and Description |
---|
InterVpnLinkUtil(VpnUtil vpnUtil,
VpnFootprintService vpnFootprintService,
org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker,
org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager mdsalManager,
IBgpManager bgpManager,
IFibManager fibManager) |
Modifier and Type | Method and Description |
---|---|
static FirstEndpointState |
buildFirstEndpointState(FirstEndpointState original,
com.google.common.base.Optional<List<BigInteger>> new1stEndpointDpns,
com.google.common.base.Optional<Long> new1stEndpointLportTag) |
static String |
buildInterVpnLinkIfaceName(String vpnName,
BigInteger dpnId) |
static InterVpnLinkState |
buildIvlStateFromOriginal(InterVpnLinkState original,
com.google.common.base.Optional<FirstEndpointState> new1stEndpointState,
com.google.common.base.Optional<SecondEndpointState> new2ndEndpointState,
com.google.common.base.Optional<String> errDescription)
Creates an InterVpnLinkState out of an existing one and modifying only the desired attributes.
|
static org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.table.Flow |
buildLPortDispatcherFlow(String interVpnLinkName,
long vpnId,
int lportTag)
Builds a Flow to be installed into LPortDispatcher table, that matches on
SI=2 + vpnLinkEndpointPseudoPortTag and sends to FIB.
|
static List<org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.Instruction> |
buildLportDispatcherTableInstructions(long vpnId) |
static SecondEndpointState |
buildSecondEndpointState(SecondEndpointState original,
com.google.common.base.Optional<List<BigInteger>> new2ndEndpointDpns,
com.google.common.base.Optional<Long> new2ndEndpointLportTag) |
static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<InterVpnLink> |
getInterVpnLinkPath(String interVpnLinkName)
Retrieves the Instance Identifier that points to an InterVpnLink object
in MD-SAL.
|
com.google.common.base.Optional<InterVpnLinkState> |
getInterVpnLinkState(String interVpnLinkName)
Retrieves the State of an InterVpnLink.
|
static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<InterVpnLinkState> |
getInterVpnLinkStateIid(String vpnLinkName)
Retrieves the Instance Identifier that points to an InterVpnLinkState object
in MD-SAL.
|
static String |
getLportDispatcherFlowRef(String interVpnLinkName,
Integer lportTag)
Builds a flowRef to be assigned to the flow to be installed into
LPortDispatcher table.
|
void |
handleStaticRoute(InterVpnLinkDataComposite interVpnLink,
String vpnName,
String destination,
String nexthop,
int label) |
@Inject public InterVpnLinkUtil(VpnUtil vpnUtil, VpnFootprintService vpnFootprintService, org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker, org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager mdsalManager, IBgpManager bgpManager, IFibManager fibManager)
public static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<InterVpnLink> getInterVpnLinkPath(String interVpnLinkName)
interVpnLinkName
- The name of the InterVpnLinkpublic static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<InterVpnLinkState> getInterVpnLinkStateIid(String vpnLinkName)
vpnLinkName
- The name of the InterVpnLinkpublic static String buildInterVpnLinkIfaceName(String vpnName, BigInteger dpnId)
public static FirstEndpointState buildFirstEndpointState(FirstEndpointState original, com.google.common.base.Optional<List<BigInteger>> new1stEndpointDpns, com.google.common.base.Optional<Long> new1stEndpointLportTag)
public static SecondEndpointState buildSecondEndpointState(SecondEndpointState original, com.google.common.base.Optional<List<BigInteger>> new2ndEndpointDpns, com.google.common.base.Optional<Long> new2ndEndpointLportTag)
public static InterVpnLinkState buildIvlStateFromOriginal(InterVpnLinkState original, com.google.common.base.Optional<FirstEndpointState> new1stEndpointState, com.google.common.base.Optional<SecondEndpointState> new2ndEndpointState, com.google.common.base.Optional<String> errDescription)
original
- InterVpnLinkState to start from.new1stEndpointState
- Sets this FirstEndpointState if presentnew2ndEndpointState
- Sets this SecondEndpointState if presenterrDescription
- Sets this ErrorDescription if presentpublic static org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.table.Flow buildLPortDispatcherFlow(String interVpnLinkName, long vpnId, int lportTag)
interVpnLinkName
- The name of the InterVpnLinkvpnId
- Dataplane identifier of the VPN, the Vrf Tag.lportTag
- DataPlane identifier of the LogicalPort.public static String getLportDispatcherFlowRef(String interVpnLinkName, Integer lportTag)
interVpnLinkName
- The name of the InterVpnLinklportTag
- Dataplane identifier of the LogicalPortpublic static List<org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.Instruction> buildLportDispatcherTableInstructions(long vpnId)
public com.google.common.base.Optional<InterVpnLinkState> getInterVpnLinkState(String interVpnLinkName)
interVpnLinkName
- The name of the InterVpnLinkCopyright © 2019 OpenDaylight. All rights reserved.