Package org.eclipse.m2m.atl.emftvm.compiler

## Class AtlResourceImpl

- 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.compiler.AtlResourceImpl

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

    public class AtlResourceImpl
    extends org.eclipse.emf.ecore.resource.impl.ResourceImpl

Wraps the ATL parser.

### Nested Class Summary

Nested Classes
`static class` `AtlResourceImpl.ATLIOException` `IOException` with nested `Exception`.
`class` `AtlResourceImpl.EMFModelWrapper` Wraps an `EMFModel` around this resource.

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

`org.eclipse.emf.ecore.resource.impl.ResourceImpl.ContentsEList<E extends java.lang.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 java.lang.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
`protected EMFModelFactory` `modelFactory`
`protected AtlResourceImpl.EMFModelWrapper` `modelWrapper`
`protected AtlParser` `parser`

### 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
`AtlResourceImpl()` Creates a new `AtlResourceImpl`.
`AtlResourceImpl​(org.eclipse.emf.common.util.URI uri)` Creates a new `AtlResourceImpl` for `uri`.

### Method Summary

All Methods Instance Methods Concrete Methods
`protected void` `doLoad​(java.io.InputStream inputStream, java.util.Map<?,​?> options)` Loads an ATL resource.
`protected void` `doSave​(java.io.OutputStream outputStream, java.util.Map<?,​?> options)` Saves an ATL resource.
`protected java.nio.charset.Charset` `getCharset()` Returns the `Charset` to use for the current `URI`.
`protected byte[]` `getRawContent()` Returns the raw concrete syntax for this resource.
`protected void` `registerEPackages​(org.eclipse.emf.ecore.resource.Resource res)` Registers any dynamic EPackage URIs in `res`.
`protected void` `setRawContent​(byte[] rawContent)` Sets the raw concrete syntax for this resource.

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

#### parser

    protected final AtlParser parser

#### modelWrapper

    protected final AtlResourceImpl.EMFModelWrapper modelWrapper

#### modelFactory

    protected final EMFModelFactory modelFactory

### Constructor Detail

#### AtlResourceImpl

    public AtlResourceImpl()

Creates a new `AtlResourceImpl`.

#### AtlResourceImpl

    public AtlResourceImpl​(org.eclipse.emf.common.util.URI uri)

Creates a new `AtlResourceImpl` for `uri`.

Parameters:
  `uri` - the resource's URI

### Method Detail

#### getRawContent

    protected byte[] getRawContent()

Returns the raw concrete syntax for this resource.

Returns:
  the rawContent

#### setRawContent

    protected void setRawContent​(byte[] rawContent)

Sets the raw concrete syntax for this resource.

Parameters:
  `rawContent` - the rawContent to set

#### doLoad

    protected void doLoad​(java.io.InputStream inputStream,
                          java.util.Map<?,​?> options)
                   throws java.io.IOException

Loads an ATL resource.

Overrides:
  `doLoad` in class `org.eclipse.emf.ecore.resource.impl.ResourceImpl`
Parameters:
  `inputStream` - the data source
  `options` - options passed to the ATL parser
Throws:
  `java.io.IOException`

#### doSave

    protected void doSave​(java.io.OutputStream outputStream,
                          java.util.Map<?,​?> options)
                   throws java.io.IOException

Saves an ATL resource.

Overrides:
  `doSave` in class `org.eclipse.emf.ecore.resource.impl.ResourceImpl`
Parameters:
  `outputStream` - the data destination
  `options` - the options passed to the ATL extractor
Throws:
  `java.io.IOException`

#### registerEPackages

    protected void registerEPackages​(org.eclipse.emf.ecore.resource.Resource res)
                              throws java.io.IOException

Registers any dynamic EPackage URIs in `res`.

Parameters:
  `res` - the resource containing the EPackages
Throws:
  `java.io.IOException` - if the nsURIs from EPackages from r are already registered by other EPackages

#### getCharset

    protected java.nio.charset.Charset getCharset()
                                           throws java.io.IOException

Returns the `Charset` to use for the current `URI`.

Returns:
  the `Charset` to use for the current `URI`
Throws:
  `java.io.IOException`