[276128] EMF template changes require updates to Package init() required.
diff --git a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/impl/UMLPackageImpl.java b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/impl/UMLPackageImpl.java
index 8a78dd9..8d8209d 100644
--- a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/impl/UMLPackageImpl.java
+++ b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/impl/UMLPackageImpl.java
@@ -9,7 +9,7 @@
* IBM - initial API and implementation
* Kenn Hussey (Embarcadero Technologies) - 205188, 247980
*
- * $Id: UMLPackageImpl.java,v 1.23 2009/04/22 14:26:52 khussey Exp $
+ * $Id: UMLPackageImpl.java,v 1.24 2009/05/15 20:43:20 jbruck Exp $
*/
package org.eclipse.uml2.uml.internal.impl;
@@ -1934,20 +1934,10 @@
private static boolean isInited = false;
/**
- * Creates, registers, and initializes the <b>Package</b> for this
- * model, and for any others upon which it depends. Simple
- * dependencies are satisfied by calling this method on all
- * dependent packages before doing anything else. This method drives
- * initialization for interdependent packages directly, in parallel
- * with this package, itself.
- * <p>Of this package and its interdependencies, all packages which
- * have not yet been registered by their URI values are first created
- * and registered. The packages are then initialized in two steps:
- * meta-model objects for all of the packages are created before any
- * are initialized, since one package's meta-model objects may refer to
- * those of another.
- * <p>Invocation of this method will not affect any packages that have
- * already been initialized.
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link UMLPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #eNS_URI
@@ -1987,6 +1977,8 @@
// Mark meta-data to indicate it can't be changed
theUMLPackage.freeze();
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(UMLPackage.eNS_URI, theUMLPackage);
return theUMLPackage;
}
diff --git a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/operations/PackageOperations.java b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/operations/PackageOperations.java
index 8d61781..b601405 100644
--- a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/operations/PackageOperations.java
+++ b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/operations/PackageOperations.java
@@ -9,7 +9,7 @@
* IBM - initial API and implementation
* Kenn Hussey (Embarcadero Technologies) - 271470
*
- * $Id: PackageOperations.java,v 1.39 2009/04/24 14:28:01 jbruck Exp $
+ * $Id: PackageOperations.java,v 1.40 2009/05/15 20:43:20 jbruck Exp $
*/
package org.eclipse.uml2.uml.internal.operations;
@@ -836,7 +836,7 @@
.getProfileApplication(profile);
if (profileApplication == null && recurse) {
-
+
for (Iterator<org.eclipse.uml2.uml.Package> otherApplyingPackages = ProfileApplicationHelper.INSTANCE
.getOtherApplyingPackages(package_).iterator(); otherApplyingPackages
.hasNext()