diff csp2_screen.xml @ 66:90e29c1ddeca

"planemo upload"
author rliterman
date Thu, 19 Dec 2024 15:55:32 -0500
parents 16b103443761
children 0e9998148a16
line wrap: on
line diff
--- a/csp2_screen.xml	Thu Dec 19 14:51:58 2024 -0500
+++ b/csp2_screen.xml	Thu Dec 19 15:55:32 2024 -0500
@@ -9,41 +9,63 @@
 
 mkdir ./queries ./references;
 
-if [ -n "$query_fasta" ] && [ "$query_fasta" != "None" ]; then
-        #for query in $query_fasta:
-                ln -sf ${query} ./queries/${query.element_identifier};
+#if (str($query_fasta.query_fasta_select) == "none"):
+        export QUERY_FASTA_ARG="";
+#elif (str($query_fasta.query_fasta_select) == "collection"):
+        #for _, $query_assembly in enumerate($query_fasta.coll):
+                ln -sf ${query_assembly} ./queries/${query_assembly.element_identifier};
         #end for
         export QUERY_FASTA_ARG="--fasta ./queries";
-else
-        export QUERY_FASTA_ARG="";
-fi;
+#else
+        #for _, $query_assembly in enumerate($query_fasta.list):
+                ln -sf ${query_assembly} ./queries/${query_assembly.element_identifier};
+        #end for
+        export QUERY_FASTA_ARG="--fasta ./queries";
+#end if
 
-if [ -n "$query_reads" ] && [ "$query_reads" != "None" ]; then
-        #for query in $query_reads:
-                ln -sf ${query} ./queries/${query.element_identifier};
+#if (str($ref_fasta.ref_fasta_select) == "none"):
+        export REF_FASTA_ARG="";
+#elif (str($ref_fasta.ref_fasta_select) == "collection"):
+        #for _, $ref_assembly in enumerate($ref_fasta.coll):
+                ln -sf ${ref_assembly} ./references/${ref_assembly.element_identifier};
+        #end for
+        export REF_FASTA_ARG="--fasta ./references";
+#else
+        #for _, $ref_assembly in enumerate($ref_fasta.list):
+                ln -sf ${ref_assembly} ./references/${ref_assembly.element_identifier};
+        #end for
+        export REF_FASTA_ARG="--fasta ./references";
+#end if
+
+#if (str($query_reads.query_reads_select) == "none"):
+        export QUERY_READS_ARG="";
+#elif (str($query_reads.query_reads_select) == "collection"):
+        #for _, $pair in enumerate($query_reads.coll):
+                ln -sf ${pair.forward} ./queries/${pair.forward.name};
+                ln -sf ${pair.reverse} ./queries/${pair.reverse.name};
         #end for
         export QUERY_READS_ARG="--reads ./queries";
-else
-        export QUERY_READS_ARG="";
-fi;
+#else
+        #for _, $read_file in enumerate($query_reads.list):
+                ln -sf ${read_file} ./queries/${read_file.element_identifier};
+        #end for
+        export QUERY_READS_ARG="--reads ./queries";
+#end if
 
-if [ -n "$ref_fasta" ] && [ "$ref_fasta" != "None" ]; then
-        #for ref in $ref_fasta:
-                ln -sf ${ref} ./references/${ref.element_identifier};
-        #end for
-        export REF_FASTA_ARG="--ref_fasta ./references";
-else
-        export REF_FASTA_ARG="";
-fi;
-
-if [ -n "$ref_reads" ] && [ "$ref_reads" != "None" ]; then
-        #for ref in $ref_reads:
-                ln -sf ${ref} ./references/${ref.element_identifier};
+#if (str($ref_reads.ref_reads_select) == "none"):
+        export REF_READS_ARG="";
+#elif (str($ref_reads.ref_reads_select) == "collection"):
+        #for _, $pair in enumerate($ref_reads.coll):
+                ln -sf ${pair.forward} ./references/${pair.forward.name};
+                ln -sf ${pair.reverse} ./references/${pair.reverse.name};
         #end for
         export REF_READS_ARG="--ref_reads ./references";
-else
-        export REF_READS_ARG="";
-fi;
+#else
+        #for _, $read_file in enumerate($ref_reads.list):
+                ln -sf ${read_file} ./references/${read_file.element_identifier};
+        #end for
+        export REF_READS_ARG="--ref_reads ./references";
+#end if
 
 if [ -n "$trim_name" ] && [ "$trim_name" != "None" ]; then
         export TRIM_ARG="--trim_name $trim_name";
