FileDocCategorySizeDatePackage
LoggingBase.javaAPI DocphoneME MR2 API (J2ME)6763Wed May 02 18:00:12 BST 2007com.sun.midp.log

LoggingBase

public class LoggingBase extends Object
The purpose of the logging service is to provide a standard means to report runtime information from within Java or native code. The porting process is eased by having to modify one logging service implementation in place of handling the ad hoc use of println(), printf(), putc(), and other functions currently used. An assert mechanism for Java code, implemented using the logging service is also provided here for convenience. This class consists of the Java interface to the functionality of the logging service.

Fields Summary
public static final int
INFORMATION
A default reporting severity level. This level is the lowest standard message reporting severity. It represents general reporting information and is typically not associated with any significant condition.
public static final int
WARNING
A reporting severity level. This level represents a warning severity, indicating an unexpected condition which is typically fully recoverable. Some action may be appropriate to correct the condition.
public static final int
ERROR
A reporting severity level. This level represents an error severity, indicating an unexpected condition which is typically at least partially recoverable. Some action is expected to correct the condition.
public static final int
CRITICAL
A reporting severity level. This level represents the most severe error occurrence, indicating an unexpected condition which is typically not recoverable or catastrophic to the system in some way. Some action is required to correct the condition.
public static final int
DISABLED
A reporting severity level that should be used to disable all reporting output and allow all bytecodes relating to the report() method reporting to be compiled out of the build.
public static final int
CURRENT
Current reporting severity level. When used as an argument to setReportLevel(), indicates that the current log level should not be changed.
Constructors Summary
Methods Summary
public static voidassertTrue(boolean condition, java.lang.String message)
Report a message to the Logging service in the event that condition is false. The message string should include enough description that someone reading the message will have enough context to find the failed assertion. A use example:

if (Logging.ASSERT_ENABLED){
Logging.assertTrue([(boolean)conditional], "useful message");
}
This method reports nothing if message is null.

param
condition asserted to be true by the caller. message is logged if false.
param
message message to go with the report if the assert fails (when condition is false.

        if (!condition) {
            report(Logging.ERROR, LogChannels.LC_NONE, "ASSERT FAILED: "
            + message);
        }
    
public static native voidreport(int severity, int channelID, java.lang.String message)
Report a message to the Logging service. The message string should include enough description that someone reading the message will have enough context to diagnose and solve any problems if necessary. The severity level should be one of:
  • INFORMATION
  • WARNING
  • ERROR
  • CRITICAL
and should properly reflect the severity of the message. The channel identifier should be one of the pre defined channels listed in the LogChannels.java file.
A use example:

if (Logging.REPORT_LEVEL <= severity) {
Logging.report(Logging.<severity>,
LogChannels.<channel>,
"[meaningful message]");
}
No output will occur if message is null.

param
severity severity level of report
param
channelID area report relates to, from LogChannels.java
param
message message to go with the report

public static voidtrace(java.lang.Throwable t, java.lang.String message)
Obtain a stack trace from the Logging service, and report a message to go along with it. The message string should include enough description that someone reading the message will have enough context to diagnose and solve any problems if necessary. A use example:
} catch (Throwable t) {
if (Logging.TRACE_ENABLED) {
Logging.trace(t, "[meaningful message]");
}
}
This method does nothing if either t or message is null.

param
t throwable causing this trace call
param
message detail message for the trace log


                                                                                                                                                                                               
           
				      


                                                                                                               
           

	if (t != null) {
	    System.out.println("TRACE: <at " + t.toString() + ">, " + message);
	    t.printStackTrace();
	}