From 9b522749ac4103c8089c3fd2206d28ac6cb094a3 Mon Sep 17 00:00:00 2001
From: Peter van 't Hof
Date: Tue, 17 Jan 2017 16:24:00 +0100
Subject: [PATCH] Change to option types
---
.../lumc/sasc/biopet/core/BiopetQScript.scala | 36 +++++++++----------
.../sasc/biopet/core/WriteDependencies.scala | 18 +++++-----
2 files changed, 27 insertions(+), 27 deletions(-)
diff --git a/biopet-core/src/main/scala/nl/lumc/sasc/biopet/core/BiopetQScript.scala b/biopet-core/src/main/scala/nl/lumc/sasc/biopet/core/BiopetQScript.scala
index 2a84faeda..0871a9508 100644
--- a/biopet-core/src/main/scala/nl/lumc/sasc/biopet/core/BiopetQScript.scala
+++ b/biopet-core/src/main/scala/nl/lumc/sasc/biopet/core/BiopetQScript.scala
@@ -177,51 +177,51 @@ object BiopetQScript {
require(outputDir.getAbsoluteFile.canWrite, s"No premision to write outputdir: $outputDir")
}
- def safeInputs(function: QFunction): Seq[File] = {
+ def safeInputs(function: QFunction): Option[Seq[File]] = {
try {
- function.inputs
+ Some(function.inputs)
} catch {
- case e: NullPointerException => Seq()
+ case e: NullPointerException => None
}
}
- def safeOutputs(function: QFunction): Seq[File] = {
+ def safeOutputs(function: QFunction): Option[Seq[File]] = {
try {
- function.outputs
+ Some(function.outputs)
} catch {
- case e: NullPointerException => Seq()
+ case e: NullPointerException => None
}
}
- def safeDoneFiles(function: QFunction): Seq[File] = {
+ def safeDoneFiles(function: QFunction): Option[Seq[File]] = {
try {
- function.doneOutputs
+ Some(function.doneOutputs)
} catch {
- case e: NullPointerException => Seq()
+ case e: NullPointerException => None
}
}
- def safeFailFiles(function: QFunction): Seq[File] = {
+ def safeFailFiles(function: QFunction): Option[Seq[File]] = {
try {
- function.failOutputs
+ Some(function.failOutputs)
} catch {
- case e: NullPointerException => Seq()
+ case e: NullPointerException => None
}
}
- def safeIsDone(function: QFunction): Boolean = {
+ def safeIsDone(function: QFunction): Option[Boolean] = {
try {
- function.isDone
+ Some(function.isDone)
} catch {
- case e: NullPointerException => false
+ case e: NullPointerException => None
}
}
- def safeIsFail(function: QFunction): Boolean = {
+ def safeIsFail(function: QFunction): Option[Boolean] = {
try {
- function.isFail
+ Some(function.isFail)
} catch {
- case e: NullPointerException => false
+ case e: NullPointerException => None
}
}
diff --git a/biopet-core/src/main/scala/nl/lumc/sasc/biopet/core/WriteDependencies.scala b/biopet-core/src/main/scala/nl/lumc/sasc/biopet/core/WriteDependencies.scala
index b9ec57c2b..1b09c32d8 100644
--- a/biopet-core/src/main/scala/nl/lumc/sasc/biopet/core/WriteDependencies.scala
+++ b/biopet-core/src/main/scala/nl/lumc/sasc/biopet/core/WriteDependencies.scala
@@ -91,12 +91,12 @@ object WriteDependencies extends Logging with Configurable {
val files: mutable.Map[File, QueueFile] = mutable.Map()
for (function <- functions) {
- for (input <- BiopetQScript.safeInputs(function)) {
+ for (input <- BiopetQScript.safeInputs(function).getOrElse(Seq())) {
val file = files.getOrElse(input, QueueFile(input))
file.addInputJob(function)
files += input -> file
}
- for (output <- BiopetQScript.safeOutputs(function)) {
+ for (output <- BiopetQScript.safeOutputs(function).getOrElse(Seq())) {
val file = files.getOrElse(output, QueueFile(output))
file.addOutputJob(function)
files += output -> file
@@ -113,13 +113,13 @@ object WriteDependencies extends Logging with Configurable {
case s: WriteSummary if s.qscript.root == null => true
case _ => false
}), "intermediate" -> f.isIntermediate,
- "depends_on_intermediate" -> BiopetQScript.safeOutputs(f).exists(files(_).isIntermediate),
- "depends_on_jobs" -> BiopetQScript.safeOutputs(f).toList.flatMap(files(_).outputJobNames).distinct,
- "output_used_by_jobs" -> BiopetQScript.safeOutputs(f).toList.flatMap(files(_).inputJobNames).distinct,
- "outputs" -> BiopetQScript.safeOutputs(f).toList,
- "inputs" -> BiopetQScript.safeOutputs(f).toList,
- "done_files" -> BiopetQScript.safeDoneFiles(f).toList,
- "fail_files" -> BiopetQScript.safeFailFiles(f).toList,
+ "depends_on_intermediate" -> BiopetQScript.safeOutputs(f).getOrElse(Seq()).exists(files(_).isIntermediate),
+ "depends_on_jobs" -> BiopetQScript.safeOutputs(f).getOrElse(Seq()).toList.flatMap(files(_).outputJobNames).distinct,
+ "output_used_by_jobs" -> BiopetQScript.safeOutputs(f).getOrElse(Seq()).toList.flatMap(files(_).inputJobNames).distinct,
+ "outputs" -> BiopetQScript.safeOutputs(f).getOrElse(Seq()).toList,
+ "inputs" -> BiopetQScript.safeOutputs(f).getOrElse(Seq()).toList,
+ "done_files" -> BiopetQScript.safeDoneFiles(f).getOrElse(Seq()).toList,
+ "fail_files" -> BiopetQScript.safeFailFiles(f).getOrElse(Seq()).toList,
"stdout_file" -> f.jobOutputFile,
"done_at_start" -> BiopetQScript.safeIsDone(f),
"fail_at_start" -> BiopetQScript.safeIsFail(f))
--
GitLab