base interface-type-base;
}
+ identity interface-type-dpdkvhostuser {
+ description "Interface type for dpdkvhostuser interfaces";
+ base interface-type-base;
+ }
+
grouping ovsdb-port-interface-attributes {
leaf port-uuid {
description "The unique identifier of the OVSDB port";
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.InterfaceTypeDpdk;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.InterfaceTypeDpdkr;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.InterfaceTypeDpdkvhost;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.InterfaceTypeDpdkvhostuser;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbBridgeProtocolBase;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbBridgeProtocolOpenflow10;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbBridgeProtocolOpenflow11;
.put("dpdk", InterfaceTypeDpdk.class)
.put("dpdkr", InterfaceTypeDpdkr.class)
.put("dpdkvhost", InterfaceTypeDpdkvhost.class)
+ .put("dpdkvhostuser", InterfaceTypeDpdkvhostuser.class)
.build();
public static final ImmutableBiMap<Class<? extends DatapathTypeBase>,String> DATAPATH_TYPE_MAP
if (controllerEntries != null && !controllerEntries.isEmpty()) {
int index = 0;
for (ControllerEntry controllerEntry : controllerEntries) {
- String controllerNamedUUID = "Controller_" + omn.getBridgeName().getValue() + index++;
+ String controllerNamedUUID = "Controller_" + getRandomUUID();
Controller controller = TyperUtils.getTypedRowWrapper(dbSchema, Controller.class);
controller.setTarget(controllerEntry.getTarget().getValue());
controllerMap.put(new UUID(controllerNamedUUID), controller);
}
return controllerMap;
}
+
+ public static String getRandomUUID() {
+ return java.util.UUID.randomUUID().toString().replace("-", "");
+ }
}
ovsdbManagedNode.getBridgeUuid());
// Named UUIDs
- String bridgeNamedUuid = "Bridge_" + ovsdbManagedNode.getBridgeName().getValue();
- String interfaceNamedUuid = "Interface_" + ovsdbManagedNode.getBridgeName().getValue();
- String portNamedUuid = "Port_" + ovsdbManagedNode.getBridgeName().getValue();
+ String bridgeNamedUuid = "Bridge_" + SouthboundMapper.getRandomUUID();
+ String interfaceNamedUuid = "Interface_" + SouthboundMapper.getRandomUUID();
+ String portNamedUuid = "Port_" + SouthboundMapper.getRandomUUID();
// Interface part
Interface interfaceOvs = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), Interface.class);
import org.opendaylight.ovsdb.schema.openvswitch.Bridge;
import org.opendaylight.ovsdb.southbound.OvsdbClientKey;
import org.opendaylight.ovsdb.southbound.SouthboundMapper;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbBridgeName;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbBridgeRef;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbNodeAugmentation;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.node.attributes.ManagedNodeEntry;
getUpdates(), getDbSchema()).values();
for (Bridge bridge : removedRows) {
InstanceIdentifier<Node> bridgeIid = SouthboundMapper.createInstanceIdentifier(getKey(),
- new OvsdbBridgeName(bridge.getName()));
+ bridge);
InstanceIdentifier<ManagedNodeEntry> mnIid = SouthboundMapper.createInstanceIdentifier(getKey())
.augmentation(OvsdbNodeAugmentation.class)
.child(ManagedNodeEntry.class, new ManagedNodeEntryKey(new OvsdbBridgeRef(bridgeIid)));
if (itr.next() != null) {
int id = itr.next().intValue();
ovsdbTerminationPointBuilder.setVlanTag(new VlanId(id));
+ // TODO: re-visit this iteration when expecting more than 1 vlan tag
+ // per ovsdb termination point.
+ break;
}
}
Column<GenericTableSchema, Set<UUID>> iface = port.getInterfacesColumn();