org.eclipse.xtext.resource.impl
Class AbstractResourceDescription

java.lang.Object
  extended by org.eclipse.xtext.resource.impl.AbstractResourceDescription
All Implemented Interfaces:
IResourceDescription, ISelectable
Direct Known Subclasses:
CopiedResourceDescription, DefaultResourceDescription, StatefulResourceDescription, TypeResourceDescription, URIBasedTestResourceDescription, URIBasedTestResourceDescription

public abstract class AbstractResourceDescription
extends java.lang.Object
implements IResourceDescription

Author:
Sven Efftinge - Initial contribution and API

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.eclipse.xtext.resource.IResourceDescription
IResourceDescription.Delta, IResourceDescription.Event, IResourceDescription.Manager
 
Field Summary
protected  EObjectDescriptionLookUp lookup
           
 
Constructor Summary
AbstractResourceDescription()
           
 
Method Summary
protected abstract  java.util.List<IEObjectDescription> computeExportedObjects()
           
 java.lang.Iterable<IEObjectDescription> getExportedObjects()
           
 java.lang.Iterable<IEObjectDescription> getExportedObjects(org.eclipse.emf.ecore.EClass type, QualifiedName name, boolean ignoreCase)
           
 java.lang.Iterable<IEObjectDescription> getExportedObjectsByObject(org.eclipse.emf.ecore.EObject object)
           
 java.lang.Iterable<IEObjectDescription> getExportedObjectsByType(org.eclipse.emf.ecore.EClass type)
           
protected  EObjectDescriptionLookUp getLookUp()
           
protected  org.eclipse.emf.common.util.URI getNormalizedURI(org.eclipse.emf.ecore.resource.Resource resource)
           
 boolean isEmpty()
          Clients may want to check the selectable to skip its processing in case it is empty.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.xtext.resource.IResourceDescription
getImportedNames, getReferenceDescriptions, getURI
 

Field Detail

lookup

protected EObjectDescriptionLookUp lookup
Constructor Detail

AbstractResourceDescription

public AbstractResourceDescription()
Method Detail

isEmpty

public boolean isEmpty()
Description copied from interface: ISelectable
Clients may want to check the selectable to skip its processing in case it is empty. Implementations should be fast and not require expensive precalculation. Selectable may return false if it is too expensive to compute the actual result.

Specified by:
isEmpty in interface ISelectable
Returns:
true if the selectable does not provide any descriptions.

getExportedObjects

public java.lang.Iterable<IEObjectDescription> getExportedObjects()
Specified by:
getExportedObjects in interface IResourceDescription
Specified by:
getExportedObjects in interface ISelectable
Returns:
descriptions of all EObjects provided by the given Resource. The result is expected to return any combination of name and eObjectOrProxy only once as an IEObjectDescription. The order of the exported objects matters.

getExportedObjectsByType

public java.lang.Iterable<IEObjectDescription> getExportedObjectsByType(org.eclipse.emf.ecore.EClass type)
Specified by:
getExportedObjectsByType in interface ISelectable
Returns:
all elements which match the given type. May not be null.

getExportedObjectsByObject

public java.lang.Iterable<IEObjectDescription> getExportedObjectsByObject(org.eclipse.emf.ecore.EObject object)
Specified by:
getExportedObjectsByObject in interface ISelectable
Returns:
all elements which match the given instance. May not be null.

getExportedObjects

public java.lang.Iterable<IEObjectDescription> getExportedObjects(org.eclipse.emf.ecore.EClass type,
                                                                  QualifiedName name,
                                                                  boolean ignoreCase)
Specified by:
getExportedObjects in interface ISelectable
Returns:
all elements which match the given qualified name and type. May not be null.

computeExportedObjects

protected abstract java.util.List<IEObjectDescription> computeExportedObjects()

getLookUp

protected EObjectDescriptionLookUp getLookUp()

getNormalizedURI

protected org.eclipse.emf.common.util.URI getNormalizedURI(org.eclipse.emf.ecore.resource.Resource resource)