Class EcoreUtil2


  • public class EcoreUtil2
    extends org.eclipse.emf.ecore.util.EcoreUtil
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static interface  EcoreUtil2.ElementReferenceAcceptor  
      • Nested classes/interfaces inherited from class org.eclipse.emf.ecore.util.EcoreUtil

        org.eclipse.emf.ecore.util.EcoreUtil.AbstractFilteredSettingsIterator<E extends java.lang.Object>, org.eclipse.emf.ecore.util.EcoreUtil.ContentTreeIterator<E extends java.lang.Object>, org.eclipse.emf.ecore.util.EcoreUtil.Copier, org.eclipse.emf.ecore.util.EcoreUtil.CrossReferencer, org.eclipse.emf.ecore.util.EcoreUtil.EGenericTypeConverter, org.eclipse.emf.ecore.util.EcoreUtil.EqualityHelper, org.eclipse.emf.ecore.util.EcoreUtil.ExternalCrossReferencer, org.eclipse.emf.ecore.util.EcoreUtil.FilteredSettingsIterator, org.eclipse.emf.ecore.util.EcoreUtil.ProperContentIterator<E extends java.lang.Object>, org.eclipse.emf.ecore.util.EcoreUtil.ProxyCrossReferencer, org.eclipse.emf.ecore.util.EcoreUtil.UnresolvedProxyCrossReferencer, org.eclipse.emf.ecore.util.EcoreUtil.UsageCrossReferencer
    • Field Summary

      • Fields inherited from class org.eclipse.emf.ecore.util.EcoreUtil

        GEN_MODEL_ANNOTATION_URI, GEN_MODEL_PACKAGE_NS_URI, GET, IS_SET, SET, UNSET
    • Constructor Summary

      Constructors 
      Constructor Description
      EcoreUtil2()  
    • Method Summary

      All Methods Static Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      static <T extends org.eclipse.emf.ecore.EObject>
      T
      clone​(T eObject)
      Deprecated.
      use EcoreUtil.copy(EObject) instead.
      static <T extends org.eclipse.emf.ecore.resource.ResourceSet>
      T
      clone​(T target, org.eclipse.emf.ecore.resource.ResourceSet source)
      copies contents of a resource set into a new one
      static <T extends org.eclipse.emf.ecore.EObject>
      T
      cloneIfContained​(T eObject)
      only clones the element if it is contained in another EObject or another Resource
      static <T extends org.eclipse.emf.ecore.EObject>
      T
      cloneWithProxies​(T original)
      Clones the given EObject without resolving any proxies.
      static <T> java.util.List<T> collect​(java.util.Collection<? extends org.eclipse.emf.ecore.EObject> instances, int featureId, java.lang.Class<T> type)  
      static org.eclipse.emf.common.util.TreeIterator<org.eclipse.emf.ecore.EObject> eAll​(org.eclipse.emf.ecore.EObject obj)  
      static java.lang.Iterable<org.eclipse.emf.ecore.EObject> eAllContents​(org.eclipse.emf.ecore.EObject n)  
      static java.util.List<org.eclipse.emf.ecore.EObject> eAllContentsAsList​(org.eclipse.emf.ecore.EObject ele)  
      static java.util.List<org.eclipse.emf.ecore.EObject> eAllContentsAsList​(org.eclipse.emf.ecore.resource.Resource resource)  
      static <T extends org.eclipse.emf.ecore.EObject>
      java.util.List<T>
      eAllOfType​(org.eclipse.emf.ecore.EObject ele, java.lang.Class<T> type)  
      static void findCrossReferences​(org.eclipse.emf.ecore.EObject rootElement, java.util.Set<? extends org.eclipse.emf.ecore.EObject> targets, EcoreUtil2.ElementReferenceAcceptor acceptor)
      A better performing alternative to the EcoreUtil.CrossReferencer.
      static java.lang.Iterable<org.eclipse.emf.ecore.EObject> getAllContainers​(org.eclipse.emf.ecore.EObject obj)
      Returns an Iterable that iterates over all containers of this EObject, from leaf to root.
      static <T extends org.eclipse.emf.ecore.EObject>
      java.util.List<T>
      getAllContentsOfType​(org.eclipse.emf.ecore.EObject ele, java.lang.Class<T> type)  
      static org.eclipse.emf.common.util.TreeIterator<org.eclipse.emf.ecore.EObject> getAllNonDerivedContents​(org.eclipse.emf.ecore.EObject root)
      static org.eclipse.emf.common.util.TreeIterator<org.eclipse.emf.ecore.EObject> getAllNonDerivedContents​(org.eclipse.emf.ecore.EObject root, boolean includeRoot)  
      static java.util.List<org.eclipse.emf.ecore.EObject> getAllReferencedObjects​(org.eclipse.emf.ecore.EObject referer, org.eclipse.emf.ecore.EReference reference)  
      static java.util.Collection<org.eclipse.emf.ecore.EClass> getAllSuperTypes​(org.eclipse.emf.ecore.EClass eClass)
      In addition to EClassifierInfos.getAllEClassInfos() this implementation can deal with cycles in type hierarchy
      static org.eclipse.emf.ecore.EClassifier getCompatibleType​(org.eclipse.emf.ecore.EClassifier typeA, org.eclipse.emf.ecore.EClassifier typeB)  
      static org.eclipse.emf.ecore.EClassifier getCompatibleType​(org.eclipse.emf.ecore.EClassifier typeA, org.eclipse.emf.ecore.EClassifier typeB, org.eclipse.emf.ecore.EObject grammarContext)  
      static java.util.List<org.eclipse.emf.ecore.EClass> getCompatibleTypesOf​(org.eclipse.emf.ecore.EClass eClass)  
      static <T extends org.eclipse.emf.ecore.EObject>
      T
      getContainerOfType​(org.eclipse.emf.ecore.EObject ele, java.lang.Class<T> type)
      Returns the closest container object of the requested type.
      static org.eclipse.emf.ecore.EReference getEReferenceFromExternalForm​(org.eclipse.emf.ecore.EPackage.Registry registry, java.lang.String externalForm)
      looks up the EReference in the passed registry, given the external form.
      static java.lang.String getFragmentPath​(org.eclipse.emf.ecore.EObject object)  
      protected static java.lang.String getFragmentPathRootSegment​(org.eclipse.emf.ecore.EObject eObject)  
      protected static java.lang.String getFragmentPathSegment​(org.eclipse.emf.ecore.InternalEObject container, org.eclipse.emf.ecore.EStructuralFeature feature, org.eclipse.emf.ecore.InternalEObject contained)  
      static org.eclipse.emf.common.util.URI getFragmentPathURI​(org.eclipse.emf.ecore.EObject object)  
      static org.eclipse.emf.ecore.EObject getNextSibling​(org.eclipse.emf.ecore.EObject eObject)  
      static java.util.Iterator<org.eclipse.emf.ecore.EObject> getNonDerivedContents​(org.eclipse.emf.ecore.EObject eObject)  
      static org.eclipse.emf.common.util.URI getNormalizedResourceURI​(org.eclipse.emf.ecore.EObject eObject)  
      static org.eclipse.emf.common.util.URI getNormalizedURI​(org.eclipse.emf.ecore.EObject eObject)  
      static org.eclipse.emf.common.util.URI getNormalizedURI​(org.eclipse.emf.ecore.resource.Resource resource)  
      static org.eclipse.emf.common.util.URI getPlatformResourceOrNormalizedURI​(org.eclipse.emf.ecore.EObject eObject)  
      static org.eclipse.emf.common.util.URI getPlatformResourceOrNormalizedURI​(org.eclipse.emf.ecore.resource.Resource resource)  
      static org.eclipse.emf.ecore.EObject getPreviousSibling​(org.eclipse.emf.ecore.EObject eObject)  
      static org.eclipse.emf.ecore.resource.Resource getResource​(org.eclipse.emf.ecore.resource.Resource context, java.lang.String uri)  
      static org.eclipse.emf.ecore.resource.ResourceSet getResourceSet​(org.eclipse.emf.common.notify.Notifier ctx)  
      static <T extends org.eclipse.emf.ecore.EObject>
      java.util.List<T>
      getSiblingsOfType​(org.eclipse.emf.ecore.EObject ele, java.lang.Class<T> type)  
      static java.lang.String getURIFragment​(org.eclipse.emf.ecore.EObject eObject)  
      static boolean hasSameURI​(org.eclipse.emf.ecore.EObject o0, org.eclipse.emf.ecore.EObject o1)  
      static boolean isAssignableFrom​(org.eclipse.emf.ecore.EClass superType, org.eclipse.emf.ecore.EClass candidate)
      Returns whether the given super type is the same as, or a super type of, some other class.
      static boolean isValidUri​(org.eclipse.emf.ecore.EObject context, org.eclipse.emf.common.util.URI uri)  
      static boolean isValidUri​(org.eclipse.emf.ecore.resource.Resource resource, org.eclipse.emf.common.util.URI uri)
      checks whether the given URI can be loaded given the context.
      static org.eclipse.emf.ecore.EPackage loadEPackage​(java.lang.String uriAsString, java.lang.ClassLoader classLoader)  
      static void resolveAll​(org.eclipse.emf.ecore.EObject eObject, org.eclipse.xtext.util.CancelIndicator monitor)  
      static void resolveAll​(org.eclipse.emf.ecore.resource.Resource resource, org.eclipse.xtext.util.CancelIndicator monitor)  
      static void resolveLazyCrossReferences​(org.eclipse.emf.ecore.resource.Resource resource, org.eclipse.xtext.util.CancelIndicator monitor)
      static java.lang.String toExternalForm​(org.eclipse.emf.ecore.EReference ref)
      creates an external form of the given EReference.
      static <T> java.util.List<T> typeSelect​(java.util.List<?> elements, java.lang.Class<T> clazz)  
      • Methods inherited from class org.eclipse.emf.ecore.util.EcoreUtil

        computeDiagnostic, convertToString, copy, copyAll, create, createFromString, delete, delete, deleteAll, equals, equals, filterDescendants, freeze, generateUUID, generateUUID, getAdapter, getAdapterFactory, getAllContents, getAllContents, getAllContents, getAllContents, getAllContents, getAllProperContents, getAllProperContents, getAllProperContents, getAllProperContents, getAnnotation, getConstraints, getConversionDelegateFactory, getConversionDelegates, getDocumentation, getEObject, getExistingAdapter, getID, getIdentification, getInvocationDelegateFactory, getInvocationDelegates, getObjectByType, getObjectsByType, getRegisteredAdapter, getRegisteredAdapter, getReifiedType, getRelativeURIFragmentPath, getRoot, getRootContainer, getRootContainer, getSettingDelegateFactory, getSettingDelegates, getURI, getValidationDelegates, indexOf, isAncestor, isAncestor, isAncestor, isAncestor, isInvariant, isSuppressedVisibility, isSuppressedVisibility, remove, remove, remove, removeAll, removeAll, removeAll, replace, replace, replace, resolve, resolve, resolve, resolveAll, resolveAll, resolveAll, setAnnotation, setConstraints, setConversionDelegates, setDocumentation, setEList, setEList, setID, setInvocationDelegates, setSettingDelegates, setSuppressedVisibility, setSuppressedVisibility, setValidationDelegates, toJavaInstanceTypeName, wrapperClassFor
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • EcoreUtil2

        public EcoreUtil2()
    • Method Detail

      • getNextSibling

        public static org.eclipse.emf.ecore.EObject getNextSibling​(org.eclipse.emf.ecore.EObject eObject)
        Returns:
        the next sibling of the passed eObject or null
        Since:
        2.1
      • getPreviousSibling

        public static org.eclipse.emf.ecore.EObject getPreviousSibling​(org.eclipse.emf.ecore.EObject eObject)
        Returns:
        the previous sibling of the passed eObject or null
        Since:
        2.1
      • getContainerOfType

        public static <T extends org.eclipse.emf.ecore.EObject> T getContainerOfType​(org.eclipse.emf.ecore.EObject ele,
                                                                                     java.lang.Class<T> type)
        Returns the closest container object of the requested type. If the given object is an instance of the requested type, then the object itself will be returned. If no container object is of the requested type, then null will be returned.
      • getSiblingsOfType

        public static <T extends org.eclipse.emf.ecore.EObject> java.util.List<T> getSiblingsOfType​(org.eclipse.emf.ecore.EObject ele,
                                                                                                    java.lang.Class<T> type)
        Since:
        2.1
      • clone

        @Deprecated
        public static <T extends org.eclipse.emf.ecore.EObject> T clone​(T eObject)
        Deprecated.
        use EcoreUtil.copy(EObject) instead.
        A generified facade to EcoreUtil.copy(EObject). Note that since EMF 2.6 EcoreUtil.copy(EObject) is already generic.
      • cloneWithProxies

        public static <T extends org.eclipse.emf.ecore.EObject> T cloneWithProxies​(T original)
        Clones the given EObject without resolving any proxies.
      • cloneIfContained

        public static <T extends org.eclipse.emf.ecore.EObject> T cloneIfContained​(T eObject)
        only clones the element if it is contained in another EObject or another Resource
      • clone

        public static <T extends org.eclipse.emf.ecore.resource.ResourceSet> T clone​(T target,
                                                                                     org.eclipse.emf.ecore.resource.ResourceSet source)
        copies contents of a resource set into a new one
      • getAllContentsOfType

        public static <T extends org.eclipse.emf.ecore.EObject> java.util.List<T> getAllContentsOfType​(org.eclipse.emf.ecore.EObject ele,
                                                                                                       java.lang.Class<T> type)
      • typeSelect

        public static <T> java.util.List<T> typeSelect​(java.util.List<?> elements,
                                                       java.lang.Class<T> clazz)
      • collect

        public static <T> java.util.List<T> collect​(java.util.Collection<? extends org.eclipse.emf.ecore.EObject> instances,
                                                    int featureId,
                                                    java.lang.Class<T> type)
      • eAllOfType

        public static <T extends org.eclipse.emf.ecore.EObject> java.util.List<T> eAllOfType​(org.eclipse.emf.ecore.EObject ele,
                                                                                             java.lang.Class<T> type)
      • eAll

        public static org.eclipse.emf.common.util.TreeIterator<org.eclipse.emf.ecore.EObject> eAll​(org.eclipse.emf.ecore.EObject obj)
      • eAllContents

        public static java.lang.Iterable<org.eclipse.emf.ecore.EObject> eAllContents​(org.eclipse.emf.ecore.EObject n)
      • eAllContentsAsList

        public static java.util.List<org.eclipse.emf.ecore.EObject> eAllContentsAsList​(org.eclipse.emf.ecore.EObject ele)
      • eAllContentsAsList

        public static java.util.List<org.eclipse.emf.ecore.EObject> eAllContentsAsList​(org.eclipse.emf.ecore.resource.Resource resource)
      • loadEPackage

        public static final org.eclipse.emf.ecore.EPackage loadEPackage​(java.lang.String uriAsString,
                                                                        java.lang.ClassLoader classLoader)
      • getURIFragment

        public static java.lang.String getURIFragment​(org.eclipse.emf.ecore.EObject eObject)
      • getCompatibleType

        public static org.eclipse.emf.ecore.EClassifier getCompatibleType​(org.eclipse.emf.ecore.EClassifier typeA,
                                                                          org.eclipse.emf.ecore.EClassifier typeB)
      • getCompatibleType

        public static org.eclipse.emf.ecore.EClassifier getCompatibleType​(org.eclipse.emf.ecore.EClassifier typeA,
                                                                          org.eclipse.emf.ecore.EClassifier typeB,
                                                                          org.eclipse.emf.ecore.EObject grammarContext)
        Since:
        2.1
      • getCompatibleTypesOf

        public static java.util.List<org.eclipse.emf.ecore.EClass> getCompatibleTypesOf​(org.eclipse.emf.ecore.EClass eClass)
      • getAllSuperTypes

        public static java.util.Collection<org.eclipse.emf.ecore.EClass> getAllSuperTypes​(org.eclipse.emf.ecore.EClass eClass)
        In addition to EClassifierInfos.getAllEClassInfos() this implementation can deal with cycles in type hierarchy
      • isAssignableFrom

        public static boolean isAssignableFrom​(org.eclipse.emf.ecore.EClass superType,
                                               org.eclipse.emf.ecore.EClass candidate)
        Returns whether the given super type is the same as, or a super type of, some other class.
        Parameters:
        superType - the super type
        candidate - the subtype
        Returns:
        whether the super type is the same as, or a super type of, some other class. Yields null when either argument is null.
      • getAllReferencedObjects

        public static java.util.List<org.eclipse.emf.ecore.EObject> getAllReferencedObjects​(org.eclipse.emf.ecore.EObject referer,
                                                                                            org.eclipse.emf.ecore.EReference reference)
      • isValidUri

        public static boolean isValidUri​(org.eclipse.emf.ecore.resource.Resource resource,
                                         org.eclipse.emf.common.util.URI uri)
        checks whether the given URI can be loaded given the context. I.e. there's a resource set with a corresponding resource factory and the physical resource exists.
      • isValidUri

        public static boolean isValidUri​(org.eclipse.emf.ecore.EObject context,
                                         org.eclipse.emf.common.util.URI uri)
      • getResource

        public static org.eclipse.emf.ecore.resource.Resource getResource​(org.eclipse.emf.ecore.resource.Resource context,
                                                                          java.lang.String uri)
      • getResourceSet

        public static org.eclipse.emf.ecore.resource.ResourceSet getResourceSet​(org.eclipse.emf.common.notify.Notifier ctx)
      • resolveAll

        public static void resolveAll​(org.eclipse.emf.ecore.resource.Resource resource,
                                      org.eclipse.xtext.util.CancelIndicator monitor)
      • resolveAll

        public static void resolveAll​(org.eclipse.emf.ecore.EObject eObject,
                                      org.eclipse.xtext.util.CancelIndicator monitor)
        See Also:
        EcoreUtil.resolveAll(EObject)
      • getEReferenceFromExternalForm

        public static org.eclipse.emf.ecore.EReference getEReferenceFromExternalForm​(org.eclipse.emf.ecore.EPackage.Registry registry,
                                                                                     java.lang.String externalForm)
        looks up the EReference in the passed registry, given the external form. if registry == null this
      • hasSameURI

        public static boolean hasSameURI​(org.eclipse.emf.ecore.EObject o0,
                                         org.eclipse.emf.ecore.EObject o1)
      • getNormalizedResourceURI

        public static org.eclipse.emf.common.util.URI getNormalizedResourceURI​(org.eclipse.emf.ecore.EObject eObject)
      • getNormalizedURI

        public static org.eclipse.emf.common.util.URI getNormalizedURI​(org.eclipse.emf.ecore.EObject eObject)
      • getNormalizedURI

        public static org.eclipse.emf.common.util.URI getNormalizedURI​(org.eclipse.emf.ecore.resource.Resource resource)
      • getPlatformResourceOrNormalizedURI

        public static org.eclipse.emf.common.util.URI getPlatformResourceOrNormalizedURI​(org.eclipse.emf.ecore.EObject eObject)
        Returns:
        the eobject's URI in the normalized form or as is if it is a platform:/resource URI.
        Since:
        2.4
      • getPlatformResourceOrNormalizedURI

        public static org.eclipse.emf.common.util.URI getPlatformResourceOrNormalizedURI​(org.eclipse.emf.ecore.resource.Resource resource)
        Returns:
        the resources uri in the normalized form or as is if it is a platform:/resource URI.
        Since:
        2.4
      • findCrossReferences

        public static void findCrossReferences​(org.eclipse.emf.ecore.EObject rootElement,
                                               java.util.Set<? extends org.eclipse.emf.ecore.EObject> targets,
                                               EcoreUtil2.ElementReferenceAcceptor acceptor)
        A better performing alternative to the EcoreUtil.CrossReferencer.
        Since:
        2.4
      • getAllNonDerivedContents

        public static org.eclipse.emf.common.util.TreeIterator<org.eclipse.emf.ecore.EObject> getAllNonDerivedContents​(org.eclipse.emf.ecore.EObject root,
                                                                                                                       boolean includeRoot)
        Since:
        2.6
      • getAllNonDerivedContents

        public static org.eclipse.emf.common.util.TreeIterator<org.eclipse.emf.ecore.EObject> getAllNonDerivedContents​(org.eclipse.emf.ecore.EObject root)
        Since:
        2.6
      • getNonDerivedContents

        public static java.util.Iterator<org.eclipse.emf.ecore.EObject> getNonDerivedContents​(org.eclipse.emf.ecore.EObject eObject)
        Since:
        2.6
      • getAllContainers

        public static java.lang.Iterable<org.eclipse.emf.ecore.EObject> getAllContainers​(org.eclipse.emf.ecore.EObject obj)
        Returns an Iterable that iterates over all containers of this EObject, from leaf to root. The obj itself is not included.
        Since:
        2.9
      • getFragmentPathURI

        public static org.eclipse.emf.common.util.URI getFragmentPathURI​(org.eclipse.emf.ecore.EObject object)
      • getFragmentPath

        public static java.lang.String getFragmentPath​(org.eclipse.emf.ecore.EObject object)
      • getFragmentPathSegment

        protected static java.lang.String getFragmentPathSegment​(org.eclipse.emf.ecore.InternalEObject container,
                                                                 org.eclipse.emf.ecore.EStructuralFeature feature,
                                                                 org.eclipse.emf.ecore.InternalEObject contained)
      • getFragmentPathRootSegment

        protected static java.lang.String getFragmentPathRootSegment​(org.eclipse.emf.ecore.EObject eObject)