Hello Thorbjørn,

I had not previously seen that you had already started working on logback-as400. Cool.

[email protected] wrote:
Author: ravn
Date: Mon Dec  1 14:03:23 2008
New Revision: 2044

Added:
   logback-incubator/trunk/logback-as400/src/main/java/ch/
   logback-incubator/trunk/logback-as400/src/main/java/ch/qos/
   logback-incubator/trunk/logback-as400/src/main/java/ch/qos/logback/
   logback-incubator/trunk/logback-as400/src/main/java/ch/qos/logback/as400/
   logback-incubator/trunk/logback-as400/src/main/java/ch/qos/logback/as400/io/
   
logback-incubator/trunk/logback-as400/src/main/java/ch/qos/logback/as400/io/FixedWidthPrintStream.java
   
logback-incubator/trunk/logback-as400/src/main/java/ch/qos/logback/as400/print/
   
logback-incubator/trunk/logback-as400/src/main/java/ch/qos/logback/as400/print/QPrintAppender.java

Log:
initial skeletons for QPrintAppender

Added: 
logback-incubator/trunk/logback-as400/src/main/java/ch/qos/logback/as400/io/FixedWidthPrintStream.java
==============================================================================
--- (empty file)
+++ 
logback-incubator/trunk/logback-as400/src/main/java/ch/qos/logback/as400/io/FixedWidthPrintStream.java
      Mon Dec  1 14:03:23 2008
@@ -0,0 +1,85 @@
+package ch.qos.logback.as400.io;
+
+import java.io.OutputStream;
+import java.io.PrintStream;
+
+/**
+ * FixedWidthPrintStream is a stream wrapper which ensures that the output does
+ * not get wider than the specified number of columns. + * + */
+public class FixedWidthPrintStream {
+
+       protected static final int BEFORE_COLUMN_ZERO = -1;
+
+       private String indent = "  +";
+       private int wrapColumn = 79;
+       private PrintStream originalStream;
+
+       private PrintStream thisStream;
+ /** + * @param originalStream
+        * @param wrapColumn - first column is column 0.
+        * @param indent
+        */
+
+       public PrintStream getStream() {
+               if (thisStream == null) {
+                       thisStream = new PrintStream(new OutputStream() {
+
+                               // Next char will go in 0
+                               int currentColumn = BEFORE_COLUMN_ZERO;
+
+                               public void write(int b) {
+                                       originalStream.write(b);
+                                       currentColumn = currentColumn + 1;
+
+                                       if (b == '\n') {
+                                               currentColumn = 
BEFORE_COLUMN_ZERO;
+                                       } else if (currentColumn >= wrapColumn) 
{
+                                               originalStream.write('\n');
+                                               currentColumn = 
BEFORE_COLUMN_ZERO;
+                                               for (int i = 0; i < 
indent.length(); i++) {
+                                                       
originalStream.write(indent.charAt(i));
+                                                       currentColumn = 
currentColumn + 1;
+                                               }
+                                       }
+                               }
+
+                               public void close() {
+                                       originalStream.close();
+                               }
+
+                               public void flush() {
+                                       originalStream.flush();
+                               }
+                       });
+               }
+               return thisStream;
+       }
+
+       public int getWrapColumn() {
+               return wrapColumn;
+       }
+
+       public void setWrapColumn(int wrapColumn) {
+               this.wrapColumn = wrapColumn;
+       }
+
+       public PrintStream getOriginalStream() {
+               return originalStream;
+       }
+
+       public void setOriginalStream(PrintStream wrappedStream) {
+               this.originalStream = wrappedStream;
+       }
+
+       public String getIndent() {
+               return indent;
+       }
+
+       public void setIndent(String indent) {
+               this.indent = indent;
+       }
+
+}

Added: 
logback-incubator/trunk/logback-as400/src/main/java/ch/qos/logback/as400/print/QPrintAppender.java
==============================================================================
--- (empty file)
+++ 
logback-incubator/trunk/logback-as400/src/main/java/ch/qos/logback/as400/print/QPrintAppender.java
  Mon Dec  1 14:03:23 2008
@@ -0,0 +1,20 @@
+package ch.qos.logback.as400.print;
+
+import ch.qos.logback.core.AppenderBase;
+
+/**
+ * + *
+ */
+public class QPrintAppender extends AppenderBase {
+
+
+       
+       @Override
+       protected void append(Object arg0) {
+               
+       }
+       
+       
+
+}
_______________________________________________
logback-dev mailing list
[email protected]
http://qos.ch/mailman/listinfo/logback-dev


--
Ceki Gülcü
Logback: The reliable, generic, fast and flexible logging framework for Java.
http://logback.qos.ch
_______________________________________________
logback-dev mailing list
[email protected]
http://qos.ch/mailman/listinfo/logback-dev

Reply via email to