<activity xmlns="http://taverna.sf.net/2008/xml/t2flow"><class>net.sf.taverna.t2.activities.localworker.LocalworkerActivity</class><inputMap /><outputMap /><configBean encoding="xstream"><net.sf.taverna.t2.activities.localworker.LocalworkerActivityConfigurationBean xmlns="">
  <script>import org.biojava.bio.seq.DNATools;
import org.biojava.bio.symbol.SymbolList;

if ((rawSeq == void) || (rawSeq == null)) {
    throw new RuntimeException("The rawSeq must be specified");
}

// make a DNA SymbolListbena
SymbolList symL = DNATools.createDNA(rawSeq);

// reverse complement it
symL = DNATools.reverseComplement(symL);

// prove that it worked
revSeq = symL.seqString();
</script>
  <dependencies class="java.util.Collections$SingletonList">
    <element class="string">uk.org.mygrid.resources:biojava:1.4pre1</element>
  </dependencies>
  <inputs>
    <net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
      <handledReferenceSchemes />
      <translatedElementType>java.lang.String</translatedElementType>
      <allowsLiteralValues>true</allowsLiteralValues>
      <name>rawSeq</name>
      <depth>0</depth>
      <mimeTypes>
        <string>'text/plain'</string>
      </mimeTypes>
    </net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
  </inputs>
  <outputs>
    <net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean>
      <granularDepth>0</granularDepth>
      <name>revSeq</name>
      <depth>0</depth>
      <mimeTypes>
        <string>'text/plain'</string>
      </mimeTypes>
    </net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean>
  </outputs>
</net.sf.taverna.t2.activities.localworker.LocalworkerActivityConfigurationBean></configBean></activity>