org.eclipse.ease.lang.jvm.compiled

## Class JVMCompiledScriptEngine

- java.lang.Object
- - org.eclipse.core.runtime.PlatformObject
  - - org.eclipse.core.internal.jobs.InternalJob
    - - org.eclipse.core.runtime.jobs.Job
      - - org.eclipse.ease.AbstractScriptEngine
        - - org.eclipse.ease.lang.jvm.compiled.JVMCompiledScriptEngine

All Implemented Interfaces:
  java.lang.Comparable, IAdaptable, IScriptEngine

    public class JVMCompiledScriptEngine
    extends AbstractScriptEngine
    implements IScriptEngine

### Field Summary

### Fields inherited from class org.eclipse.core.runtime.jobs.Job

`ASYNC_FINISH, BUILD, DECORATE, INTERACTIVE, LONG, NONE, RUNNING, SHORT, SLEEPING, WAITING`

### Fields inherited from interface org.eclipse.ease.IScriptEngine

`TRACE_SCRIPT_ENGINE`

### Constructor Summary

Constructors
Constructor and Description
`JVMCompiledScriptEngine()`

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`static java.lang.Class<?>` `loadClass(java.lang.Object reference)` Loads a class definition for a given source file.
`void` `registerJar(java.net.URL url)` Register a jar file and add it to the classpath.
`void` `terminateCurrent()` Stops the currently executed piece of code.

### Methods inherited from class org.eclipse.ease.AbstractScriptEngine

`addExecutionListener, addSecurityCheck, executeAsync, executeSync, extractArguments, getCurrentScriptEngine, getDescription, getErrorStream, getExecutedFile, getInputStream, getLaunch, getMonitor, getOutputStream, getStackTrace, getVariable, getVariables, hasVariable, inject, injectUI, isFinished, join, removeExecutionListener, removeSecurityCheck, setCloseStreamsOnTerminate, setEngineDescription, setErrorStream, setExecutionRootFile, setInputStream, setLaunch, setOutputStream, setVariable, terminate`

### Methods inherited from class org.eclipse.core.runtime.jobs.Job

`addJobChangeListener, belongsTo, cancel, create, create, createSystem, createSystem, createSystem, done, getJobGroup, getJobManager, getName, getPriority, getProperty, getResult, getRule, getState, getThread, isBlocking, isSystem, isUser, join, join, removeJobChangeListener, schedule, schedule, setJobGroup, setName, setPriority, setProgressGroup, setProperty, setRule, setSystem, setThread, setUser, shouldRun, shouldSchedule, sleep, toString, wakeUp, wakeUp, yieldRule`

### Methods inherited from class org.eclipse.core.internal.jobs.InternalJob

`compareTo`

### Methods inherited from class org.eclipse.core.runtime.PlatformObject

`getAdapter`

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface org.eclipse.ease.IScriptEngine

`addExecutionListener, addSecurityCheck, executeAsync, executeSync, getDescription, getErrorStream, getExecutedFile, getInputStream, getLaunch, getMonitor, getName, getOutputStream, getVariable, getVariables, hasVariable, inject, injectUI, isFinished, join, removeExecutionListener, removeSecurityCheck, schedule, setCloseStreamsOnTerminate, setErrorStream, setInputStream, setOutputStream, setVariable, terminate`

### Methods inherited from interface org.eclipse.core.runtime.IAdaptable

`getAdapter`

### Constructor Detail

#### JVMCompiledScriptEngine

    public JVMCompiledScriptEngine()

### Method Detail

#### terminateCurrent

    public void terminateCurrent()

Description copied from interface: `IScriptEngine`
Stops the currently executed piece of code. Will continue to execute the next scheduled piece of code.

Specified by:
  `terminateCurrent` in interface `IScriptEngine`

#### registerJar

    public void registerJar(java.net.URL url)

Description copied from interface: `IScriptEngine`
Register a jar file and add it to the classpath. After registering, classes within the jar file shall be usable within the script.

Specified by:
  `registerJar` in interface `IScriptEngine`
Parameters:
  `url` - url to load jar file from

#### loadClass

    public static java.lang.Class<?> loadClass(java.lang.Object reference)
                                        throws org.eclipse.jdt.core.JavaModelException,
                                               java.net.MalformedURLException,
                                               java.lang.ClassNotFoundException

Loads a class definition for a given source file.

Parameters:
  `reference` - file name or `IFile` instance of the source file.
Returns:
  class definition
Throws:
  `java.lang.ClassNotFoundException` - If the class was not found
  `org.eclipse.jdt.core.JavaModelException`
  `java.net.MalformedURLException`