Package org.eclipse.m2m.atl.emftvm.impl.resource

# Class EMFTVMResourceImpl

java.lang.Object
org.eclipse.emf.common.notify.impl.BasicNotifierImpl
org.eclipse.emf.common.notify.impl.NotifierImpl
org.eclipse.emf.ecore.resource.impl.ResourceImpl
org.eclipse.m2m.atl.emftvm.impl.resource.EMFTVMResourceImpl

All Implemented Interfaces:
  `org.eclipse.emf.common.notify.Notifier`, `org.eclipse.emf.ecore.resource.Resource`, `org.eclipse.emf.ecore.resource.Resource.Internal`

public class EMFTVMResourceImpl extends org.eclipse.emf.ecore.resource.impl.ResourceImpl
EMF `ResourceImpl` for the EMFTVM binary module format.

## Nested Class Summary

## Nested classes/interfaces inherited from class org.eclipse.emf.ecore.resource.impl.ResourceImpl

`org.eclipse.emf.ecore.resource.impl.ResourceImpl.ContentsEList<E extends Object & org.eclipse.emf.ecore.EObject>, org.eclipse.emf.ecore.resource.impl.ResourceImpl.ModificationTrackingAdapter`

## Nested classes/interfaces inherited from class org.eclipse.emf.common.notify.impl.BasicNotifierImpl

`org.eclipse.emf.common.notify.impl.BasicNotifierImpl.EAdapterList<E extends Object & org.eclipse.emf.common.notify.Adapter>, org.eclipse.emf.common.notify.impl.BasicNotifierImpl.EObservableAdapterList, org.eclipse.emf.common.notify.impl.BasicNotifierImpl.EScannableAdapterList`

## Nested classes/interfaces inherited from interface org.eclipse.emf.ecore.resource.Resource

`org.eclipse.emf.ecore.resource.Resource.Diagnostic, org.eclipse.emf.ecore.resource.Resource.Factory, org.eclipse.emf.ecore.resource.Resource.Internal, org.eclipse.emf.ecore.resource.Resource.IOWrappedException`

## Field Summary

Fields
Modifier and Type
Field
Description
`static final int`
`BYTECODE_VERSION`
Current - and highest supported - bytecode format version.
`protected static final EmftvmFactory`
`FACTORY`
EMFTVM bytecode model element factory.
`static final int`
`MAGIC_00`
Magic header part 1: "EMFT".
`static final int`
`MAGIC_01`
Magic header part 2: "VM..".
`static final int`
`MAGIC_LEGACY`
Legacy magic header: "ETVM".
`static final int`
`TRACE_MODE_DEFAULT`
Default trace mode value.
`static final int`
`TRACE_MODE_UNIQUE`
Unique trace mode value.

### Fields inherited from class org.eclipse.emf.ecore.resource.impl.ResourceImpl

`contents, defaultDeleteOptions, defaultLoadOptions, defaultSaveOptions, errors, intrinsicIDToEObjectMap, isLoaded, isLoading, isModified, modificationTrackingAdapter, resourceSet, timeStamp, unloadingContents, uri, warnings`

### Fields inherited from class org.eclipse.emf.common.notify.impl.NotifierImpl

`eAdapters, EDELIVER, eFlags, ELAST_NOTIFIER_FLAG`

### Fields inherited from interface org.eclipse.emf.ecore.resource.Resource

`OPTION_CIPHER, OPTION_LINE_DELIMITER, OPTION_LINE_DELIMITER_UNSPECIFIED, OPTION_SAVE_ONLY_IF_CHANGED, OPTION_SAVE_ONLY_IF_CHANGED_FILE_BUFFER, OPTION_SAVE_ONLY_IF_CHANGED_MEMORY_BUFFER, OPTION_ZIP, RESOURCE__CONTENTS, RESOURCE__ERRORS, RESOURCE__IS_LOADED, RESOURCE__IS_MODIFIED, RESOURCE__IS_TRACKING_MODIFICATION, RESOURCE__RESOURCE_SET, RESOURCE__TIME_STAMP, RESOURCE__URI, RESOURCE__WARNINGS`

## Constructor Summary

Constructors
Constructor
Description
`EMFTVMResourceImpl()`
Creates a new `EMFTVMResourceImpl`.
`EMFTVMResourceImpl(org.eclipse.emf.common.util.URI uri)`
Creates a new `EMFTVMResourceImpl` from a URI.

## Method Summary