@@ -62,10 +84,68 @@
 ]]>
         </command>
         <inputs>
-                <param name="query_fasta" type="data" format="fasta" value="" label="Query assemblies" multiple="true" optional="true" />
-                <param name="ref_fasta" type="data" format="fasta" value="" label="Reference assemblies" multiple="true" optional="true" />
-                <param name="query_reads" type="data" format="fastq,fastq.gz" value="" label="Query reads" multiple="true" optional="true" />
-                <param name="ref_reads" type="data" format="fastq,fastq.gz" value="" label="Reference reads" multiple="true" optional="true" />
+                <conditional name="query_fasta">
+                <param name="query_fasta_select" type="select" label="Get query assemblies from a collection or your history">
+                        <option value="none" selected="true">Do not provide query assemblies</option>
+                        <option value="collection">Query assemblies from a collection_type</option>
+                        <option value="history">Query assemblies from your history</option>
+                </param>
+                <when value="none">
+                </when>
+                <when value="collection">
+                        <param label="Query Assembly Collection" name="coll" type="data_collection" format="fasta" collection_type="list" />
+                </when>
+                <when value="history">
+                        <param label="Query Assembly List" type="data" name="list" format="fasta"  multiple="true" />
+                </when>
+                </conditional>
+
+                <conditional name="ref_fasta">
+                <param name="ref_fasta_select" type="select" label="Get reference assemblies from a collection or your history">
+                        <option value="none" selected="true">Do not provide reference assemblies</option>
+                        <option value="collection">Reference assemblies from a collection_type</option>
+                        <option value="history">Reference assemblies from your history</option>
+                </param>
+                <when value="none">
+                </when>
+                <when value="collection">
+                        <param label="Reference Assembly Collection" name="coll" type="data_collection" format="fasta" collection_type="list" />
+                </when>
+                <when value="history">
+                        <param label="Reference Assembly List" type="data" name="list" format="fasta"  multiple="true" />
+                </when>
+                </conditional>   
+                <conditional name="query_reads">
+                <param name="query_reads_select" type="select" label="Get query reads from a paired-end collection or your history">
+                        <option value="none" selected="true">Do not provide query reads</option>
+                        <option value="collection">Query reads from a collection_type</option>
+                        <option value="history">Query reads from your history</option>
+                </param>
+                <when value="none">
+                </when>
+                <when value="collection">
+                        <param label="Query Reads Collection" name="coll" type="data_collection" format="fastq,fastqsanger,fastq.gz,fastqsanger.gz,fastq.bz2,fastqsanger.bz2" collection_type="list:paired" />
+                </when>
+                <when value="history">
+                        <param label="Query Reads List" type="data" name="list" format="fastq,fastqsanger,fastq.gz,fastqsanger.gz,fastq.bz2,fastqsanger.bz2"  multiple="true" />
+                </when>
+                </conditional>
+
+                <conditional name="ref_reads">
+                <param name="ref_reads_select" type="select" label="Get reference reads from a paired-end collection or your history">
+                        <option value="none" selected="true">Do not provide reference reads</option>
+                        <option value="collection">Refrence reads from a collection_type</option>
+                        <option value="history">Refrence reads from your history</option>
+                </param>
+                <when value="none">
+                </when>
+                <when value="collection">
+                        <param label="Refrence Reads Collection" name="coll" type="data_collection" format="fastq,fastqsanger,fastq.gz,fastqsanger.gz,fastq.bz2,fastqsanger.bz2" collection_type="list:paired" />
+                </when>
+                <when value="history">
+                        <param label="Refrence Reads List" type="data" name="list" format="fastq,fastqsanger,fastq.gz,fastqsanger.gz,fastq.bz2,fastqsanger.bz2"  multiple="true" />
+                </when>
+                </conditional>             
                 <param name="min_cov" type="float" value="85" label="Minimum reference genome coverage to proceed with distance estimation" optional="true" />
                 <param name="min_iden" type="float" value="99" label="Minimum alignment percent identity to detect SNPs" optional="true" />
                 <param name="min_len" type="integer" value="500" label="Minimum alignment length to detect SNPs" optional="true" />