1 31 32 package org.opencms.test; 33 34 import org.apache.log4j.ConsoleAppender; 35 import org.apache.log4j.Priority; 36 import org.apache.log4j.spi.LoggingEvent; 37 38 49 public class OpenCmsTestLogAppender extends ConsoleAppender { 50 51 private static boolean m_breakOnError = false; 53 54 59 public static void setBreakOnError(boolean value) { 60 m_breakOnError = value; 61 } 62 63 66 public void append(LoggingEvent logEvent) { 67 68 super.append(logEvent); 70 71 if (m_breakOnError) { 72 int logLevel = logEvent.getLevel().toInt(); 73 switch (logLevel) { 74 case Priority.ERROR_INT: 75 case Priority.FATAL_INT: 76 if (logEvent.getThrowableInformation() != null) { 77 if (logEvent.getThrowableInformation().getThrowable() != null) { 78 throw new RuntimeException ( 79 logEvent.getRenderedMessage(), 80 logEvent.getThrowableInformation().getThrowable()); 81 } 82 } 83 throw new RuntimeException (logEvent.getRenderedMessage()); 84 default: 85 } 87 } 88 } 89 } 90 | Popular Tags |