]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.scl.runtime/src/org/simantics/scl/runtime/reporting/SCLReportingHandler.java
Utilize slf4j
[simantics/platform.git] / bundles / org.simantics.scl.runtime / src / org / simantics / scl / runtime / reporting / SCLReportingHandler.java
index a5359564632fe1b7edabc3d6f3055fde8fc8eb4a..91e71d6521836314fb2c05b6140f8419df597137 100755 (executable)
@@ -1,5 +1,8 @@
 package org.simantics.scl.runtime.reporting;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 /**
  * <p>An interface that is used to handle printing commands from SCL 
  * such as Prelude.print. This interface is typically stored to 
@@ -11,6 +14,7 @@ package org.simantics.scl.runtime.reporting;
  * @author Hannu Niemist&ouml;
  */
 public interface SCLReportingHandler {
+    public static final Logger LOGGER = LoggerFactory.getLogger(SCLReportingHandler.class);
     public static final String REPORTING_HANDLER = "reportingHandler";
     
     public void print(String text);
@@ -19,6 +23,34 @@ public interface SCLReportingHandler {
     public void didWork(double amount);
 
     public static final SCLReportingHandler DEFAULT = new AbstractSCLReportingHandler() {
+        @Override
+        public void print(String text) {
+            LOGGER.info(text);
+        }
+
+        @Override
+        public void printError(String error) {
+            LOGGER.error(error);
+        }
+    };
+    
+    public static final SCLReportingHandler DEFAULT_WITHOUT_ECHO = new AbstractSCLReportingHandler() {
+        @Override
+        public void print(String text) {
+            LOGGER.info(text);
+        }
+
+        @Override
+        public void printError(String error) {
+            LOGGER.error(error);
+        }
+
+        @Override
+        public void printCommand(String command) {
+        }
+    };
+    
+    public static final SCLReportingHandler SYSOUT = new AbstractSCLReportingHandler() {
         @Override
         public void print(String text) {
             System.out.println(text);
@@ -30,7 +62,7 @@ public interface SCLReportingHandler {
         }
     };
     
-    public static final SCLReportingHandler DEFAULT_WITHOUT_ECHO = new AbstractSCLReportingHandler() {
+    public static final SCLReportingHandler SYSOUT_WITHOUT_ECHO = new AbstractSCLReportingHandler() {
         @Override
         public void print(String text) {
             System.out.println(text);