Class MetamodelUtils
- java.lang.Object
-
- org.eclipse.emf.edapt.internal.common.MetamodelUtils
-
public final class MetamodelUtils extends Object
Helper methods for metamodel access.- Version:
- $Rev$
- Author:
- herrmama, $Author$
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static <V extends org.eclipse.emf.ecore.EModelElement>
Vcopy(V modelElement)Copy a metamodel element.static org.eclipse.emf.ecore.resource.ResourceSetcreateIndependentMetamodelCopy(Collection<org.eclipse.emf.ecore.EPackage> rootPackages, org.eclipse.emf.common.util.URI metamodelURI)Create a copy of a set of packages that is independent of generated packages.static Collection<org.eclipse.emf.ecore.EPackage>getAllRootPackages(org.eclipse.emf.ecore.resource.ResourceSet resourceSet)Get all root packages in a resource set.static org.eclipse.emf.ecore.EReferencegetGenericReference(org.eclipse.emf.ecore.EReference reference)Get the corresponding reference which is generic.static org.eclipse.emf.ecore.EReferencegetNonGenericReference(org.eclipse.emf.ecore.EReference genericReference)Get the corresponding reference which is not generic.static org.eclipse.emf.ecore.EPackagegetRootPackage(org.eclipse.emf.ecore.resource.ResourceSet resourceSet)Get any root package in a resource set.static booleanisConcrete(org.eclipse.emf.ecore.EClass eClass)Check whether a class is concrete, i.e.static booleanisGenericReference(org.eclipse.emf.ecore.EReference reference)Check whether a reference is of generic type.static booleanisMetamodelResource(org.eclipse.emf.ecore.resource.Resource resource)Check whether the resource contains a metamodel.static booleanisMetamodelURI(org.eclipse.emf.common.util.URI uri)Check whether the URI denotes a resource containing a metamodel.static List<org.eclipse.emf.ecore.EStructuralFeature>subtractFeatures(org.eclipse.emf.ecore.EClass minuend, org.eclipse.emf.ecore.EClass subtrahend)Subtract the features that are provided by a class from the types that are provided by another class.static List<org.eclipse.emf.ecore.EClass>subtractTypes(org.eclipse.emf.ecore.EClass minuend, org.eclipse.emf.ecore.EClass subtrahend)Subtract the types that are provided by a class from the types that are provided by another class.
-
-
-
Method Detail
-
isGenericReference
public static boolean isGenericReference(org.eclipse.emf.ecore.EReference reference)
Check whether a reference is of generic type.
-
getNonGenericReference
public static org.eclipse.emf.ecore.EReference getNonGenericReference(org.eclipse.emf.ecore.EReference genericReference)
Get the corresponding reference which is not generic.
-
getGenericReference
public static org.eclipse.emf.ecore.EReference getGenericReference(org.eclipse.emf.ecore.EReference reference)
Get the corresponding reference which is generic.
-
copy
public static <V extends org.eclipse.emf.ecore.EModelElement> V copy(V modelElement)
Copy a metamodel element. Do not copy opposites in case this might lead to an inconsistency.
-
getAllRootPackages
public static Collection<org.eclipse.emf.ecore.EPackage> getAllRootPackages(org.eclipse.emf.ecore.resource.ResourceSet resourceSet)
Get all root packages in a resource set.
-
isMetamodelResource
public static boolean isMetamodelResource(org.eclipse.emf.ecore.resource.Resource resource)
Check whether the resource contains a metamodel.
-
isMetamodelURI
public static boolean isMetamodelURI(org.eclipse.emf.common.util.URI uri)
Check whether the URI denotes a resource containing a metamodel.
-
getRootPackage
public static org.eclipse.emf.ecore.EPackage getRootPackage(org.eclipse.emf.ecore.resource.ResourceSet resourceSet)
Get any root package in a resource set.
-
isConcrete
public static boolean isConcrete(org.eclipse.emf.ecore.EClass eClass)
Check whether a class is concrete, i.e. neither abstract nor an interface.
-
subtractTypes
public static List<org.eclipse.emf.ecore.EClass> subtractTypes(org.eclipse.emf.ecore.EClass minuend, org.eclipse.emf.ecore.EClass subtrahend)
Subtract the types that are provided by a class from the types that are provided by another class.
-
subtractFeatures
public static List<org.eclipse.emf.ecore.EStructuralFeature> subtractFeatures(org.eclipse.emf.ecore.EClass minuend, org.eclipse.emf.ecore.EClass subtrahend)
Subtract the features that are provided by a class from the types that are provided by another class.
-
createIndependentMetamodelCopy
public static org.eclipse.emf.ecore.resource.ResourceSet createIndependentMetamodelCopy(Collection<org.eclipse.emf.ecore.EPackage> rootPackages, org.eclipse.emf.common.util.URI metamodelURI)
Create a copy of a set of packages that is independent of generated packages.
-
-