DebugSvc Class

com.bea.ide.debug
DebugSvc Class

public class DebugSvc

    extends Object

This is the service that allows the IDE to get debugging objects.

In order to register debugger views to be used in the locals, watches, and immediate windows, add the following to extension.xml:

<extension-xml id="urn:com-bea-ide:debugExpressionViews">
    <view priority="PRIORITY" valueType="VALUETYPE" description="DESCRIPTION"
        class="VIEWCLASSNAME" matchesNulls="MATCHESNULLS" /> </extension-xml>

PRIORITY is an integer and is used to determine which is the default view for a given type. The view that matches and has the lowest value for its priority will be chosen, unless the user has explicity set a specific view to be used as the default.
VALUETYPE is a string and is used to determine which views are valid for a particular value. It may be *, a class name or an interface name. * matches all types. If the value is null but its declared type is known (as in, the variable is declared to be a java.lang.StringBuffer but its value is null), the declared type will be used to choose a view. However, the declared type is not known in all cases.
DESCRIPTION is a string that will be shown to the user when the list of matching views is displayed.
VIEWCLASSNAME is a string of the fully qualified class name of the view. See IDebugExpressionView for information about implementing a customized view.
MATCHESNULL is a boolean ("true" or "false") as to whether the view can be used to display null values of a particular type. This attribute is optional, and defaults to false.

If there are exceptions thrown when instantiating a debugger view, they will be logged to the ide.log file, and the matching view with the next highest priority will be instantiated. Common causes of problems include classpath issues that prevent the class from being found by the classloader, not having a public no-arg constructor, or having an exception thrown in the view's constructor.


Hierarchy
Object
  DebugSvc

Nested Class Summary

public static interfaceDebugSvc.I
           the interface retuned for the debugging services.
public static interfaceDebugSvc.IBreakpointListener
           The listener interface that can be passed to DebugSvc.I.addBreakpointListener and DebugSvc.I.removeBreakpointListener to listen on breakpoints being added, removed, disabled or changed.
public static interfaceDebugSvc.IDebugListener
           The listener interface that can be passed to DebugSvc.I.addDebugListener or DebugSvc.I.removeDebugListener to listen to debug state changes.
public static interfaceDebugSvc.ISourcePathElement
           an interface implemented by elements in the search path list.
public static classDebugSvc.NullDebugSvc
           An implementation of DebugSvc.I that does nothing.

Field Summary

protected static DebugSvc.I
instance
The cached instance of DebugSvc.I.
public static final DebugSvc.I
NULL_DEBUG_SVC
The empty DebugSvc implementation.
public static final String
PROP_BREAKPOINTS
The PROP_BREAKPOINTS change event will be called when a breakpoint is either added or removed.
public static final String
PROP_BREAKPOINTS_ENABLED
The PROP_BREAKPOINTS_ENABLED change listener will be called whenever the number of enabled breakpoints changes, or the number of disabled breakpoints changes.
public static final String
PROP_CURRENT_DEBUG_DATA
Property name for the DebugData that's currently in use.
 

Constructor Summary

DebugSvc()

 

Method Summary

public static DebugSvc.I
get()
static method that gets the debugger services interface.
 
Methods from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
   

Field Detail

instance

protected static DebugSvc.I instance
The cached instance of DebugSvc.I.


NULL_DEBUG_SVC

public static final DebugSvc.I NULL_DEBUG_SVC
The empty DebugSvc implementation. If there is no Debug Svc, this will be the object returned from DebugSvc.get()


PROP_BREAKPOINTS

public static final String PROP_BREAKPOINTS
The PROP_BREAKPOINTS change event will be called when a breakpoint is either added or removed. In the case of an add, the newValue parameter will be the breakpoint, and the oldValue parameter will be null. In the case of a remove, the newValue parameter will be null, and the oldValue parameter will be the breakpoint that is being removed.


PROP_BREAKPOINTS_ENABLED

public static final String PROP_BREAKPOINTS_ENABLED
The PROP_BREAKPOINTS_ENABLED change listener will be called whenever the number of enabled breakpoints changes, or the number of disabled breakpoints changes. The event will be called with the number of enabled breakpoints as param1, and the number of total breakpoints as the second parameter.


PROP_CURRENT_DEBUG_DATA

public static final String PROP_CURRENT_DEBUG_DATA
Property name for the DebugData that's currently in use.

 

Constructor Detail

DebugSvc

public DebugSvc()
 

Method Detail

get() Method

public static DebugSvc.I get()
static method that gets the debugger services interface. If there is no instance, this will return NULL_DEBUG_SVC, an instance that will indicate a lack of debugging support.