org.eclipse.emf.compare.ide.utils

## Class StorageURIConverter

- java.lang.Object
- - org.eclipse.emf.ecore.resource.impl.ExtensibleURIConverterImpl
  - - org.eclipse.emf.compare.utils.DelegatingURIConverter
    - - org.eclipse.emf.compare.ide.utils.StorageURIConverter

All Implemented Interfaces:
  URIConverter

Direct Known Subclasses:
  RevisionedURIConverter

    public class StorageURIConverter
    extends DelegatingURIConverter

This implementation of an URI converter will keep track of the storages from which it created input streams.

### Nested Class Summary

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

`ExtensibleURIConverterImpl.ContentHandlerList, ExtensibleURIConverterImpl.URIHandlerList, ExtensibleURIConverterImpl.URIMap`

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

`URIConverter.Cipher, URIConverter.Loadable, URIConverter.Readable, URIConverter.ReadableInputStream, URIConverter.Saveable, URIConverter.Writeable, URIConverter.WriteableOutputStream`

### Field Summary

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

`contentHandlers, uriHandlers, uriMap`

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

`ATTRIBUTE_ARCHIVE, ATTRIBUTE_DIRECTORY, ATTRIBUTE_EXECUTABLE, ATTRIBUTE_HIDDEN, ATTRIBUTE_LENGTH, ATTRIBUTE_READ_ONLY, ATTRIBUTE_TIME_STAMP, INSTANCE, NULL_TIME_STAMP, OPTION_REQUESTED_ATTRIBUTES, OPTION_RESPONSE, OPTION_TIMEOUT, OPTION_URI_CONVERTER, RESPONSE_TIME_STAMP_PROPERTY, RESPONSE_URI, URI_MAP`

### Constructor Summary

Constructors
Constructor and Description
`StorageURIConverter(URIConverter delegate)` Constructs our uri converter given its delegate.

### Method Summary

All Methods Instance Methods Concrete Methods
`InputStream` `createInputStream(URI uri)`
`InputStream` `createInputStream(URI uri, Map<?,?> options)`
`protected org.eclipse.core.resources.IStorage` `createStorage(URI uri, URIHandler handler, URIConverter converter)` Creates a new IStorage for the given URI.
`Set<org.eclipse.core.resources.IStorage>` `getLoadedRevisions()` Allows clients of this API to retrieve the set of revisions that were loaded while resolving the resource set on which this converter is installed.

### Methods inherited from class org.eclipse.emf.compare.utils.DelegatingURIConverter

`contentDescription, createOutputStream, delete, exists, getAttributes, getContentHandlers, getURIHandler, getURIHandlers, getURIMap, normalize, setAttributes`

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

`createOutputStream, getInternalURIMap`

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

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

### Constructor Detail

#### StorageURIConverter

    public StorageURIConverter(URIConverter delegate)

Constructs our uri converter given its delegate.

Parameters:
  `delegate` - The delegate URI Converter.

### Method Detail

#### getLoadedRevisions

    public Set<org.eclipse.core.resources.IStorage> getLoadedRevisions()

Allows clients of this API to retrieve the set of revisions that were loaded while resolving the resource set on which this converter is installed.

Returns:
  The set of revisions loaded through this converter.

#### createInputStream

    public InputStream createInputStream(URI uri)
                                  throws IOException

Specified by:
  `createInputStream` in interface `URIConverter`
Overrides:
  `createInputStream` in class `ExtensibleURIConverterImpl`
Throws:
  `IOException`

#### createInputStream

    public InputStream createInputStream(URI uri,
                                         Map<?,?> options)
                                  throws IOException

Specified by:
  `createInputStream` in interface `URIConverter`
Overrides:
  `createInputStream` in class `DelegatingURIConverter`
Throws:
  `IOException`
See Also:
  `DelegatingURIConverter.createInputStream(org.eclipse.emf.common.util.URI, java.util.Map)`

#### createStorage

    protected org.eclipse.core.resources.IStorage createStorage(URI uri,
                                                                URIHandler handler,
                                                                URIConverter converter)

Creates a new IStorage for the given URI.

Parameters:
  `uri` - The uri for which we need a storage.
  `handler` - The URI handler that can be used to retrieve this URI's contents.
  `converter` - The URI converter from which this storage was created.
Returns:
  The newly created IStorage.