Source code: org/embl/ebi/escience/scuflworkers/java/LocalServiceXMLHandler.java
1 /**
2 * This file is a component of the Taverna project,
3 * and is licensed under the GNU LGPL.
4 * Copyright Tom Oinn, EMBL-EBI
5 */
6 package org.embl.ebi.escience.scuflworkers.java;
7
8 import org.embl.ebi.escience.scufl.DuplicateProcessorNameException;
9 import org.embl.ebi.escience.scufl.Processor;
10 import org.embl.ebi.escience.scufl.ProcessorCreationException;
11 import org.embl.ebi.escience.scufl.ScuflModel;
12 import org.embl.ebi.escience.scufl.XScufl;
13 import org.embl.ebi.escience.scufl.parser.XScuflFormatException;
14 import org.embl.ebi.escience.scuflworkers.XMLHandler;
15
16 // JDOM Imports
17 import org.jdom.Element;
18
19
20
21
22 /**
23 * Handles XML store and load for the local process processor
24 * @author Tom Oinn
25 */
26 public class LocalServiceXMLHandler implements XMLHandler {
27
28 public Element elementForProcessor(Processor p) {
29 LocalServiceProcessor lsp = (LocalServiceProcessor)p;
30 Element spec = new Element("local",XScufl.XScuflNS);
31 spec.setText(lsp.getWorkerClassName());
32 return spec;
33 }
34
35 public Processor loadProcessorFromXML(Element processorNode, ScuflModel model, String name)
36 throws ProcessorCreationException,
37 DuplicateProcessorNameException,
38 XScuflFormatException {
39 Element local = processorNode.getChild("local",XScufl.XScuflNS);
40 String workerClass = local.getTextTrim();
41 return new LocalServiceProcessor(model, name, workerClass);
42 }
43
44 }