Add logging and update validation
This commit is contained in:
@@ -11,7 +11,7 @@ object Main {
|
||||
var conf: HammerConf = uninitialized
|
||||
|
||||
def main(args: Array[String]): Unit = {
|
||||
var logger = Logger("TGCHammer")
|
||||
val logger = Logger("TGCHammer")
|
||||
conf = new HammerConf(args.toIndexedSeq)
|
||||
|
||||
val logLevel = conf.verbose() match {
|
||||
@@ -22,14 +22,23 @@ object Main {
|
||||
}
|
||||
LoggerFactory.getLogger(org.slf4j.Logger.ROOT_LOGGER_NAME).asInstanceOf[ch.qos.logback.classic.Logger].setLevel(logLevel)
|
||||
|
||||
os.makeDir(Global.OUT_DIR)
|
||||
os.makeDir(Global.TMP_DIR)
|
||||
logger.trace(s"Creating output directory ${Global.OUT_DIR}")
|
||||
if (conf.emptyOutputDir()) os.remove.all(Global.OUT_DIR)
|
||||
os.makeDir.all(Global.OUT_DIR)
|
||||
logger.trace(s"Creating temp directory ${Global.TMP_DIR}")
|
||||
os.makeDir.all(Global.TMP_DIR)
|
||||
conf.subcommand match {
|
||||
case Some(c: MySubcommand) =>
|
||||
logger.info(s"Executing subcommand ${c.name}")
|
||||
val tasks = c.getRequiredTasks
|
||||
logger.debug(s"Subcommand requires ${tasks.size} tasks")
|
||||
logger.info(s"Validating tasks")
|
||||
tasks.foreach(_.validate())
|
||||
logger.info(s"Executing tasks")
|
||||
tasks.foreach(_.execute())
|
||||
case _ =>
|
||||
logger.error(s"Found no subcommand, see help below")
|
||||
conf.printHelp()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user