Repository: apex-malhar
Updated Branches:
  refs/heads/master 571db6c06 -> c528980a9


APEXMALHAR-2028 #resolve #comment add stderr for ConsoleOperator


Project: http://git-wip-us.apache.org/repos/asf/apex-malhar/repo
Commit: http://git-wip-us.apache.org/repos/asf/apex-malhar/commit/d2a5481b
Tree: http://git-wip-us.apache.org/repos/asf/apex-malhar/tree/d2a5481b
Diff: http://git-wip-us.apache.org/repos/asf/apex-malhar/diff/d2a5481b

Branch: refs/heads/master
Commit: d2a5481bcda949ee2458dd9449ec7c975428c35e
Parents: 37cb584
Author: Siyuan Hua <[email protected]>
Authored: Wed Aug 17 23:20:58 2016 -0700
Committer: Siyuan Hua <[email protected]>
Committed: Wed Aug 17 23:20:58 2016 -0700

----------------------------------------------------------------------
 .../lib/io/ConsoleOutputOperator.java           | 22 +++++++++++++++++++-
 1 file changed, 21 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/apex-malhar/blob/d2a5481b/library/src/main/java/com/datatorrent/lib/io/ConsoleOutputOperator.java
----------------------------------------------------------------------
diff --git 
a/library/src/main/java/com/datatorrent/lib/io/ConsoleOutputOperator.java 
b/library/src/main/java/com/datatorrent/lib/io/ConsoleOutputOperator.java
index 64046b2..38e15b1 100644
--- a/library/src/main/java/com/datatorrent/lib/io/ConsoleOutputOperator.java
+++ b/library/src/main/java/com/datatorrent/lib/io/ConsoleOutputOperator.java
@@ -18,6 +18,8 @@
  */
 package com.datatorrent.lib.io;
 
+import java.io.PrintStream;
+
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -43,6 +45,8 @@ public class ConsoleOutputOperator extends BaseOperator
 {
   private static final Logger logger = 
LoggerFactory.getLogger(ConsoleOutputOperator.class);
 
+  private transient PrintStream stream = isStderr() ? System.err : System.out;
+
   /**
    * This is the input port which receives the tuples that will be written to 
stdout.
    */
@@ -59,7 +63,7 @@ public class ConsoleOutputOperator extends BaseOperator
         s = String.format(stringFormat, t);
       }
       if (!silent) {
-        System.out.println(s);
+        stream.println(s);
       }
       if (debug) {
         logger.info(s);
@@ -88,6 +92,11 @@ public class ConsoleOutputOperator extends BaseOperator
    * When set to true, tuples are also logged at INFO level.
    */
   private boolean debug;
+
+  /**
+   * When set to true, output to stderr
+   */
+  private boolean stderr = false;
   /**
    * A formatter for {@link String#format}
    */
@@ -103,6 +112,17 @@ public class ConsoleOutputOperator extends BaseOperator
     this.debug = debug;
   }
 
+  public boolean isStderr()
+  {
+    return stderr;
+  }
+
+  public void setStderr(boolean stderr)
+  {
+    this.stderr = stderr;
+    stream = stderr ? System.err : System.out;
+  }
+
   public String getStringFormat()
   {
     return stringFormat;

Reply via email to