package org.eclipse.jdt.debug.core; | |
/* | |
* (c) Copyright IBM Corp. 2000, 2001. | |
* All Rights Reserved. | |
*/ | |
import org.eclipse.debug.core.DebugException; | |
import org.eclipse.debug.core.model.IDebugTarget; | |
import org.eclipse.debug.core.model.IVariable; | |
/** | |
* A Java debug target is an extension of a regular debug | |
* target, providing support specific to the JDI debug model. | |
* A Java debug target is also available as an adapter from | |
* debug targets originating from the JDI debug model. | |
* <p> | |
* Clients are not intended to implement this interface. | |
* </p> | |
* <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to | |
* change significantly before reaching stability. It is being made available at this early stage to solicit feedback | |
* from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken | |
* (repeatedly) as the API evolves. | |
* </p> | |
* @see IDebugTarget | |
* @see org.eclipse.core.runtime.IAdaptable | |
*/ | |
public interface IJavaDebugTarget extends IDebugTarget { | |
/** | |
* Searches for and returns a variable with the given name, | |
* or <code>null</code> if unable to resolve a variable with the name. | |
* <p> | |
* Variable lookup works only when a debug target has one or more | |
* threads suspended. Lookup is performed in each suspended thread, | |
* returning the first successful match, or <code>null</code> if no | |
* match if found. If this debug target has no suspended threads, | |
* <code>null</code> is returned. | |
* </p> | |
* @param variableName name of the variable | |
* @return a variable with the given name, or <code>null</code> if none | |
* @exception DebugException if this method fails. Reasons include: | |
* <ul> | |
* <li>Failure communicating with the VM. The DebugException's | |
* status code contains the underlying exception responsible for | |
* the failure.</li> | |
* </ul> | |
*/ | |
IVariable findVariable(String variableName) throws DebugException; | |
} |