org.eclipse.ease.lang.scriptarchive

## Class ArchiveEngine

- 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.scriptarchive.ArchiveEngine

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

    public class ArchiveEngine
    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
`ArchiveEngine()`

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`static java.io.InputStream` `getArchiveStream(java.lang.Object archive, java.lang.String filename)` Get a file from an archive as an input stream.
`static java.util.Properties` `getManifest(java.lang.Object archive)`
`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

#### ArchiveEngine

    public ArchiveEngine()

### Method Detail

#### getArchiveStream

    public static java.io.InputStream getArchiveStream(java.lang.Object archive,
                                                       java.lang.String filename)

Get a file from an archive as an input stream. As the stream is returned directly, it needs to be closed by the calling method.

Parameters:
  `archive` - archive source: file, stream or uri
  `filename` - name of file within archive to look for
Returns:
  `InputStream` or `null`

#### getManifest

    public static java.util.Properties getManifest(java.lang.Object archive)

#### 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

#### 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`