Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 


Eclipse JDT
Release 3.5

org.eclipse.jdt.debug.eval
Interface IEvaluationEngine

All Known Subinterfaces:
IAstEvaluationEngine, IClassFileEvaluationEngine

public interface IEvaluationEngine

An evaluation engine performs an evaluation of a code snippet or expression in a specified thread of a debug target. An evaluation engine is associated with a specific debug target and Java project on creation.

Since:
2.0
See Also:
IEvaluationResult, IEvaluationListener
Restriction:
This interface is not intended to be implemented by clients.
Restriction:
This interface is not intended to be extended by clients.

Method Summary
 void dispose ()
          Disposes this evaluation engine.
 void evaluate ( String snippet, IJavaObject thisContext, IJavaThread thread, IEvaluationListener listener, int evaluationDetail, boolean hitBreakpoints)
          Asynchronously evaluates the given snippet in the context of the specified type, reporting the result back to the given listener.
 void evaluate ( String snippet, IJavaStackFrame frame, IEvaluationListener listener, int evaluationDetail, boolean hitBreakpoints)
          Asynchronously evaluates the given snippet in the context of the specified stack frame, reporting the result back to the given listener.
  IJavaDebugTarget getDebugTarget ()
          Returns the debug target for which evaluations are executed.
  IJavaProject getJavaProject ()
          Returns the Java project in which expressions are compiled.
 

Method Detail

evaluate

void evaluate(
String snippet,
              
IJavaStackFrame frame,
              
IEvaluationListener listener,
              int evaluationDetail,
              boolean hitBreakpoints)
              throws 
DebugException
Asynchronously evaluates the given snippet in the context of the specified stack frame, reporting the result back to the given listener. The snippet is evaluated in the context of the Java project this evaluation engine was created on. If the snippet is determined to be a valid expression, the expression is evaluated in the thread associated with the given stack frame. The thread is resumed from the location at which it is currently suspended to perform the evaluation. When the evaluation completes, the thread will be suspended at this original location. The thread runs the evaluation with the given evaluation detail (@see IJavaThread#runEvaluation(IEvaluationRunnable, IProgressMonitor, int)). Compilation and runtime errors are reported in the evaluation result.

Parameters:
snippet - code snippet to evaluate
frame - the stack frame context in which to run the evaluation.
listener - the listener that will receive notification when/if the evaluation completes
evaluationDetail - one of DebugEvent.EVALUATION or DebugEvent.EVALUATION_IMPLICIT
hitBreakpoints - whether or not breakpoints should be honored in the evaluation thread during the evaluation. If false, breakpoints hit in the evaluation thread will be ignored.
Throws:
DebugException - if this method fails. Reasons include:
  • Failure communicating with the VM. The DebugException's status code contains the underlying exception responsible for the failure.
  • The associated thread is not currently suspended
  • The stack frame is not contained in the debug target associated with this evaluation engine
  • The associated thread is suspended in the middle of an evaluation that has not completed. It is not possible to perform nested evaluations

evaluate

void evaluate(
String snippet,
              
IJavaObject thisContext,
              
IJavaThread thread,
              
IEvaluationListener listener,
              int evaluationDetail,
              boolean hitBreakpoints)
              throws 
DebugException
Asynchronously evaluates the given snippet in the context of the specified type, reporting the result back to the given listener. The snippet is evaluated in the context of the Java project this evaluation engine was created on. If the snippet is determined to be a valid expression, the expression is evaluated in the thread associated with the given stack frame. The thread is resumed from the location at which it is currently suspended to perform the evaluation. When the evaluation completes, the thread will be suspended at this original location. The thread runs the evaluation with the given evaluation detail (@see IJavaThread#runEvaluation(IEvaluationRunnable, IProgressMonitor, int)). Compilation and runtime errors are reported in the evaluation result.

Parameters:
snippet - code snippet to evaluate
thisContext - the 'this' context for the evaluation
thread - the thread in which to run the evaluation, which must be suspended
listener - the listener that will receive notification when/if the evaluation completes
evaluationDetail - one of DebugEvent.EVALUATION or DebugEvent.EVALUATION_IMPLICIT
hitBreakpoints - whether or not breakpoints should be honored in the evaluation thread during the evaluation. If false, breakpoints hit in the evaluation thread will be ignored.
Throws:
DebugException - if this method fails. Reasons include:
  • Failure communicating with the VM. The DebugException's status code contains the underlying exception responsible for the failure.
  • The associated thread is not currently suspended
  • The specified thread is not contained in the debug target associated with this evaluation engine
  • The associated thread is suspended in the middle of an evaluation that has not completed. It is not possible to perform nested evaluations

getJavaProject

IJavaProject getJavaProject()
Returns the Java project in which expressions are compiled.

Returns:
Java project context

getDebugTarget

IJavaDebugTarget getDebugTarget()
Returns the debug target for which evaluations are executed.

Returns:
Java debug target

dispose

void dispose()
Disposes this evaluation engine. This causes the evaluation engine to cleanup any resources (such as threads) that it maintains. Clients should call this method when they are finished performing evaluations with this engine. This engine must not be used to perform evaluations after it has been disposed.


Eclipse JDT
Release 3.5

Copyright (c) IBM Corp. and others 2000, 2008. All Rights Reserved.

 
 
  Published under the terms of the Eclipse Public License Version 1.0 ("EPL") Design by Interspire