Modifier and Type
Method
Description
`protected void`
`doLoad(InputStream inputStream, Map<?,?> options)`
`protected void`
`doSave(OutputStream outputStream, Map<?,?> options)`
`protected Module`
`findModule()`
Finds the `Module` in this resource.
`int`
`getBytecodeVersion()`
Returns the bytecode format version of the loaded file.
`protected void`
`setBytecodeVersion(int bytecodeVersion)`
Sets the bytecode format version of the loaded file.

### Methods inherited from class org.eclipse.emf.ecore.resource.impl.ResourceImpl

`addModificationTrackingAdapters, attached, attachedHelper, basicSetResourceSet, createModificationTrackingAdapter, delete, detached, detachedHelper, doUnload, getAllContents, getAllProperContents, getAllProperContents, getContents, getDefaultURIConverter, getEObject, getEObject, getEObjectByID, getEObjectForURIFragmentRootSegment, getErrors, getIDForEObject, getIntrinsicIDToEObjectMap, getResourceSet, getTimeStamp, getUnloadingContents, getURI, getURIConverter, getURIFragment, getURIFragmentRootSegment, getWarnings, handleLoadResponse, handleSaveResponse, isAttachedDetachedHelperRequired, isContentZipEntry, isLoaded, isLoading, isModified, isTrackingModification, load, load, mergeMaps, newContentZipEntry, removeModificationTrackingAdapters, save, save, saveOnlyIfChangedWithFileBuffer, saveOnlyIfChangedWithMemoryBuffer, setIntrinsicIDToEObjectMap, setLoaded, setModified, setTimeStamp, setTrackingModification, setURI, supportIDRelativeURIFragmentPaths, toKeyString, toString, unload, unloaded, useZip`

### Methods inherited from class org.eclipse.emf.common.notify.impl.NotifierImpl

`eAdapters, eBasicAdapters, eDeliver, eSetDeliver`

### Methods inherited from class org.eclipse.emf.common.notify.impl.BasicNotifierImpl

`eBasicAdapterArray, eBasicHasAdapters, eNotificationRequired, eNotify`

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

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

### Methods inherited from interface org.eclipse.emf.common.notify.Notifier

`eAdapters, eDeliver, eNotify, eSetDeliver`

## Field Details

### MAGIC_LEGACY

public static final int MAGIC_LEGACY
Legacy magic header: "ETVM".

See Also:
  - http://www.asciitable.com/
  - Constant Field Values

### MAGIC_00

public static final int MAGIC_00
Magic header part 1: "EMFT".

See Also:
  - http://www.asciitable.com/
  - Constant Field Values

### MAGIC_01

public static final int MAGIC_01
Magic header part 2: "VM..".

See Also:
  - http://www.asciitable.com/
  - Constant Field Values

### BYTECODE_VERSION

public static final int BYTECODE_VERSION
Current - and highest supported - bytecode format version.

See Also:
  - Constant Field Values

### TRACE_MODE_DEFAULT

public static final int TRACE_MODE_DEFAULT
Default trace mode value.

See Also:
  - Constant Field Values

### TRACE_MODE_UNIQUE

public static final int TRACE_MODE_UNIQUE
Unique trace mode value.

See Also:
  - Constant Field Values

### FACTORY

protected static final EmftvmFactory FACTORY
EMFTVM bytecode model element factory.

## Constructor Details

### EMFTVMResourceImpl

public EMFTVMResourceImpl()
Creates a new `EMFTVMResourceImpl`.

### EMFTVMResourceImpl

public EMFTVMResourceImpl(org.eclipse.emf.common.util.URI uri)
Creates a new `EMFTVMResourceImpl` from a URI.

Parameters:
  `uri` - the resource URI

## Method Details

### getBytecodeVersion

public int getBytecodeVersion()
Returns the bytecode format version of the loaded file.

Returns:
  the bytecodeVersion

### setBytecodeVersion

protected void setBytecodeVersion(int bytecodeVersion)
Sets the bytecode format version of the loaded file.

Parameters:
  `bytecodeVersion` - the bytecodeVersion to set

### doLoad

protected void doLoad(InputStream inputStream, Map<?,?> options) throws IOException

Overrides:
  `doLoad` in class `org.eclipse.emf.ecore.resource.impl.ResourceImpl`
Throws:
  `IOException`

### doSave

protected void doSave(OutputStream outputStream, Map<?,?> options) throws IOException

Overrides:
  `doSave` in class `org.eclipse.emf.ecore.resource.impl.ResourceImpl`
Throws:
  `IOException`

### findModule

protected Module findModule() throws IOException
Finds the `Module` in this resource.

Returns:
  the module
Throws:
  `IOException` - if no module - or more than one module - found