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