summaryrefslogtreecommitdiff
path: root/qadevOOo/runner/stats/InternalLogWriter.java
diff options
context:
space:
mode:
authorSteffen Grund <sg@openoffice.org>2003-03-31 16:07:17 +0000
committerSteffen Grund <sg@openoffice.org>2003-03-31 16:07:17 +0000
commit2bd0a90321263148d40d1f9ae3940136c2a2b51d (patch)
tree66199c844658619cac63491bb8d063605aa08afc /qadevOOo/runner/stats/InternalLogWriter.java
parent5490acf4b6cba03f869e993a8d3013bc2d5026c0 (diff)
CHG: readded fixed version
Diffstat (limited to 'qadevOOo/runner/stats/InternalLogWriter.java')
-rw-r--r--qadevOOo/runner/stats/InternalLogWriter.java150
1 files changed, 150 insertions, 0 deletions
diff --git a/qadevOOo/runner/stats/InternalLogWriter.java b/qadevOOo/runner/stats/InternalLogWriter.java
new file mode 100644
index 000000000000..9426e73a7978
--- /dev/null
+++ b/qadevOOo/runner/stats/InternalLogWriter.java
@@ -0,0 +1,150 @@
+/*************************************************************************
+ *
+ * $RCSfile: InternalLogWriter.java,v $
+ *
+ * $Revision: 1.3 $
+ *
+ * last change:$Date: 2003-03-31 17:07:17 $
+ *
+ * The Contents of this file are made available subject to the terms of
+ * either of the following licenses
+ *
+ * - GNU Lesser General Public License Version 2.1
+ * - Sun Industry Standards Source License Version 1.1
+ *
+ * Sun Microsystems Inc., October, 2000
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2000 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ *
+ * Sun Industry Standards Source License Version 1.1
+ * =================================================
+ * The contents of this file are subject to the Sun Industry Standards
+ * Source License Version 1.1 (the "License"); You may not use this file
+ * except in compliance with the License. You may obtain a copy of the
+ * License at http://www.openoffice.org/license.html.
+ *
+ * Software provided under this License is provided on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
+ * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
+ * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
+ * See the License for the specific provisions governing your rights and
+ * obligations concerning the Software.
+ *
+ * The Initial Developer of the Original Code is: Sun Microsystems, Inc.
+ *
+ * Copyright: 2000 by Sun Microsystems, Inc.
+ *
+ * All Rights Reserved.
+ *
+ * Contributor(s): _______________________________________
+ *
+ *
+ ************************************************************************/
+package stats;
+
+import java.io.PrintWriter;
+import java.io.StringWriter;
+
+/**
+ * Write all logs into a java.io.PrintWriter, i.e. a StringBuffer.
+ * Log is gathered there.
+ */
+public class InternalLogWriter extends PrintWriter
+ implements share.LogWriter {
+ /** log active **/
+ boolean active;
+ /** write all output to a StringBuffer **/
+ static StringWriter writer = new StringWriter();
+
+ /**
+ * c'*tor
+ */
+ public InternalLogWriter() {
+ super(new PrintWriter(writer));
+ active = true;
+ }
+
+ /**
+ * Initialization.
+ * @param entry The description entry.
+ * @param active Logging is active.
+ * @return True, if initialize worked.
+ */
+ public boolean initialize(share.DescEntry entry, boolean active) {
+ this.active = active;
+ return true;
+ }
+
+ /**
+ * Method to print a line that is added to the StringBuffer.
+ * @param msg The message that is printed.
+ */
+ public void println(String msg) {
+ if (active)
+ super.println(msg);
+ }
+
+ /**
+ * Method to print to the StringBuffer.
+ * @param msg The message that is printed.
+ */
+ public void print(String msg) {
+ if (active)
+ super.print(msg);
+
+ }
+
+ /**
+ * Is used to sum up the information.
+ * The summary is also added to the StringBuffer.
+ * @param entry The description entry.
+ * @return True, if a summary could be created.
+ */
+ public boolean summary(share.DescEntry entry) {
+// linePrefix = "";
+ String header = "***** State for "+entry.longName+" ******";
+ println(header);
+ if (entry.hasErrorMsg) {
+ println(entry.ErrorMsg);
+ println("Whole "+entry.EntryType+": "+entry.State);
+ } else {
+ println("Whole "+entry.EntryType+": "+entry.State);
+ }
+ for (int i=0;i<header.length();i++) {
+ print("*");
+ }
+ println("");
+ return true;
+ }
+
+ /**
+ * Return all the written stuff.
+ * @return All that was written to the StringBuffer with the
+ * 'println()', 'print()' and 'summarize()' methods.
+ * The StringBuffer is emptied afterwards.
+ **/
+ public String getLog() {
+ String message = writer.getBuffer().toString();
+ writer = new StringWriter();
+ return message;
+ }
+}
+