Class Debug

  extended by de.grogra.util.Debug

public final class Debug
extends java.lang.Object

This helper class is used to control the debugging facilities. In each class that contains additional debug code, a flag is set by code similar to this one: private static final boolean DEBUG = Debug.debug("GLDisplay"); Making the flag private, static and final allows the javavm to perform some optimizations at runtime. For instance consider a statement like this one: if (DEBUG) { } The java compiler will generate bytecode for this statement and the code contained therein, but at runtime this code may be optimized away by the executing javavm, if the flag DEBUG was evaluated to false. By having each class query the debug state via the same function Debug.debug(), debugging of those classes can be easily enabled. The function debug() will look at the defined system properties for a property with the name "groimp.debug.", where is the string passed to the debug() function. If such a property is defined, debugging is enabled for that name and debug() returns true.

Reinhard Hemmerling

Field Summary
static java.lang.String DEBUG_PREFIX
Constructor Summary
Method Summary
static boolean debug(java.lang.String name)
          Returns true if debugging for that name was enabled.
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Detail


public static final java.lang.String DEBUG_PREFIX
See Also:
Constant Field Values
Constructor Detail


public Debug()
Method Detail


public static final boolean debug(java.lang.String name)
Returns true if debugging for that name was enabled.

name - symbol that is checked for debugging
true if debugging was enabled for that symbol