org.eclipse.xtext.resource
Class DefaultFragmentProvider

java.lang.Object
  extended by org.eclipse.xtext.resource.DefaultFragmentProvider
All Implemented Interfaces:
IFragmentProvider

public class DefaultFragmentProvider
extends java.lang.Object
implements IFragmentProvider

TODO: think about an efficient way to compute fragments.

Author:
Sven Efftinge - Initial contribution and API, Peter Friese, Sebastian Zarnekow

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.eclipse.xtext.resource.IFragmentProvider
IFragmentProvider.Fallback
 
Constructor Summary
DefaultFragmentProvider()
           
 
Method Summary
 org.eclipse.emf.ecore.EObject getEObject(org.eclipse.emf.ecore.resource.Resource resource, java.lang.String fragment, IFragmentProvider.Fallback fallback)
          Locates an EObject in a resource by its fragment.
 java.lang.String getFragment(org.eclipse.emf.ecore.EObject obj, IFragmentProvider.Fallback fallback)
          Computes the URI fragment (local ID) of the given object.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultFragmentProvider

public DefaultFragmentProvider()
Method Detail

getFragment

public java.lang.String getFragment(org.eclipse.emf.ecore.EObject obj,
                                    IFragmentProvider.Fallback fallback)
Description copied from interface: IFragmentProvider
Computes the URI fragment (local ID) of the given object.

Specified by:
getFragment in interface IFragmentProvider
Parameters:
obj - the EObject to compute the fragment for.
fallback - if the default behavior should be used, delegate the computation of the fragment to the default implementation of Resource.getURIFragment(EObject).
Returns:
the fragment, which can be an arbitrary string but must be unique within a resource. May not return null.

getEObject

public org.eclipse.emf.ecore.EObject getEObject(org.eclipse.emf.ecore.resource.Resource resource,
                                                java.lang.String fragment,
                                                IFragmentProvider.Fallback fallback)
Description copied from interface: IFragmentProvider
Locates an EObject in a resource by its fragment.

Specified by:
getEObject in interface IFragmentProvider
Parameters:
resource - the resource serves as context instance.
fragment - the fragment of the object.
fallback - if the fragment was not created by this provider, delegate the resolution to the default implementation of Resource.getEObject(String).
Returns:
the resolved object or null if the fragment could not be resolved to an object.