org.eclipse.xtext.ui.resource
Class Storage2UriMapperJavaImpl

java.lang.Object
  extended by org.eclipse.xtext.ui.resource.Storage2UriMapperImpl
      extended by org.eclipse.xtext.ui.resource.Storage2UriMapperJavaImpl
All Implemented Interfaces:
java.util.EventListener, org.eclipse.core.resources.IResourceChangeListener, org.eclipse.jdt.core.IElementChangedListener, IStorage2UriMapper

public class Storage2UriMapperJavaImpl
extends Storage2UriMapperImpl
implements org.eclipse.jdt.core.IElementChangedListener

Author:
Sven Efftinge - Initial contribution and API

Constructor Summary
Storage2UriMapperJavaImpl()
           
 
Method Summary
protected  org.eclipse.emf.common.util.URI computeUriForStorageInJarOrExternalClassFolder(org.eclipse.core.resources.IStorage storage)
           
 void elementChanged(org.eclipse.jdt.core.ElementChangedEvent event)
          Notifies that one or more attributes of one or more Java elements have changed.
protected  void findStoragesInExternalFoldersOfProject(org.eclipse.emf.common.util.URI uri, org.eclipse.jdt.core.IJavaProject project, java.util.Set<Pair<org.eclipse.core.resources.IStorage,org.eclipse.core.resources.IProject>> storages)
           
protected  void findStoragesInJarsOfProject(org.eclipse.emf.common.util.URI toArchive, org.eclipse.emf.common.util.URI uri, org.eclipse.jdt.core.IJavaProject project, java.util.Set<Pair<org.eclipse.core.resources.IStorage,org.eclipse.core.resources.IProject>> storages)
           
protected  java.lang.Iterable<Pair<org.eclipse.core.resources.IStorage,org.eclipse.core.resources.IProject>> findStoragesInJarsOrExternalClassFolders(org.eclipse.emf.common.util.URI uri)
           
protected  org.eclipse.emf.common.util.URI getPathToArchive(org.eclipse.emf.common.util.URI archiveURI)
           
 java.lang.Iterable<Pair<org.eclipse.core.resources.IStorage,org.eclipse.core.resources.IProject>> getStorages(org.eclipse.emf.common.util.URI uri)
          Find the storages that can be mapped to the given URI.
protected  org.eclipse.emf.common.util.URI getUriForIJarEntryResource(org.eclipse.jdt.core.IJarEntryResource jarEntry)
           
protected  org.eclipse.emf.common.util.URI internalGetUri(org.eclipse.core.resources.IStorage storage)
           
protected  boolean isValidStorageFor(org.eclipse.emf.common.util.URI uri, org.eclipse.core.resources.IStorage storage)
           
 void setLocator(JarEntryLocator locator)
           
 
Methods inherited from class org.eclipse.xtext.ui.resource.Storage2UriMapperImpl
getUri, getWorkspaceRoot, isValidUri, resourceChanged
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Storage2UriMapperJavaImpl

public Storage2UriMapperJavaImpl()
Method Detail

setLocator

public void setLocator(JarEntryLocator locator)

elementChanged

public void elementChanged(org.eclipse.jdt.core.ElementChangedEvent event)
Description copied from interface: org.eclipse.jdt.core.IElementChangedListener
Notifies that one or more attributes of one or more Java elements have changed. The specific details of the change are described by the given event.

Specified by:
elementChanged in interface org.eclipse.jdt.core.IElementChangedListener
Parameters:
event - the change event

getStorages

public java.lang.Iterable<Pair<org.eclipse.core.resources.IStorage,org.eclipse.core.resources.IProject>> getStorages(org.eclipse.emf.common.util.URI uri)
Description copied from interface: IStorage2UriMapper
Find the storages that can be mapped to the given URI. It will typically be only one IStorage associated with one IProject but in the case that the same external class folder or jar is referenced in multiple projects multiple IStorages are returned.

Specified by:
getStorages in interface IStorage2UriMapper
Overrides:
getStorages in class Storage2UriMapperImpl
Parameters:
uri - the URI. May not be null.
Returns:
IStorages corresponding to the given URI. Never null.

isValidStorageFor

protected boolean isValidStorageFor(org.eclipse.emf.common.util.URI uri,
                                    org.eclipse.core.resources.IStorage storage)
Overrides:
isValidStorageFor in class Storage2UriMapperImpl

internalGetUri

protected org.eclipse.emf.common.util.URI internalGetUri(org.eclipse.core.resources.IStorage storage)
Overrides:
internalGetUri in class Storage2UriMapperImpl

findStoragesInJarsOrExternalClassFolders

protected java.lang.Iterable<Pair<org.eclipse.core.resources.IStorage,org.eclipse.core.resources.IProject>> findStoragesInJarsOrExternalClassFolders(org.eclipse.emf.common.util.URI uri)

findStoragesInExternalFoldersOfProject

protected void findStoragesInExternalFoldersOfProject(org.eclipse.emf.common.util.URI uri,
                                                      org.eclipse.jdt.core.IJavaProject project,
                                                      java.util.Set<Pair<org.eclipse.core.resources.IStorage,org.eclipse.core.resources.IProject>> storages)

findStoragesInJarsOfProject

protected void findStoragesInJarsOfProject(org.eclipse.emf.common.util.URI toArchive,
                                           org.eclipse.emf.common.util.URI uri,
                                           org.eclipse.jdt.core.IJavaProject project,
                                           java.util.Set<Pair<org.eclipse.core.resources.IStorage,org.eclipse.core.resources.IProject>> storages)

computeUriForStorageInJarOrExternalClassFolder

protected org.eclipse.emf.common.util.URI computeUriForStorageInJarOrExternalClassFolder(org.eclipse.core.resources.IStorage storage)

getUriForIJarEntryResource

protected org.eclipse.emf.common.util.URI getUriForIJarEntryResource(org.eclipse.jdt.core.IJarEntryResource jarEntry)

getPathToArchive

protected org.eclipse.emf.common.util.URI getPathToArchive(org.eclipse.emf.common.util.URI archiveURI)