From 8ae55d98a7796ada169955c3d96423550a431d99 Mon Sep 17 00:00:00 2001 From: Matt Farmer Date: Sun, 6 Mar 2016 12:24:04 -0500 Subject: Cleanups for logger. --- stage1/logger.scala | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) (limited to 'stage1') diff --git a/stage1/logger.scala b/stage1/logger.scala index 16bd940..eaf64db 100644 --- a/stage1/logger.scala +++ b/stage1/logger.scala @@ -1,15 +1,24 @@ package cbt + import java.time._ -// We can replace this with something more sophisticated eventually -case class Logger(enabledLoggers: Set[String]){ - val start = LocalTime.now() - //System.err.println("Created Logger("+enabledLoggers+")") + +/** + * This represents a logger with namespaces that can be enabled or disabled as needed. The + * namespaces are defined using {{enabledLoggers}}. Possible values are defined in the subobject + * "names". + * + * We can replace this with something more sophisticated eventually. + */ +case class Logger(enabledLoggers: Set[String]) { def this(enabledLoggers: Option[String]) = this( enabledLoggers.toVector.flatMap( _.split(",") ).toSet ) + + val start = LocalTime.now() + def log(name: String, msg: => String) = { val timeTaken = (Duration.between(start, LocalTime.now()).toMillis.toDouble / 1000).toString - System.err.println( s"[${" "*(6-timeTaken.size)}$timeTaken]["+name+"] " + msg ) + System.err.println( s"[${" "*(6-timeTaken.size)}$timeTaken][$name] $msg" ) } - + def showInvocation(method: String, args: Any) = method + "( " + args + " )" final def stage1(msg: => String) = logGuarded(names.stage1, msg) @@ -38,4 +47,4 @@ case class Logger(enabledLoggers: Set[String]){ log(name, msg) } } -} \ No newline at end of file +} -- cgit v1.2.3