diff --git a/public/biopet-extensions/src/main/scala/nl/lumc/sasc/biopet/extensions/qiime/MergeOtuTables.scala b/public/biopet-extensions/src/main/scala/nl/lumc/sasc/biopet/extensions/qiime/MergeOtuTables.scala new file mode 100644 index 0000000000000000000000000000000000000000..80e3e363f49ff4ecf87e2730c194c54e268df451 --- /dev/null +++ b/public/biopet-extensions/src/main/scala/nl/lumc/sasc/biopet/extensions/qiime/MergeOtuTables.scala @@ -0,0 +1,37 @@ +package nl.lumc.sasc.biopet.extensions.qiime + +import java.io.File + +import nl.lumc.sasc.biopet.core.{BiopetCommandLineFunction, Version} +import nl.lumc.sasc.biopet.utils.config.Configurable +import org.broadinstitute.gatk.utils.commandline.{Output, Input} + +/** + * Created by pjvan_thof on 12/10/15. + */ +class MergeOtuTables(val root: Configurable) extends BiopetCommandLineFunction with Version { + executable = config("exe", default = "merge_otu_tables.py") + + def versionCommand = executable + " --version" + def versionRegex = """Version: (.*)""".r + + @Input(required = true) + var input: List[File] = Nil + + @Output(required = true) + var outputFile: File = _ + + + override def beforeGraph(): Unit = { + super.beforeGraph() + require(input.nonEmpty) + require(outputFile != null) + } + + def cmdLine = executable + + (input match { + case l: List[_] if l.nonEmpty => required("-i", l.mkString(",")) + case _ => "" + }) + + required("-o", outputFile) +} \ No newline at end of file