Class IfmUtil
- java.lang.Object
-
- org.opendaylight.genius.interfacemanager.IfmUtil
-
public final class IfmUtil extends java.lang.Object
-
-
Method Summary
All Methods Static Methods Concrete Methods Deprecated Methods Modifier and Type Method Description static voidaddEgressActionInfosForInterface(int ifIndex, int actionKeyStart, java.util.List<ActionInfo> result)static java.lang.IntegerallocateId(IdManagerService idManager, java.lang.String poolName, java.lang.String idKey)static voidbindService(TypedWriteTransaction<Datastore.Configuration> tx, java.lang.String interfaceName, BoundServices serviceInfo, java.lang.Class<? extends ServiceModeBase> serviceMode)static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<BoundServices>buildBoundServicesIId(short servicePriority, java.lang.String interfaceName, java.lang.Class<? extends ServiceModeBase> serviceMode)static org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeIdbuildDpnNodeId(org.opendaylight.yangtools.yang.common.Uint64 dpnId)static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface>buildId(java.lang.String interfaceName)static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.state.Interface>buildStateInterfaceId(java.lang.String interfaceName)static org.opendaylight.yangtools.yang.common.Uint64fillPortNumberToMac(long portNumber)static java.lang.StringgenerateMacAddress(long portNo)static org.opendaylight.yangtools.yang.common.Uint64getDeadBeefBytesForMac()static org.opendaylight.yangtools.yang.common.Uint64getDpnFromInterface(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.state.Interface ifState)static org.opendaylight.yangtools.yang.common.Uint64getDpnFromNodeConnectorId(org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeConnectorId portId)static org.opendaylight.yangtools.yang.common.Uint64getDpnId(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.DatapathId datapathId)static java.lang.StringgetDpnStringFromNodeConnectorId(org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeConnectorId portId)static java.util.List<ActionInfo>getEgressActionInfosForInterface(java.lang.String interfaceName, int actionKeyStart, InterfaceManagerCommonUtils interfaceUtils, java.lang.Boolean isDefaultEgress)static java.util.List<ActionInfo>getEgressActionInfosForInterface(java.lang.String interfaceName, java.lang.Long tunnelKey, int actionKeyStart, InterfaceManagerCommonUtils interfaceUtils, java.lang.Boolean isDefaultEgress)Returns a list of Actions to be taken when sending a packet over an interface.static java.util.List<ActionInfo>getEgressActionInfosForInterface(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface interfaceInfo, java.lang.String portNo, InterfaceInfo.InterfaceType ifaceType, java.lang.Long tunnelKey, int actionKeyStart, boolean isDefaultEgress, int ifIndex, long groupId)Returns the list of egress actions for a given interface.static java.util.List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action>getEgressActionsForInterface(java.lang.String interfaceName, java.lang.Long tunnelKey, java.lang.Integer actionKey, InterfaceManagerCommonUtils interfaceUtils, java.lang.Boolean isDefaultEgress)static java.util.List<org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.Instruction>getEgressInstructionsForInterface(java.lang.String interfaceName, java.lang.Long tunnelKey, InterfaceManagerCommonUtils interfaceUtils, java.lang.Boolean isDefaultEgress)static java.util.List<org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.Instruction>getEgressInstructionsForInterface(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface interfaceInfo, java.lang.String portNo, java.lang.Long tunnelKey, boolean isDefaultEgress, int ifIndex, long groupId)static longgetGroupId(int ifIndex, InterfaceInfo.InterfaceType infType)static InterfaceInfo.InterfaceTypegetInterfaceType(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface iface)static longgetLogicalTunnelSelectGroupId(int lportTag)static org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeConnectorIdgetNodeConnectorIdFromInterface(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.state.Interface ifState)static org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeIdgetNodeIdFromNodeConnectorId(org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeConnectorId ncId)static org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.PhysAddressgetPhyAddress(long portNo, org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowCapableNodeConnector flowCapableNodeConnector)static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<IdPool>getPoolId(java.lang.String poolName)static java.lang.StringgetPortNoFromNodeConnectorId(org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeConnectorId portId)static java.lang.LonggetPortNumberFromNodeConnectorId(org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeConnectorId portId)static org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.state.InterfaceKeygetStateInterfaceKeyFromName(java.lang.String name)static VlanInterfaceInfogetVlanInterfaceInfo(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface iface, org.opendaylight.yangtools.yang.common.Uint64 dpId)static org.opendaylight.yangtools.yang.common.Uint64[]mergeOpenflowMetadataWriteInstructions(java.util.Map<org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.InstructionKey,org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.Instruction> instructions)static <T extends org.opendaylight.yangtools.yang.binding.DataObject>
java.util.Optional<T>read(org.opendaylight.mdsal.common.api.LogicalDatastoreType datastoreType, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<T> path, org.opendaylight.mdsal.binding.api.DataBroker broker)Deprecated.static voidreleaseId(IdManagerService idManager, java.lang.String poolName, java.lang.String idKey)static voidunbindService(ManagedNewTransactionRunner txRunner, org.opendaylight.infrautils.jobcoordinator.JobCoordinator coordinator, java.lang.String interfaceName, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<BoundServices> boundServicesInstanceIdentifier)static voidunbindService(TypedWriteTransaction<Datastore.Configuration> tx, java.lang.String interfaceName, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<BoundServices> boundServicesInstanceIdentifier)static voidupdateInterfaceParentRef(TypedWriteTransaction<Datastore.Configuration> tx, java.lang.String interfaceName, java.lang.String parentInterface)
-
-
-
Method Detail
-
getDpnFromNodeConnectorId
public static org.opendaylight.yangtools.yang.common.Uint64 getDpnFromNodeConnectorId(org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeConnectorId portId)
-
getDpnStringFromNodeConnectorId
public static java.lang.String getDpnStringFromNodeConnectorId(org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeConnectorId portId)
-
getDpnFromInterface
public static org.opendaylight.yangtools.yang.common.Uint64 getDpnFromInterface(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.state.Interface ifState)
-
getPortNoFromNodeConnectorId
public static java.lang.String getPortNoFromNodeConnectorId(org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeConnectorId portId)
-
getPortNumberFromNodeConnectorId
public static java.lang.Long getPortNumberFromNodeConnectorId(org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeConnectorId portId)
-
buildDpnNodeId
public static org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId buildDpnNodeId(org.opendaylight.yangtools.yang.common.Uint64 dpnId)
-
buildId
public static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface> buildId(java.lang.String interfaceName)
-
buildStateInterfaceId
public static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.state.Interface> buildStateInterfaceId(java.lang.String interfaceName)
-
getStateInterfaceKeyFromName
public static org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.state.InterfaceKey getStateInterfaceKeyFromName(java.lang.String name)
-
getPoolId
public static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<IdPool> getPoolId(java.lang.String poolName)
-
getGroupId
public static long getGroupId(int ifIndex, InterfaceInfo.InterfaceType infType)
-
read
@Deprecated public static <T extends org.opendaylight.yangtools.yang.binding.DataObject> java.util.Optional<T> read(org.opendaylight.mdsal.common.api.LogicalDatastoreType datastoreType, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<T> path, org.opendaylight.mdsal.binding.api.DataBroker broker)Deprecated.Synchronous blocking read from data store.
-
getEgressActionsForInterface
public static java.util.List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action> getEgressActionsForInterface(java.lang.String interfaceName, java.lang.Long tunnelKey, java.lang.Integer actionKey, InterfaceManagerCommonUtils interfaceUtils, java.lang.Boolean isDefaultEgress)
-
getEgressInstructionsForInterface
public static java.util.List<org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.Instruction> getEgressInstructionsForInterface(java.lang.String interfaceName, java.lang.Long tunnelKey, InterfaceManagerCommonUtils interfaceUtils, java.lang.Boolean isDefaultEgress)
-
getEgressInstructionsForInterface
public static java.util.List<org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.Instruction> getEgressInstructionsForInterface(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface interfaceInfo, java.lang.String portNo, java.lang.Long tunnelKey, boolean isDefaultEgress, int ifIndex, long groupId)
-
getEgressActionInfosForInterface
public static java.util.List<ActionInfo> getEgressActionInfosForInterface(java.lang.String interfaceName, int actionKeyStart, InterfaceManagerCommonUtils interfaceUtils, java.lang.Boolean isDefaultEgress)
-
getEgressActionInfosForInterface
public static java.util.List<ActionInfo> getEgressActionInfosForInterface(java.lang.String interfaceName, java.lang.Long tunnelKey, int actionKeyStart, InterfaceManagerCommonUtils interfaceUtils, java.lang.Boolean isDefaultEgress)
Returns a list of Actions to be taken when sending a packet over an interface.- Parameters:
interfaceName- name of the interfacetunnelKey- Optional.actionKeyStart- action keyinterfaceUtils- InterfaceManagerCommonUtils- Returns:
- list of actions
-
getEgressActionInfosForInterface
public static java.util.List<ActionInfo> getEgressActionInfosForInterface(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface interfaceInfo, java.lang.String portNo, InterfaceInfo.InterfaceType ifaceType, java.lang.Long tunnelKey, int actionKeyStart, boolean isDefaultEgress, int ifIndex, long groupId)
Returns the list of egress actions for a given interface.- Parameters:
interfaceInfo- the interface to look upportNo- port numberifaceType- the type of the interfacetunnelKey- the tunnel keyactionKeyStart- the start for the first key assigned for the new actionsisDefaultEgress- if it is the default egressifIndex- interface indexgroupId- group Id- Returns:
- list of actions for the interface
-
addEgressActionInfosForInterface
public static void addEgressActionInfosForInterface(int ifIndex, int actionKeyStart, java.util.List<ActionInfo> result)
-
getNodeIdFromNodeConnectorId
public static org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId getNodeIdFromNodeConnectorId(org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeConnectorId ncId)
-
mergeOpenflowMetadataWriteInstructions
public static org.opendaylight.yangtools.yang.common.Uint64[] mergeOpenflowMetadataWriteInstructions(java.util.Map<org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.InstructionKey,org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.Instruction> instructions)
-
allocateId
public static java.lang.Integer allocateId(IdManagerService idManager, java.lang.String poolName, java.lang.String idKey)
-
releaseId
public static void releaseId(IdManagerService idManager, java.lang.String poolName, java.lang.String idKey)
-
getDpnId
public static org.opendaylight.yangtools.yang.common.Uint64 getDpnId(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.DatapathId datapathId)
-
getNodeConnectorIdFromInterface
public static org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeConnectorId getNodeConnectorIdFromInterface(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.state.Interface ifState)
-
getInterfaceType
public static InterfaceInfo.InterfaceType getInterfaceType(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface iface)
-
getVlanInterfaceInfo
public static VlanInterfaceInfo getVlanInterfaceInfo(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface iface, org.opendaylight.yangtools.yang.common.Uint64 dpId)
-
getDeadBeefBytesForMac
public static org.opendaylight.yangtools.yang.common.Uint64 getDeadBeefBytesForMac()
-
fillPortNumberToMac
public static org.opendaylight.yangtools.yang.common.Uint64 fillPortNumberToMac(long portNumber)
-
generateMacAddress
public static java.lang.String generateMacAddress(long portNo)
-
getPhyAddress
public static org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.PhysAddress getPhyAddress(long portNo, org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowCapableNodeConnector flowCapableNodeConnector)
-
updateInterfaceParentRef
public static void updateInterfaceParentRef(TypedWriteTransaction<Datastore.Configuration> tx, java.lang.String interfaceName, java.lang.String parentInterface)
-
buildBoundServicesIId
public static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<BoundServices> buildBoundServicesIId(short servicePriority, java.lang.String interfaceName, java.lang.Class<? extends ServiceModeBase> serviceMode)
-
bindService
public static void bindService(TypedWriteTransaction<Datastore.Configuration> tx, java.lang.String interfaceName, BoundServices serviceInfo, java.lang.Class<? extends ServiceModeBase> serviceMode)
-
unbindService
public static void unbindService(ManagedNewTransactionRunner txRunner, org.opendaylight.infrautils.jobcoordinator.JobCoordinator coordinator, java.lang.String interfaceName, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<BoundServices> boundServicesInstanceIdentifier)
-
unbindService
public static void unbindService(TypedWriteTransaction<Datastore.Configuration> tx, java.lang.String interfaceName, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<BoundServices> boundServicesInstanceIdentifier)
-
getLogicalTunnelSelectGroupId
public static long getLogicalTunnelSelectGroupId(int lportTag)
-
-