public void actionPerformed(ActionEvent e) { Component parent = UIUtils.getActionEventParentWindow(e); String name = (String) JOptionPane.showInputDialog(parent, "Name for the new workflow output?", "Name required", JOptionPane.QUESTION_MESSAGE, null, null, ""); if (name != null) { try { model.getWorkflowSinkProcessor().addPort( new InputPort(model.getWorkflowSinkProcessor(), name)); model.forceUpdate(); } catch (PortCreationException pce) { JOptionPane.showMessageDialog(parent, "Port creation exception : \n" + pce.getMessage(), "Exception!", JOptionPane.ERROR_MESSAGE); } catch (DuplicatePortNameException dpne) { JOptionPane.showMessageDialog(parent, "Duplicate name : \n" + dpne.getMessage(), "Exception!", JOptionPane.ERROR_MESSAGE); } } }
private List getRoots(ScuflModel scuflModel) Processor processor = scuflModel.getWorkflowSinkProcessor(); if (processor.getPorts().length != 0)
void addOutputPort(String name) throws DuplicatePortNameException, PortCreationException { model.getWorkflowSinkProcessor().addPort( new InputPort(model.getWorkflowSinkProcessor(), name)); model.forceUpdate(); }
if (scuflObject instanceof Processor) { if (scuflObject == model .getWorkflowSinkProcessor()) { menu = new JPopupMenu(); menu.add(new ShadedLabel(
if (theInputPort.getProcessor() == model.getWorkflowSinkProcessor()) { theMenu.add(new ShadedLabel("Workflow Output : " + theInputPort.getName(), ShadedLabel.TAVERNA_GREEN)); final Port sinkPort = theInputPort;
public void remove(Object[] cells) { for (int index = 0; index < cells.length; index++) { if (cells[index] instanceof Processor) { if (cells[index] != model.getWorkflowSinkProcessor() && cells[index] != model.getWorkflowSourceProcessor()) { model.destroyProcessor((Processor) cells[index]); } } else if (cells[index] instanceof DataConstraint) { model.destroyDataConstraint((DataConstraint) cells[index]); } else if (cells[index] instanceof ConcurrencyConstraint) { model.destroyConcurrencyConstraint((ConcurrencyConstraint) cells[index]); } else if (cells[index] instanceof Port) { // TODO Check port is actually on the workflow edge? Port port = (Port) cells[index]; port.getProcessor().removePort(port); } } }
void linkPorts(String from, String to) throws UnknownPortException, DataConstraintCreationException { Port fromPort = model.getWorkflowSourceProcessor().locatePort(from); Port toPort = model.getWorkflowSinkProcessor().locatePort(to); model.addDataConstraint(new DataConstraint(model, fromPort, toPort)); }
for (int i = 0; i < op.length; i++) { String portName = op[i].getName(); InputPort port = new InputPort(m.getWorkflowSinkProcessor(), portName); m.getWorkflowSinkProcessor().addPort(port); m.addDataConstraint(new DataConstraint(m, op[i], port));
GraphConstants.setValue(map, ""); else if (processor == model.getWorkflowSinkProcessor())
theInternalModel.getWorkflowSinkProcessor().locatePort(portName); } catch (UnknownPortException upe) { removePort(ourOutputPorts[i]);