diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/VariantEffectPredictor.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/VariantEffectPredictor.scala index 2ab2c097a67ddee30eb60ce829c20c29da3e7364..bdf6b4af6593dab38f6c757ab0ee0fe95571bcc6 100644 --- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/VariantEffectPredictor.scala +++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/VariantEffectPredictor.scala @@ -24,98 +24,98 @@ class VariantEffectPredictor(val root: Configurable) extends BiopetCommandLineFu override def versionCommand = executable + " " + vep_script + " --help" //Boolean vars - var v: Boolean = config("v") - var q: Boolean = config("q") - var offline: Boolean = config("offline") - var no_progress: Boolean = config("no_progress") - var everything: Boolean = config("everything") - var force: Boolean = config("force") - var no_stats: Boolean = config("no_stats") - var stats_text: Boolean = config("stats_text") - var html: Boolean = config("html") - var cache: Boolean = config("cache") - var humdiv: Boolean = config("humdiv") - var regulatory: Boolean = config("regulatory") - var cell_type: Boolean = config("cell_type") - var phased: Boolean = config("phased") - var allele_number: Boolean = config("allele_number") - var numbers: Boolean = config("numbers") - var domains: Boolean = config("domains") - var no_escape: Boolean = config("no_escape") - var hgvs: Boolean = config("hgvs") - var protein: Boolean = config("protein") - var symbol: Boolean = config("symbol") - var ccds: Boolean = config("ccds") - var uniprot: Boolean = config("uniprot") - var tsl: Boolean = config("tsl") - var canonical: Boolean = config("canonical") - var biotype: Boolean = config("biotype") - var xref_refseq: Boolean = config("xref_refseq") - var check_existing: Boolean = config("check_existing") - var check_alleles: Boolean = config("check_alleles") - var check_svs: Boolean = config("svs") - var gmaf: Boolean = config("gmaf") - var maf_1kg: Boolean = config("maf_1kg") - var maf_esp: Boolean = config("maf_esp") - var old_map: Boolean = config("old_maf") - var pubmed: Boolean = config("pubmed") - var failed: Boolean = config("failed") + var v: Boolean = config("v", default = true) + var q: Boolean = config("q", default = false) + var offline: Boolean = config("offline", default = false) + var no_progress: Boolean = config("no_progress", default = false) + var everything: Boolean = config("everything", default = true) + var force: Boolean = config("force", default = false) + var no_stats: Boolean = config("no_stats", default = false) + var stats_text: Boolean = config("stats_text", default = false) + var html: Boolean = config("html", default = false) + var cache: Boolean = config("cache", default = false) + var humdiv: Boolean = config("humdiv", default = false) + var regulatory: Boolean = config("regulatory", default = false) + var cell_type: Boolean = config("cell_type", default = false) + var phased: Boolean = config("phased", default = false) + var allele_number: Boolean = config("allele_number", default = false) + var numbers: Boolean = config("numbers", default = false) + var domains: Boolean = config("domains", default = false) + var no_escape: Boolean = config("no_escape", default = false) + var hgvs: Boolean = config("hgvs", default = false) + var protein: Boolean = config("protein", default = false) + var symbol: Boolean = config("symbol", default = false) + var ccds: Boolean = config("ccds", default = false) + var uniprot: Boolean = config("uniprot", default = false) + var tsl: Boolean = config("tsl", default = false) + var canonical: Boolean = config("canonical", default = false) + var biotype: Boolean = config("biotype", default = false) + var xref_refseq: Boolean = config("xref_refseq", default = false) + var check_existing: Boolean = config("check_existing", default = false) + var check_alleles: Boolean = config("check_alleles", default = false) + var check_svs: Boolean = config("svs", default = false) + var gmaf: Boolean = config("gmaf", default = false) + var maf_1kg: Boolean = config("maf_1kg", default = false) + var maf_esp: Boolean = config("maf_esp", default = false) + var old_map: Boolean = config("old_maf", default = false) + var pubmed: Boolean = config("pubmed", default = false) + var failed: Boolean = config("failed", default = false) var vcf: Boolean = config("vcf", default = true) - var json: Boolean = config("json") - var gvf: Boolean = config("gvf") - var check_ref: Boolean = config("check_ref") - var coding_only: Boolean = config("coding_only") - var no_intergenic: Boolean = config("no_intergenic") - var pick: Boolean = config("pick") - var pick_allele: Boolean = config("pick_allele") - var flag_pick: Boolean = config("flag_pick") - var flag_pick_allele: Boolean = config("flag_pick_allele") - var per_gene: Boolean = config("per_gene") - var most_severe: Boolean = config("most_severe") - var summary: Boolean = config("summary") - var filter_common: Boolean = config("filter_common") - var check_frequency: Boolean = config("check_frequency") - var allow_non_variant: Boolean = config("allow_non_variant") - var database: Boolean = config("database") - var genomes: Boolean = config("genomes") - var gencode_basic: Boolean = config("gencode_basic") - var refseq: Boolean = config("refseq") - var merged: Boolean = config("merged") - var all_refseq: Boolean = config("all_refseq") - var lrg: Boolean = config("lrg") - var no_whole_genome: Boolean = config("no_whole_genome") - var skip_db_check: Boolean = config("skip_db_check") + var json: Boolean = config("json", default = false) + var gvf: Boolean = config("gvf", default = false) + var check_ref: Boolean = config("check_ref", default = false) + var coding_only: Boolean = config("coding_only", default = false) + var no_intergenic: Boolean = config("no_intergenic", default = false) + var pick: Boolean = config("pick", default = false) + var pick_allele: Boolean = config("pick_allele", default = false) + var flag_pick: Boolean = config("flag_pick", default = false) + var flag_pick_allele: Boolean = config("flag_pick_allele", default = false) + var per_gene: Boolean = config("per_gene", default = false) + var most_severe: Boolean = config("most_severe", default = false) + var summary: Boolean = config("summary", default = false) + var filter_common: Boolean = config("filter_common", default = false) + var check_frequency: Boolean = config("check_frequency", default = false) + var allow_non_variant: Boolean = config("allow_non_variant", default = false) + var database: Boolean = config("database", default = false) + var genomes: Boolean = config("genomes", default = false) + var gencode_basic: Boolean = config("gencode_basic", default = false) + var refseq: Boolean = config("refseq", default = false) + var merged: Boolean = config("merged", default = false) + var all_refseq: Boolean = config("all_refseq", default = false) + var lrg: Boolean = config("lrg", default = false) + var no_whole_genome: Boolean = config("no_whole_genome", default = false) + var skip_db_check: Boolean = config("skip_db_check", default = false) // Textual args - var vep_config: String = config("config") - var species: String = config("species") - var assembly: String = config("assembly") - var format: String = config("format") - var dir: String = config("dir") - var dir_cache: String = config("dir_cache") - var dir_plugins: String = config("dir_plugins") - var fasta: File = config("fasta") - var sift: String = config("sift") - var polyphen: String = config("polyphen") - var custom: String = config("custom") - var plugin: List[String] = config("plugin") - var individual: String = config("individual") - var fields: String = config("fields") - var convert: String = config("convert") - var terms: String = config("terms") - var chr: String = config("chr") - var pick_order: String = config("pick_order") - var freq_pop: String = config("check_pop") - var freq_gt_lt: String = config("freq_gt_lt") - var freq_filter: String = config("freq_filter") - var filter: String = config("filter") - var host: String = config("host") - var user: String = config("user") - var password: String = config("password") - var registry: String = config("registry") - var build: String = config("build") - var compress: String = config("compress") - var cache_region_size: String = config("cache_region_size") + var vep_config: Option[String] = config("config") + var species: Option[String] = config("species") + var assembly: Option[String] = config("assembly") + var format: Option[String] = config("format") + var dir: Option[String] = config("dir") + var dir_cache: Option[String] = config("dir_cache") + var dir_plugins: Option[String] = config("dir_plugins") + var fasta: Option[String] = config("fasta") + var sift: Option[String] = config("sift") + var polyphen: Option[String] = config("polyphen") + var custom: Option[String] = config("custom") + var plugin: List[String] = config("plugin", default = Nil) + var individual: Option[String] = config("individual") + var fields: Option[String] = config("fields") + var convert: Option[String] = config("convert") + var terms: Option[String] = config("terms") + var chr: Option[String] = config("chr") + var pick_order: Option[String] = config("pick_order") + var freq_pop: Option[String] = config("check_pop") + var freq_gt_lt: Option[String] = config("freq_gt_lt") + var freq_filter: Option[String] = config("freq_filter") + var filter: Option[String] = config("filter") + var host: Option[String] = config("host") + var user: Option[String] = config("user") + var password: Option[String] = config("password") + var registry: Option[String] = config("registry") + var build: Option[String] = config("build") + var compress: Option[String] = config("compress") + var cache_region_size: Option[String] = config("cache_region_size") // Numeric args var fork: Option[Int] = config("fork") @@ -129,7 +129,7 @@ class VariantEffectPredictor(val root: Configurable) extends BiopetCommandLineFu super.afterGraph if (!cache && !database) { throw new IllegalArgumentException("Must supply either cache or database") - } else if (cache && dir == null) { + } else if (cache && dir.isEmpty) { throw new IllegalArgumentException("Must supply dir to cache") } } diff --git a/public/biopet-public-package/src/main/scala/nl/lumc/sasc/biopet/core/BiopetExecutablePublic.scala b/public/biopet-public-package/src/main/scala/nl/lumc/sasc/biopet/core/BiopetExecutablePublic.scala index b0ad47dcc228580fdfc7dac59bb5fd180ffb0fef..dbc3f5b1686c57e5dcf763fa4c603a7fe62edcdc 100644 --- a/public/biopet-public-package/src/main/scala/nl/lumc/sasc/biopet/core/BiopetExecutablePublic.scala +++ b/public/biopet-public-package/src/main/scala/nl/lumc/sasc/biopet/core/BiopetExecutablePublic.scala @@ -24,7 +24,8 @@ object BiopetExecutablePublic extends BiopetExecutable { nl.lumc.sasc.biopet.pipelines.yamsvp.Yamsvp, nl.lumc.sasc.biopet.pipelines.sage.Sage, nl.lumc.sasc.biopet.pipelines.kopisu.ConiferPipeline, - nl.lumc.sasc.biopet.pipelines.carp.Carp + nl.lumc.sasc.biopet.pipelines.carp.Carp, + nl.lumc.sasc.biopet.pipelines.toucan.Toucan ) def tools: List[MainCommand] = List( diff --git a/public/toucan/src/main/scala/nl/lumc/sasc/biopet/pipelines/toucan/Toucan.scala b/public/toucan/src/main/scala/nl/lumc/sasc/biopet/pipelines/toucan/Toucan.scala index 256cdc5b1f2975973fae93891f4c59e8974c3f54..69e182e38f1e6c9adc0dc0707f3c287eac580a93 100644 --- a/public/toucan/src/main/scala/nl/lumc/sasc/biopet/pipelines/toucan/Toucan.scala +++ b/public/toucan/src/main/scala/nl/lumc/sasc/biopet/pipelines/toucan/Toucan.scala @@ -4,6 +4,7 @@ import nl.lumc.sasc.biopet.core.{ PipelineCommand, BiopetQScript } import nl.lumc.sasc.biopet.core.config.Configurable import nl.lumc.sasc.biopet.extensions.VariantEffectPredictor import nl.lumc.sasc.biopet.tools.VEPNormalizer +import nl.lumc.sasc.biopet.utils.ConfigUtils import org.broadinstitute.gatk.queue.QScript import org.broadinstitute.gatk.utils.commandline.{ Input, Argument } @@ -20,7 +21,11 @@ class Toucan(val root: Configurable) extends QScript with BiopetQScript { } - defaults ++= Map("varianteffectpredictor" -> Map("everything" -> true)) + override def defaults = ConfigUtils.mergeMaps(Map( + "varianteffectpredictor" -> Map("everything" -> true) + ), super.defaults) + + //defaults ++= Map("varianteffectpredictor" -> Map("everything" -> true)) def biopetScript(): Unit = { val vep = new VariantEffectPredictor(this)