private void stampInstanceIdentifier(TransactionBuilder transaction,InstanceIdentifier<Node> iid) { OpenVSwitch ovs = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), OpenVSwitch.class); ovs.setExternalIds(Collections.<String,String>emptyMap()); TransactUtils.stampInstanceIdentifier(transaction, iid, ovs.getSchema(), ovs.getExternalIdsColumn().getSchema()); } }
private void stampInstanceIdentifier(TransactionBuilder transaction,InstanceIdentifier<Node> iid) { OpenVSwitch ovs = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), OpenVSwitch.class); ovs.setExternalIds(Collections.<String,String>emptyMap()); TransactUtils.stampInstanceIdentifier(transaction, iid, ovs.getSchema(), ovs.getExternalIdsColumn().getSchema()); }
private void execute(TransactionBuilder transaction) { Bridge bridge = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), Bridge.class); List<Insert> inserts = TransactUtils.extractInsert(transaction, bridge.getSchema()); for (Insert insert : inserts) { OpenVSwitch ovs = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), OpenVSwitch.class); ovs.setBridges(Sets.newHashSet(TransactUtils.extractNamedUuid(insert))); transaction.add(op.mutate(ovs).addMutation(ovs.getBridgesColumn().getSchema(), Mutator.INSERT, ovs.getBridgesColumn().getData())); } } }
private void execute(TransactionBuilder transaction, BridgeOperationalState state, Set<InstanceIdentifier<ControllerEntry>> removedControllers, Map<InstanceIdentifier<OvsdbBridgeAugmentation>, OvsdbBridgeAugmentation> modifiedBridges) { for (InstanceIdentifier<ControllerEntry> controllerIid : removedControllers) { LOG.debug("Removing Registered...ODL controller : {} ", controllerIid); InstanceIdentifier<OvsdbBridgeAugmentation> bridgeIid = controllerIid.firstIdentifierOf(OvsdbBridgeAugmentation.class); OvsdbBridgeAugmentation ovsdbBridge = modifiedBridges.get(bridgeIid); Optional<ControllerEntry> controllerEntryOptional = state.getControllerEntry(controllerIid); if (ovsdbBridge != null && controllerEntryOptional.isPresent()) { ControllerEntry controllerEntry = controllerEntryOptional.get(); Bridge bridge = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), Bridge.class); bridge.setController(Sets.newHashSet(new UUID(controllerEntry.getControllerUuid().getValue()))); transaction.add(op.mutate(bridge).addMutation(bridge.getControllerColumn().getSchema(), Mutator.DELETE, bridge.getControllerColumn().getData())); } } }
private void setPort(TransactionBuilder transaction, Bridge bridge, OvsdbBridgeAugmentation ovsdbManagedNode) { Insert<GenericTableSchema> interfaceInsert = setInterface(transaction,ovsdbManagedNode); // Port part String portNamedUuid = "Port_" + SouthboundMapper.getRandomUuid(); Port port = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), Port.class); port.setName(ovsdbManagedNode.getBridgeName().getValue()); port.setInterfaces(Sets.newHashSet(TransactUtils.extractNamedUuid(interfaceInsert))); transaction.add(op.insert(port).withId(portNamedUuid)); bridge.setPorts(Sets.newHashSet(new UUID(portNamedUuid))); }
private void execute(TransactionBuilder transaction, BridgeOperationalState state, Set<InstanceIdentifier<ProtocolEntry>> removed, Map<InstanceIdentifier<OvsdbBridgeAugmentation>, OvsdbBridgeAugmentation> updatedBridges) { for (InstanceIdentifier<ProtocolEntry> protocolIid : removed) { InstanceIdentifier<OvsdbBridgeAugmentation> bridgeIid = protocolIid.firstIdentifierOf(OvsdbBridgeAugmentation.class); OvsdbBridgeAugmentation ovsdbBridge = updatedBridges.get(bridgeIid); Optional<ProtocolEntry> protocolEntryOptional = state.getProtocolEntry(protocolIid); if (ovsdbBridge != null && protocolEntryOptional.isPresent()) { ProtocolEntry protocolEntry = protocolEntryOptional.get(); if (protocolEntry != null && protocolEntry.getProtocol() != null) { Bridge bridge = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), Bridge.class); String protocolString = SouthboundConstants.OVSDB_PROTOCOL_MAP.get(protocolEntry.getProtocol()); if (protocolString != null) { bridge.setProtocols(Sets.newHashSet(protocolString)); try { transaction.add(op.mutate(bridge).addMutation(bridge.getProtocolsColumn().getSchema(), Mutator.DELETE,bridge.getProtocolsColumn().getData())); LOG.info("Removed ProtocolEntry : {} for OVSDB Bridge : {} ", protocolString, bridge.getName()); } catch (SchemaVersionMismatchException e) { schemaMismatchLog("protocols", "Bridge", e); } } } } } }
private void execute(TransactionBuilder transaction, BridgeOperationalState state, Set<InstanceIdentifier<OvsdbBridgeAugmentation>> removed, Map<InstanceIdentifier<OvsdbBridgeAugmentation>, OvsdbBridgeAugmentation> originals) { for (InstanceIdentifier<OvsdbBridgeAugmentation> ovsdbManagedNodeIid: removed) { LOG.debug("Received request to delete ovsdb node : {}", ovsdbManagedNodeIid); OvsdbBridgeAugmentation original = originals.get(ovsdbManagedNodeIid); Bridge bridge = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), Bridge.class,null); Optional<OvsdbBridgeAugmentation> ovsdbAugmentationOptional = state .getOvsdbBridgeAugmentation(ovsdbManagedNodeIid); if (ovsdbAugmentationOptional.isPresent() && ovsdbAugmentationOptional.get().getBridgeUuid() != null) { UUID bridgeUuid = new UUID(ovsdbAugmentationOptional.get().getBridgeUuid().getValue()); OpenVSwitch ovs = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), OpenVSwitch.class,null); transaction.add(op.delete(bridge.getSchema()) .where(bridge.getUuidColumn().getSchema().opEqual(bridgeUuid)).build()); transaction.add(op.comment("Bridge: Deleting " + original.getBridgeName())); transaction.add(op.mutate(ovs.getSchema()) .addMutation(ovs.getBridgesColumn().getSchema(), Mutator.DELETE, Sets.newHashSet(bridgeUuid))); transaction.add(op.comment("Open_vSwitch: Mutating " + original.getBridgeName() + " " + bridgeUuid)); LOG.info("Bridge Deleted: {}", ovsdbManagedNodeIid); } else { LOG.warn("Unable to delete bridge {} because it was not found in the operational store, " + "and thus we cannot retrieve its UUID", ovsdbManagedNodeIid); } } } }
String protocolString = SouthboundConstants.OVSDB_PROTOCOL_MAP.get(entry.getValue().getProtocol()); if (protocolString != null) { Bridge bridge = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), Bridge.class); bridge.setName(ovsdbBridge.getBridgeName().getValue()); try {
&& entry.getValue().getTarget() != null) { Controller controller = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), Controller.class); controller.setTarget(entry.getValue().getTarget().getValue()); String controllerNamedUuidString = SouthboundMapper.getRandomUuid(); transaction.add(op.insert(controller).withId(controllerNamedUuidString)); Bridge bridge = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), Bridge.class); bridge.setName(ovsdbBridge.getBridgeName().getValue()); bridge.setController(Sets.newHashSet(controllerNamedUuid));
if (queueUuid != null) { Queue queue = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), Queue.class, null); transaction.add(op.delete(queue.getSchema())
if (qosUuid != null) { Qos qos = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), Qos.class, null); transaction.add(op.delete(qos.getSchema()) .where(qos.getUuidColumn().getSchema().opEqual(new UUID(qosUuid.getValue())))
TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), Interface.class); updateInterface(terminationPoint, ovsInterface); Interface extraInterface = TyperUtils.getTypedRowWrapper( transaction.getDatabaseSchema(), Interface.class); extraInterface.setName(""); transaction.add(op.update(ovsInterface) if (operBridge != null) { Port port = TyperUtils.getTypedRowWrapper( transaction.getDatabaseSchema(), Port.class); updatePort(terminationPoint, port, operBridge); Port extraPort = TyperUtils.getTypedRowWrapper( transaction.getDatabaseSchema(), Port.class); extraPort.setName(""); transaction.add(op.update(port)
public static void stampInstanceIdentifier(TransactionBuilder transaction, InstanceIdentifier <OvsdbTerminationPointAugmentation> iid, String interfaceName) { Port port = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), Port.class); port.setName(interfaceName); port.setExternalIds(Collections.<String,String>emptyMap()); Mutate mutate = TransactUtils.stampInstanceIdentifierMutation(transaction, iid, port.getSchema(), port.getExternalIdsColumn().getSchema()); transaction.add(mutate .where(port.getNameColumn().getSchema().opEqual(interfaceName)) .build()); }
private void stampInstanceIdentifier(TransactionBuilder transaction,InstanceIdentifier<Node> iid, String bridgeName) { Bridge bridge = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), Bridge.class); bridge.setName(bridgeName); bridge.setExternalIds(Collections.<String,String>emptyMap()); Mutate mutate = TransactUtils.stampInstanceIdentifierMutation(transaction, iid, bridge.getSchema(), bridge.getExternalIdsColumn().getSchema()); transaction.add(mutate .where(bridge.getNameColumn().getSchema().opEqual(bridgeName)) .build()); }
TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), Interface.class); createInterface(terminationPoint, ovsInterface); transaction.add(op.insert(ovsInterface).withId(interfaceUuid)); Port port = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), Port.class); createPort(terminationPoint, port, interfaceUuid); transaction.add(op.insert(port).withId(portUuid)); terminationPoint.getPortUuid()); Bridge bridge = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), Bridge.class); if (getBridge(entry.getKey(), nodes) != null) { bridge.setName(getBridge(entry.getKey(), nodes).getBridgeName().getValue());
private Insert<GenericTableSchema> setInterface(TransactionBuilder transaction, OvsdbBridgeAugmentation ovsdbManagedNode) { // Interface part String interfaceNamedUuid = "Interface_" + SouthboundMapper.getRandomUuid(); Interface interfaceOvs = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), Interface.class); interfaceOvs.setName(ovsdbManagedNode.getBridgeName().getValue()); interfaceOvs.setType(SouthboundMapper.createOvsdbInterfaceType(InterfaceTypeInternal.class)); Insert<GenericTableSchema> result = op.insert(interfaceOvs).withId(interfaceNamedUuid); transaction.add(result); return result; }
ovsdbManagedNode.getBridgeName(), ovsdbManagedNode.getBridgeUuid()); Bridge bridge = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), Bridge.class); setFailMode(bridge, ovsdbManagedNode); setDataPathType(bridge, ovsdbManagedNode); String existingBridgeName = operationalBridgeOptional.get().getBridgeName().getValue(); Bridge extraBridge = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), Bridge.class); extraBridge.setName(""); transaction.add(op.update(bridge)
OpenVSwitch ovs = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), OpenVSwitch.class);
OpenVSwitch ovs = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), OpenVSwitch.class);
private void deleteAutoAttach(TransactionBuilder transaction, InstanceIdentifier<OvsdbNodeAugmentation> ovsdbNodeIid, Uuid autoattachUuid) { LOG.debug("Received request to delete Autoattach entry {}", autoattachUuid); final OvsdbBridgeAugmentation bridgeAugmentation = getBridge(ovsdbNodeIid, autoattachUuid); if (autoattachUuid != null && bridgeAugmentation != null) { final UUID uuid = new UUID(autoattachUuid.getValue()); final AutoAttach autoattach = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), AutoAttach.class, null); transaction.add(op.delete(autoattach.getSchema()) .where(autoattach.getUuidColumn().getSchema().opEqual(uuid)) .build()); transaction.add(op.comment("AutoAttach: Deleting {} " + uuid + " attached to " + bridgeAugmentation.getBridgeName().getValue())); final Bridge bridge = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), Bridge.class,null); transaction.add(op.mutate(bridge.getSchema()) .addMutation(bridge.getAutoAttachColumn().getSchema(), Mutator.DELETE, Sets.newHashSet(uuid)) .where(bridge.getNameColumn().getSchema() .opEqual(bridgeAugmentation.getBridgeName().getValue())).build()); transaction.add(op.comment("Bridge: Mutating " + bridgeAugmentation.getBridgeName().getValue() + " to remove autoattach column " + uuid)); } else { LOG.debug("Unable to delete AutoAttach {} for node {} because it was not found in the operational store, " + "and thus we cannot retrieve its UUID", autoattachUuid, ovsdbNodeIid); } }