org.eclipse.ocl.examples.debug.vm
Class VMVirtualMachine

java.lang.Object
  extended by org.eclipse.ocl.examples.debug.vm.VMVirtualMachine
All Implemented Interfaces:
IVMVirtualMachineShell
Direct Known Subclasses:
OCLVMVirtualMachine

public abstract class VMVirtualMachine
extends java.lang.Object
implements IVMVirtualMachineShell


Field Summary
static TracingOption LOCATION
           
protected  MetaModelManager metaModelManager
           
static TracingOption POST_VISIT
           
static TracingOption PRE_VISIT
           
protected  DebuggableRunner runner
           
static TracingOption VISITOR_STACK
           
static TracingOption VM_EVENT
           
static TracingOption VM_REQUEST
           
static TracingOption VM_RESPONSE
           
 
Constructor Summary
protected VMVirtualMachine(DebuggableRunner runner, VMDebuggableExecutorAdapter executorAdapter)
           
 
Method Summary
 VMStackFrameData createStackFrame(long frameID, java.util.List<UnitLocation> stack)
           
protected abstract  VMStackFrameData createStackFrame(UnitLocation location)
           
 org.eclipse.debug.core.model.IValue evaluate(java.lang.String expressionText, VMDebugTarget debugTarget, long frameID)
           
 EvaluationEnvironment getEvaluationEnv()
           
 MetaModelManager getMetaModelManager()
           
 DebuggableRunner getRunner()
           
 IDebuggableRunnerFactory getRunnerFactory()
           
 boolean isTerminated()
           
static UnitLocation lookupEnvironmentByID(long id, java.util.List<UnitLocation> stack)
           
 VMEvent readVMEvent()
           
 VMResponse sendRequest(VMRequest request)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.ocl.examples.debug.vm.IVMVirtualMachineShell
getDebugCore
 

Field Detail

LOCATION

@NonNull
public static final TracingOption LOCATION

PRE_VISIT

@NonNull
public static final TracingOption PRE_VISIT

POST_VISIT

@NonNull
public static final TracingOption POST_VISIT

VISITOR_STACK

@NonNull
public static final TracingOption VISITOR_STACK

VM_EVENT

@NonNull
public static final TracingOption VM_EVENT

VM_REQUEST

@NonNull
public static final TracingOption VM_REQUEST

VM_RESPONSE

@NonNull
public static final TracingOption VM_RESPONSE

runner

@NonNull
protected final DebuggableRunner runner

metaModelManager

@NonNull
protected final MetaModelManager metaModelManager
Constructor Detail

VMVirtualMachine

protected VMVirtualMachine(@NonNull
                           DebuggableRunner runner,
                           @NonNull
                           VMDebuggableExecutorAdapter executorAdapter)
Method Detail

lookupEnvironmentByID

@Nullable
public static UnitLocation lookupEnvironmentByID(long id,
                                                          @NonNull
                                                          java.util.List<UnitLocation> stack)

createStackFrame

@Nullable
public VMStackFrameData createStackFrame(long frameID,
                                                  @NonNull
                                                  java.util.List<UnitLocation> stack)

createStackFrame

@Nullable
protected abstract VMStackFrameData createStackFrame(@NonNull
                                                              UnitLocation location)

evaluate

public org.eclipse.debug.core.model.IValue evaluate(@NonNull
                                                    java.lang.String expressionText,
                                                    VMDebugTarget debugTarget,
                                                    long frameID)
                                             throws org.eclipse.core.runtime.CoreException
Throws:
org.eclipse.core.runtime.CoreException

getEvaluationEnv

@Nullable
public EvaluationEnvironment getEvaluationEnv()

getMetaModelManager

@NonNull
public MetaModelManager getMetaModelManager()

getRunner

@NonNull
public DebuggableRunner getRunner()

getRunnerFactory

@NonNull
public IDebuggableRunnerFactory getRunnerFactory()

isTerminated

public boolean isTerminated()
Specified by:
isTerminated in interface IVMVirtualMachineShell

readVMEvent

public VMEvent readVMEvent()
                    throws java.io.IOException
Specified by:
readVMEvent in interface IVMVirtualMachineShell
Throws:
java.io.IOException

sendRequest

@NonNull
public VMResponse sendRequest(@NonNull
                                      VMRequest request)
                       throws java.io.IOException
Specified by:
sendRequest in interface IVMVirtualMachineShell
Throws:
java.io.IOException