public List<OutputPort> outputPorts(LocalServiceProcessor processor) throws DuplicatePortNameException, PortCreationException { OutputPort port = new OutputPort(processor, OUTPUTLIST); port.setSyntacticType(getSyntacticType()); List<OutputPort> ports = new ArrayList<OutputPort>(); ports.add(port); return ports; }
Element outputElement = new Element("beanshelloutput", XScuflNS); outputElement.setText(outputs[i].getName()); if (outputs[i].getSyntacticType() != null) outputElement.setAttribute("syntactictype", outputs[i] .getSyntacticType(), XScuflNS); outputList.addContent(outputElement);
public List<OutputPort> outputPorts(LocalServiceProcessor processor) throws DuplicatePortNameException, PortCreationException { OutputPort port = new OutputPort(processor, OUTPUTLIST); port.setSyntacticType(LIST_TYPE); SemanticMarkup metaData = port.getMetadata(); // Is this useful? metaData.addMIMEType(""); List<OutputPort> ports = new ArrayList<OutputPort>(); ports.add(port); return ports; }
/** * Determines whether the given output port supports being splitted * * @param input * @return */ public static boolean isSplittable(OutputPort output) { boolean result = false; if (output.getSyntacticType().equalsIgnoreCase("'text/xml'") || output.getSyntacticType().equalsIgnoreCase("l('text/xml')")) { if (output.getProcessor() instanceof WSDLBasedProcessor) { result = true; } else if (output.getProcessor() instanceof LocalServiceProcessor) { LocalServiceProcessor processor = (LocalServiceProcessor) output .getProcessor(); if (processor.getWorker() instanceof XMLOutputSplitter) { result = true; } } } return result; }
/** * Construct a new processor with the given model and * name, delegates to the superclass. */ public StringConstantProcessor(ScuflModel model, String name, String value) throws ProcessorCreationException, DuplicateProcessorNameException { super(model, name); setBoring(true); theStringValue = value; // Create a single output port try { Port newPort = new OutputPort(this, "value"); newPort.setSyntacticType("'text/plain'"); this.addPort(newPort); } catch (Exception ex) { // should never happen } }
for (int i = 0; i < ip.length; i++) { String portName = ip[i].getName(); OutputPort port = new OutputPort(m.getWorkflowSourceProcessor(), portName); m.getWorkflowSourceProcessor().addPort(port); m.addDataConstraint(new DataConstraint(m, port, ip[i])); String portName = op[i].getName(); InputPort port = new InputPort(m.getWorkflowSinkProcessor(), portName); m.getWorkflowSinkProcessor().addPort(port);
private TypeDescriptor getTypeDescriptor(OutputPort portToSplit) { if (typeDescriptor == null) { if (portToSplit.getProcessor() instanceof WSDLBasedProcessor) { WSDLBasedProcessor proc = (WSDLBasedProcessor) portToSplit .getProcessor(); WSDLParser parser = proc.getParser(); try { TypeDescriptor desc = (TypeDescriptor) it.next(); if (desc.getName().equalsIgnoreCase( portToSplit.getName())) { typeDescriptor = desc; break; logger.error("Exception thrown splitting outputs", e); } else if (portToSplit.getProcessor() instanceof LocalServiceProcessor) { LocalServiceProcessor processor = (LocalServiceProcessor) portToSplit .getProcessor(); if (processor.getWorker() instanceof XMLOutputSplitter) { XMLOutputSplitter splitter = (XMLOutputSplitter) processor TypeDescriptor desc = (TypeDescriptor) iterator .next(); if (desc.getName().equals(portToSplit.getName())) { typeDescriptor = desc; if (typeDescriptor instanceof ArrayTypeDescriptor && !((ArrayTypeDescriptor)typeDescriptor).isWrapped()) {
attachments.setSyntacticType("l('')"); addPort(attachments); OutputPort outputPort = new XMLSplittableOutputPort(this, outNames[i]); outputPort.setSyntacticType(TypeDescriptor .translateJavaType(outTypes[i])); addPort(outputPort);
public List<OutputPort> outputPorts(LocalServiceProcessor processor) throws DuplicatePortNameException, PortCreationException { List<OutputPort> result = new ArrayList<OutputPort>(); for (int i = 0; i < outputNames().length; i++) { // Create output ports OutputPort port = new XMLSplittableOutputPort(processor, outputNames()[i]); port.setSyntacticType(outputTypes()[i]); SemanticMarkup m = port.getMetadata(); String[] mimeTypes = ((outputTypes()[i].split("\\'"))[1]) .split(","); for (int j = 0; j < mimeTypes.length; j++) { logger.debug("Mime type " + mimeTypes[j]); m.addMIMEType(mimeTypes[j]); } result.add(port); } return result; }
String outputType = myOutput.getSyntacticType();
public void actionPerformed(ActionEvent e) { Component parent = UIUtils.getActionEventParentWindow(e); String name = (String) JOptionPane.showInputDialog(parent, "Name for the new workflow input?", "Name required", JOptionPane.QUESTION_MESSAGE, null, null, ""); if (name != null) { try { model.getWorkflowSourceProcessor() .addPort( new OutputPort(model .getWorkflowSourceProcessor(), 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); } } } }
final ScuflModel model = sourcePort.getProcessor().getModel(); JPopupMenu theMenu = new JPopupMenu("Possible targets"); + sourcePort.getName(), ShadedLabel.TAVERNA_GREEN)); theMenu.add(new RenameAction(model, fromPort)); theMenu.add(new RemoveAction(model, fromPort)); } else { theMenu.add(new ShadedLabel("Connect output \"" + sourcePort.getName() + "\" to...", ShadedLabel.TAVERNA_GREEN)); theMenu.addSeparator(); Processor[] processors = sourcePort.getProcessor().getModel() .getProcessors(); if (inputs.length > 0 && processors[x] != sourcePort.getProcessor()) { ImageIcon icon = null; icon = org.embl.ebi.escience.scuflworkers.ProcessorHelper if (inputs.length > 0 && processors[i] != sourcePort.getProcessor()) { ImageIcon icon = null; icon = org.embl.ebi.escience.scuflworkers.ProcessorHelper
processor.getInputPorts()[0].setSyntacticType("'text/xml'"); processor.getOutputPorts()[0] .setSyntacticType("l('application/octet-stream')");
public List<OutputPort> outputPorts(LocalServiceProcessor processor) throws DuplicatePortNameException, PortCreationException { List<OutputPort> result = new ArrayList<OutputPort>(); for (int i = 0; i < outputNames().length; i++) { // Create output ports OutputPort port = new XMLSplittableOutputPort(processor, outputNames()[i]); port.setSyntacticType(outputTypes()[i]); SemanticMarkup m = port.getMetadata(); String[] mimeTypes = ((outputTypes()[i].split("\\'"))[1]) .split(","); for (int j = 0; j < mimeTypes.length; j++) { logger.debug("Mime type " + mimeTypes[j]); m.addMIMEType(mimeTypes[j]); } result.add(port); } return result; }
/** * Method for creating a new input port */ private void createOutputPort() { String portName = JOptionPane.showInputDialog(this, "Enter the name of the output port to be created", "Create a new output port", JOptionPane.QUESTION_MESSAGE); if (portName != null) { try { OutputPort outputPort = new OutputPort(processor, portName); outputPort.setSyntacticType("'text/plain'"); processor.addPort(outputPort); } catch (PortCreationException pce) { JOptionPane.showMessageDialog(null, "Can not create port: " + pce.getMessage(), "Error creating port", JOptionPane.ERROR_MESSAGE); } catch (DuplicatePortNameException dpne) { JOptionPane.showMessageDialog(null, "A port with the name '" + portName + "' already exists, specify different name", "Error creating port", JOptionPane.ERROR_MESSAGE); } } }
for (int i = 0; i < outputs.length; i++) { Element outputElement = new Element("bsfoutput", XScufl.XScuflNS); outputElement.setText(outputs[i].getName()); if (outputs[i].getSyntacticType() != null) outputElement.setAttribute("syntactictype", outputs[i].getSyntacticType(), XScufl.XScuflNS); outputList.addContent(outputElement);
Port new_port = new OutputPort(this, output_name); if (output_type.equals("string")) { new_port.setSyntacticType("'text/plain'");
processor.getInputPorts()[0].setSyntacticType("'text/xml'"); processor.getOutputPorts()[0] .setSyntacticType("l('application/octet-stream')");