Class SouthboundUtils

java.lang.Object
org.opendaylight.ovsdb.utils.southbound.utils.SouthboundUtils

public class SouthboundUtils extends Object
  • Field Details

    • OVSDB_TOPOLOGY_ID

      public static final org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.TopologyId OVSDB_TOPOLOGY_ID
    • OPENFLOW_CONNECTION_PROTOCOL

      public static final String OPENFLOW_CONNECTION_PROTOCOL
      See Also:
    • OPENFLOW_SECURE_PROTOCOL

      public static final String OPENFLOW_SECURE_PROTOCOL
      See Also:
    • OPENFLOW_PORT

      public static final short OPENFLOW_PORT
      See Also:
    • OVSDB_URI_PREFIX

      public static final String OVSDB_URI_PREFIX
      See Also:
    • BRIDGE_URI_PREFIX

      public static final String BRIDGE_URI_PREFIX
      See Also:
    • OVSDB_INTERFACE_TYPE_MAP

      public static final com.google.common.collect.ImmutableBiMap<String,InterfaceTypeBase> OVSDB_INTERFACE_TYPE_MAP
    • OVSDB_PROTOCOL_MAP

      public static final com.google.common.collect.ImmutableBiMap<OvsdbBridgeProtocolBase,String> OVSDB_PROTOCOL_MAP
  • Constructor Details

    • SouthboundUtils

      public SouthboundUtils(MdsalUtils mdsalUtils)
  • Method Details

    • createNodeId

      public static org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId createNodeId(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress ip, org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.PortNumber port)
    • createNode

      public static org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node createNode(ConnectionInfo key)
    • createOvsdbAugmentation

      public static OvsdbNodeAugmentation createOvsdbAugmentation(ConnectionInfo key)
    • createInstanceIdentifier

      public static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node> createInstanceIdentifier(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId nodeId)
    • createInstanceIdentifier

      public static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node> createInstanceIdentifier(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.NodeKey ovsdbNodeKey, String bridgeName)
    • createInstanceIdentifier

      public static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node> createInstanceIdentifier(ConnectionInfo key)
    • createInstanceIdentifier

      public static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node> createInstanceIdentifier(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress ip, org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.PortNumber port)
    • createInstanceIdentifier

      public static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node> createInstanceIdentifier(ConnectionInfo key, OvsdbBridgeName bridgeName)
    • createInstanceIdentifier

      public static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node> createInstanceIdentifier(ConnectionInfo key, String bridgeName)
    • createTerminationPointInstanceIdentifier

      public org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.node.TerminationPoint> createTerminationPointInstanceIdentifier(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node node, String portName)
    • createNodeKey

      public static org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.NodeKey createNodeKey(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress ip, org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.PortNumber port)
    • createManagedNodeId

      public static org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId createManagedNodeId(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId ovsdbNodeId, String bridgeName)
    • createManagedNodeId

      public static org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId createManagedNodeId(ConnectionInfo key, OvsdbBridgeName bridgeName)
    • createManagedNodeId

      public static org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId createManagedNodeId(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress ip, org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.PortNumber port, OvsdbBridgeName bridgeName)
    • createManagedNodeId

      public static org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId createManagedNodeId(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node> iid)
    • extractOvsdbNode

      public OvsdbNodeAugmentation extractOvsdbNode(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node node)
    • createIpAddress

      public static org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress createIpAddress(InetAddress address)
    • createIpAddress

      public static org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress createIpAddress(Inet4Address address)
    • createIpAddress

      public static org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress createIpAddress(Inet6Address address)
    • getConnectionInfo

      public ConnectionInfo getConnectionInfo(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node ovsdbNode)
    • getConnectionInfo

      public static ConnectionInfo getConnectionInfo(String addressStr, String portStr)
    • connectionInfoToString

      public static String connectionInfoToString(ConnectionInfo connectionInfo)
    • addOvsdbNode

      public boolean addOvsdbNode(ConnectionInfo connectionInfo)
    • addOvsdbNode

      public boolean addOvsdbNode(ConnectionInfo connectionInfo, long timeout)
    • getOvsdbNode

      public org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node getOvsdbNode(ConnectionInfo connectionInfo)
    • deleteOvsdbNode

      public boolean deleteOvsdbNode(ConnectionInfo connectionInfo)
    • deleteOvsdbNode

      public boolean deleteOvsdbNode(ConnectionInfo connectionInfo, long timeout)
    • connectOvsdbNode

      public org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node connectOvsdbNode(ConnectionInfo connectionInfo)
    • connectOvsdbNode

      public org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node connectOvsdbNode(ConnectionInfo connectionInfo, long timeout)
    • disconnectOvsdbNode

      public boolean disconnectOvsdbNode(ConnectionInfo connectionInfo)
    • disconnectOvsdbNode

      public boolean disconnectOvsdbNode(ConnectionInfo connectionInfo, long timeout)
    • createControllerEntry

      public List<ControllerEntry> createControllerEntry(String controllerTarget)
    • getBridge

      public OvsdbBridgeAugmentation getBridge(ConnectionInfo connectionInfo, String bridgeName, org.opendaylight.mdsal.common.api.LogicalDatastoreType store)
      Extract the store type data store contents for the particular bridge identified by bridgeName.
      Parameters:
      connectionInfo - address for the node
      bridgeName - name of the bridge
      store - defined by the LogicalDatastoreType enumeration
      Returns:
      store type data store contents
    • getBridge

      public OvsdbBridgeAugmentation getBridge(ConnectionInfo connectionInfo, String bridgeName)
      Extract the LogicalDataStoreType.OPERATIONAL type data store contents for the particular bridge identified by bridgeName.
      Parameters:
      connectionInfo - address for the node
      bridgeName - name of the bridge
      Returns:
      LogicalDatastoreType.OPERATIONAL type data store contents
      See Also:
      • NetvirtIT.getBridge(ConnectionInfo, String, LogicalDatastoreType)
    • getBridgeNode

      public org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node getBridgeNode(ConnectionInfo connectionInfo, String bridgeName, org.opendaylight.mdsal.common.api.LogicalDatastoreType store)
      Extract the node contents from store type data store for the bridge identified by bridgeName.
      Parameters:
      connectionInfo - address for the node
      bridgeName - name of the bridge
      store - defined by the LogicalDatastoreType enumeration
      Returns:
      store type data store contents
    • getBridgeNode

      public org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node getBridgeNode(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node node, String bridgeName)
    • readBridgeNode

      public org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node readBridgeNode(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node node, String name)
    • extractNodeAugmentation

      public OvsdbNodeAugmentation extractNodeAugmentation(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node node)
    • extractBridgeAugmentation

      public OvsdbBridgeAugmentation extractBridgeAugmentation(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node node)
    • readOvsdbNode

      public org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node readOvsdbNode(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node bridgeNode)
    • deleteBridge

      public boolean deleteBridge(ConnectionInfo connectionInfo, String bridgeName)
    • deleteBridge

      public boolean deleteBridge(ConnectionInfo connectionInfo, String bridgeName, long timeout)
    • createMdsalProtocols

      public Map<ProtocolEntryKey,ProtocolEntry> createMdsalProtocols()
    • addBridge

      public boolean addBridge(ConnectionInfo connectionInfo, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node> bridgeIid, String bridgeName, org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId bridgeNodeId, boolean setProtocolEntries, OvsdbFailModeBase failMode, boolean setManagedBy, DatapathTypeBase dpType, Map<BridgeExternalIdsKey,BridgeExternalIds> externalIds, Map<ControllerEntryKey,ControllerEntry> controllerEntries, Map<BridgeOtherConfigsKey,BridgeOtherConfigs> otherConfigs, String dpid, long timeout) throws InterruptedException
      Throws:
      InterruptedException
    • addBridge

      public boolean addBridge(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node ovsdbNode, String bridgeName, List<String> controllersStr, DatapathTypeBase dpType, String mac)
    • addBridge

      public boolean addBridge(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node ovsdbNode, String bridgeName, List<String> controllersStr, DatapathTypeBase dpType, String mac, Long maxBackoff, Long inactivityProbe)
    • addBridge

      public boolean addBridge(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node ovsdbNode, String bridgeName, List<String> controllersStr, DatapathTypeBase dpType, List<BridgeOtherConfigs> otherConfigs, org.opendaylight.yangtools.yang.common.Uint32 maxBackoff, org.opendaylight.yangtools.yang.common.Uint32 inactivityProbe)
    • setBridgeController

      public boolean setBridgeController(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node ovsdbNode, String bridgeName, List<String> controllers)
      Set the controllers of an existing bridge node.
      Parameters:
      ovsdbNode - where the bridge is
      bridgeName - Name of the bridge
      controllers - controller strings
      Returns:
      success if the write to md-sal was successful
    • setBridgeController

      public boolean setBridgeController(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node ovsdbNode, String bridgeName, List<String> controllers, org.opendaylight.yangtools.yang.common.Uint32 maxBackoff, org.opendaylight.yangtools.yang.common.Uint32 inactivityProbe)
      Set the controllers of an existing bridge node.
      Parameters:
      ovsdbNode - where the bridge is
      bridgeName - Name of the bridge
      controllers - controller strings
      maxBackoff - Max backoff in milliseconds
      inactivityProbe - inactivity probe in milliseconds
      Returns:
      success if the write to md-sal was successful
    • addTerminationPoint

      public boolean addTerminationPoint(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node bridgeNode, String portName, String type, Map<String,String> options, Map<String,String> externalIds)
    • addTerminationPoint

      public boolean addTerminationPoint(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node bridgeNode, String portName, String type, Map<String,String> options, Map<String,String> externalIds, org.opendaylight.yangtools.yang.common.Uint32 ofPort)
    • addTerminationPoint

      public Boolean addTerminationPoint(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node bridgeNode, String portName, String type)
    • addTerminationPoint

      public Boolean addTerminationPoint(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node bridgeNode, String bridgeName, String portName, String type, Map<String,String> options)
    • addTerminationPoint

      public Boolean addTerminationPoint(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node bridgeNode, String bridgeName, String portName, String type)
    • addPatchTerminationPoint

      public Boolean addPatchTerminationPoint(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node node, String bridgeName, String portName, String peerPortName)
    • getControllersFromOvsdbNode

      public List<String> getControllersFromOvsdbNode(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node node)
    • getDataPathId

      public long getDataPathId(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node node)
    • getDataPathIdStr

      public String getDataPathIdStr(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node node)
    • getDatapathId

      public String getDatapathId(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node node)
    • getDatapathId

      public String getDatapathId(OvsdbBridgeAugmentation ovsdbBridgeAugmentation)
    • extractBridgeName

      public String extractBridgeName(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node node)
    • isBridgeOnOvsdbNode

      public boolean isBridgeOnOvsdbNode(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node ovsdbNode, String bridgeName)
    • getBridgeFromConfig

      public OvsdbBridgeAugmentation getBridgeFromConfig(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node node, String bridge)
    • isOvsdbNodeDpdk

      public boolean isOvsdbNodeDpdk(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node ovsdbNode)
    • extractTerminationPointAugmentation

      public OvsdbTerminationPointAugmentation extractTerminationPointAugmentation(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node bridgeNode, String portName)
    • extractTerminationPointAugmentations

      public List<OvsdbTerminationPointAugmentation> extractTerminationPointAugmentations(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node node)
    • getTerminationPointOfBridge

      public OvsdbTerminationPointAugmentation getTerminationPointOfBridge(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node node, String portName)
      Extract the OvsdbTerminationPointAugmentation for the particular node identified by portName.
    • readTerminationPointAugmentations

      public List<OvsdbTerminationPointAugmentation> readTerminationPointAugmentations(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node node)
      Read the list of OvsdbTerminationPointAugmentation for the particular node.
    • getOvsdbNodes

      public Map<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.NodeKey,org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node> getOvsdbNodes()
      Get all OVSDB nodes from topology.
      Returns:
      a list of nodes or null if the topology could not found
    • getOpenvswitchOtherConfig

      public String getOpenvswitchOtherConfig(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node node, String key)
      Get OpenvSwitch other-config by key.
      Parameters:
      node - OVSDB node
      key - key to extract from other-config
      Returns:
      the value for key or null if key not found
    • getTerminationPointByExternalId

      public static org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.node.TerminationPoint getTerminationPointByExternalId(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node bridgeNode, String interfaceName)
    • getNodeByTerminationPointExternalId

      public org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node getNodeByTerminationPointExternalId(String interfaceName)
    • getExternalInterfaceIdValue

      public static String getExternalInterfaceIdValue(OvsdbTerminationPointAugmentation ovsdbTp)
    • getDatapathIdFromNodeInstanceId

      public String getDatapathIdFromNodeInstanceId(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node> nodeInstanceId)
    • compareDbVersionToMinVersion

      public static boolean compareDbVersionToMinVersion(String dbVersion, String minVersion)