Community
Participate
Working Groups
* Rename method IMetaModelDescriptor#getEPackage() to 'getERootPackage()'; * Create a new method IMetaModelDescriptor#getEPackages(); implementations should return a list of EPackages belonging to the described meta-model Along the way: * IMetaModelDescriptor#isEPackageRegistered() is not of much use. It checks if the metamodel has a root EPackage or not. Rather than exposing a method with such limited added value in the API it should be deprecated and removed later on. Clients can refer to #getERootPackage() and test the result for null instead.
Fixed as proposed in description. Little errata: IMetaModelDescriptor#getEPackage() was renamed to ''getRootEPackage()'' (but not ''getERootPackage()'') At the same time, IMetaModelDescriptor#getEFactory() was renamed to ''getRootEFactory()''. The newly introduced method IMetaModelDescriptor#getEPackages() was used to improve implementation of EObjectUtil#findESubTypesOf(). It does now no longer depend on the fact that metamodel has a generated a top-level root EPackage but returns useful results when metamodels consist of a flat collection of EPackages (such as e.g., in Hummingbird 2.0).
Mass-closing Resolved tickets