*) Bugfix for "Gehäuselautsprecher" Bug

If de.anomic.server.logging.ConsoleOutErrHandler.ignoreCtrlChr is set to true all control chars except 
   space,tab,newline, are replaced with spaces
   See: http://www.yacy-forum.de/viewtopic.php?p=5528

git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@578 6c8d7289-2bf4-0310-a012-ef5d649a1542
pull/1/head
theli 20 years ago
parent 5f55dff297
commit dc7c5237fb

@ -9,8 +9,9 @@ import java.util.logging.LogManager;
import java.util.logging.LogRecord;
import java.util.logging.SimpleFormatter;
public class ConsoleOutErrHandler extends Handler{
public final class ConsoleOutErrHandler extends Handler{
private boolean ignoreCtrlChr = false;
private Level splitLevel = Level.WARNING;
private final Handler stdOutHandler = new ConsoleOutHandler();
private final Handler stdErrHandler = new ConsoleHandler();
@ -41,6 +42,10 @@ public class ConsoleOutErrHandler extends Handler{
String formatter = manager.getProperty(className + ".formatter");
setFormatter(makeFormatter(formatter));
String ignoreCtrlChrStr = manager.getProperty(className + ".ignoreCtrlChr");
this.ignoreCtrlChr = (ignoreCtrlChrStr.equalsIgnoreCase("true"));
}
private Level parseLevel(String levelName) {
@ -83,6 +88,14 @@ public class ConsoleOutErrHandler extends Handler{
public void publish(LogRecord record) {
if (!isLoggable(record)) return;
if (this.ignoreCtrlChr) {
String msg = record.getMessage();
if (msg != null) {
msg = msg.replaceAll("[\u0000-\u0008\u000B\u000C\u000E-\u001F]"," ");
}
record.setMessage(msg);
}
if (record.getLevel().intValue() >= splitLevel.intValue()) {
this.stdErrHandler.publish(record);
} else {

@ -39,5 +39,7 @@ de.anomic.server.logging.ConsoleOutErrHandler.level = ALL
de.anomic.server.logging.ConsoleOutErrHandler.levelStdOut = ALL
de.anomic.server.logging.ConsoleOutErrHandler.levelSplit = WARNING
de.anomic.server.logging.ConsoleOutErrHandler.levelStdErr = ALL
de.anomic.server.logging.ConsoleOutErrHandler.ignoreChr7 = FALSE
de.anomic.server.logging.ConsoleOutErrHandler.formatter=de.anomic.server.logging.serverSimpleLogFormatter
de.anomic.server.logging.ConsoleOutErrHandler.ignoreCtrlChr=true

Loading…
Cancel
Save