Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Akehurst2014-05-15 17:29:21 +0000
committerDavid Akehurst2014-05-17 07:20:48 +0000
commitec345753c29cf2f9acf9b765be0a54b3e3f9a81f (patch)
tree7e29f174304c5e2c458f2b32c5f1945fe3d69799 /plugins/uml/org.eclipse.papyrus.uml.import/src/org/eclipse
parente39e50efd845db6b228ec79e197cf0780506fce7 (diff)
downloadorg.eclipse.papyrus-ec345753c29cf2f9acf9b765be0a54b3e3f9a81f.tar.gz
org.eclipse.papyrus-ec345753c29cf2f9acf9b765be0a54b3e3f9a81f.tar.xz
org.eclipse.papyrus-ec345753c29cf2f9acf9b765be0a54b3e3f9a81f.zip
[434594] Enable Model (Library/Metamodel/Profile) Registrations to be
added to via code Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=43459 Change-Id: Ib4eb7db3f1e82664a8c15a0c2ea2c06797d4b39e Signed-off-by: David Akehurst <dave@akehurst.net>
Diffstat (limited to 'plugins/uml/org.eclipse.papyrus.uml.import/src/org/eclipse')
-rw-r--r--plugins/uml/org.eclipse.papyrus.uml.import/src/org/eclipse/papyrus/uml/importt/handlers/ImportRegisteredPackageHandler.java33
-rw-r--r--plugins/uml/org.eclipse.papyrus.uml.import/src/org/eclipse/papyrus/uml/importt/handlers/ImportRegisteredProfileHandler.java23
2 files changed, 29 insertions, 27 deletions
diff --git a/plugins/uml/org.eclipse.papyrus.uml.import/src/org/eclipse/papyrus/uml/importt/handlers/ImportRegisteredPackageHandler.java b/plugins/uml/org.eclipse.papyrus.uml.import/src/org/eclipse/papyrus/uml/importt/handlers/ImportRegisteredPackageHandler.java
index 8f734ea9704..829200fb7e6 100644
--- a/plugins/uml/org.eclipse.papyrus.uml.import/src/org/eclipse/papyrus/uml/importt/handlers/ImportRegisteredPackageHandler.java
+++ b/plugins/uml/org.eclipse.papyrus.uml.import/src/org/eclipse/papyrus/uml/importt/handlers/ImportRegisteredPackageHandler.java
@@ -11,7 +11,7 @@
* Christian W. Damus (CEA) - Refactoring package/profile import/apply UI for CDO
* Christian W. Damus (CEA) - bug 323802
* Christian W. Damus (CEA) - bug 422257
- *
+ * Dr. David H. Akehurst - enable programmatic registration
*****************************************************************************/
package org.eclipse.papyrus.uml.importt.handlers;
@@ -27,8 +27,9 @@ import org.eclipse.gmf.runtime.common.core.command.ICommand;
import org.eclipse.jface.dialogs.Dialog;
import org.eclipse.jface.window.Window;
import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
+import org.eclipse.papyrus.uml.extensionpoints.Registry;
import org.eclipse.papyrus.uml.extensionpoints.library.FilteredRegisteredLibrariesSelectionDialog;
-import org.eclipse.papyrus.uml.extensionpoints.library.RegisteredLibrary;
+import org.eclipse.papyrus.uml.extensionpoints.library.IRegisteredLibrary;
import org.eclipse.papyrus.uml.extensionpoints.utils.Util;
import org.eclipse.papyrus.uml.importt.ui.PackageImportDialog;
import org.eclipse.papyrus.uml.profile.ui.dialogs.ElementImportTreeSelectionDialog.ImportSpec;
@@ -51,14 +52,14 @@ public class ImportRegisteredPackageHandler extends AbstractImportHandler {
* @param librariesToImport
* the array of Libraries to import
*/
- protected void importLibraries(RegisteredLibrary[] librariesToImport) {
+ protected void importLibraries(IRegisteredLibrary[] librariesToImport) {
// create a temporary resource set. Be sure to unload it so that we don't leak models in the CacheAdapter!
ResourceSet resourceSet = Util.createTemporaryResourceSet();
try {
for(int i = 0; i < librariesToImport.length; i++) {
- RegisteredLibrary currentLibrary = (librariesToImport[i]);
- URI modelUri = currentLibrary.uri;
+ IRegisteredLibrary currentLibrary = (librariesToImport[i]);
+ URI modelUri = currentLibrary.getUri();
Resource modelResource = resourceSet.getResource(modelUri, true);
PackageImportDialog dialog = new PackageImportDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), ((Package)modelResource.getContents().get(0)));
@@ -95,17 +96,17 @@ public class ImportRegisteredPackageHandler extends AbstractImportHandler {
*
* @return the array of available libraries for the currently selected package
*/
- protected RegisteredLibrary[] getAvailableLibraries() {
- List<RegisteredLibrary> libraries = new ArrayList<RegisteredLibrary>();
- RegisteredLibrary[] allLibraries = RegisteredLibrary.getRegisteredLibraries();
+ protected IRegisteredLibrary[] getAvailableLibraries() {
+ List<IRegisteredLibrary> libraries = new ArrayList<IRegisteredLibrary>();
+ IRegisteredLibrary[] allLibraries = Registry.getRegisteredLibraries().toArray(new IRegisteredLibrary[0]);
for(int i = 0; i < allLibraries.length; i++) {
- RegisteredLibrary registeredLibrary = allLibraries[i];
+ IRegisteredLibrary registeredLibrary = allLibraries[i];
List<String> importedPackageNames = PackageUtil.getImportedPackagesNames((Package)getSelectedElement());
if(!(importedPackageNames.contains(registeredLibrary.getName()))) {
libraries.add(registeredLibrary);
}
}
- return libraries.toArray(new RegisteredLibrary[libraries.size()]);
+ return libraries.toArray(new IRegisteredLibrary[libraries.size()]);
}
/**
@@ -116,11 +117,11 @@ public class ImportRegisteredPackageHandler extends AbstractImportHandler {
*
* @return the array of already selected libraries for the currently selected package
*/
- protected Collection<RegisteredLibrary> getImportedLibraries() {
- List<RegisteredLibrary> libraries = new ArrayList<RegisteredLibrary>();
- RegisteredLibrary[] allLibraries = RegisteredLibrary.getRegisteredLibraries();
+ protected Collection<IRegisteredLibrary> getImportedLibraries() {
+ List<IRegisteredLibrary> libraries = new ArrayList<IRegisteredLibrary>();
+ IRegisteredLibrary[] allLibraries = Registry.getRegisteredLibraries().toArray(new IRegisteredLibrary[0]);
for(int i = 0; i < allLibraries.length; i++) {
- RegisteredLibrary registeredLibrary = allLibraries[i];
+ IRegisteredLibrary registeredLibrary = allLibraries[i];
List<String> importedPackageNames = PackageUtil.getImportedPackagesNames((Package)getSelectedElement());
// problem: name of library might be different from name of top-level package
if(importedPackageNames.contains(registeredLibrary.getName())) {
@@ -155,7 +156,7 @@ public class ImportRegisteredPackageHandler extends AbstractImportHandler {
Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
// get the set of registered libraries available
- RegisteredLibrary[] allLibraries = RegisteredLibrary.getRegisteredLibraries();
+ IRegisteredLibrary[] allLibraries = Registry.getRegisteredLibraries().toArray(new IRegisteredLibrary[0]);
// Open Registered ModelLibrary selection dialog
FilteredRegisteredLibrariesSelectionDialog dialog = new FilteredRegisteredLibrariesSelectionDialog(shell, true, allLibraries, getImportedLibraries());
@@ -163,7 +164,7 @@ public class ImportRegisteredPackageHandler extends AbstractImportHandler {
if(Dialog.OK == dialog.getReturnCode()) {
// get the result, which is the set of libraries to import
List<Object> librariesToImport = Arrays.asList(dialog.getResult());
- importLibraries(librariesToImport.toArray(new RegisteredLibrary[librariesToImport.size()]));
+ importLibraries(librariesToImport.toArray(new IRegisteredLibrary[librariesToImport.size()]));
}
}
}, "Import Libraries", "Import Libraries from Repository"); //$NON-NLS-1$ //$NON-NLS-2$
diff --git a/plugins/uml/org.eclipse.papyrus.uml.import/src/org/eclipse/papyrus/uml/importt/handlers/ImportRegisteredProfileHandler.java b/plugins/uml/org.eclipse.papyrus.uml.import/src/org/eclipse/papyrus/uml/importt/handlers/ImportRegisteredProfileHandler.java
index a3ee992387a..f007be7039b 100644
--- a/plugins/uml/org.eclipse.papyrus.uml.import/src/org/eclipse/papyrus/uml/importt/handlers/ImportRegisteredProfileHandler.java
+++ b/plugins/uml/org.eclipse.papyrus.uml.import/src/org/eclipse/papyrus/uml/importt/handlers/ImportRegisteredProfileHandler.java
@@ -10,7 +10,7 @@
* Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
* Christian W. Damus (CEA) - Refactoring package/profile import/apply UI for CDO
* Christian W. Damus (CEA) - bug 323802
- *
+ * Dr. David H. Akehurst - enable programmatic registration
*****************************************************************************/
package org.eclipse.papyrus.uml.importt.handlers;
@@ -27,8 +27,9 @@ import org.eclipse.gmf.runtime.common.core.command.ICommand;
import org.eclipse.jface.dialogs.Dialog;
import org.eclipse.jface.window.Window;
import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
+import org.eclipse.papyrus.uml.extensionpoints.Registry;
import org.eclipse.papyrus.uml.extensionpoints.profile.FilteredRegisteredProfilesAsLibrarySelectionDialog;
-import org.eclipse.papyrus.uml.extensionpoints.profile.RegisteredProfile;
+import org.eclipse.papyrus.uml.extensionpoints.profile.IRegisteredProfile;
import org.eclipse.papyrus.uml.extensionpoints.utils.Util;
import org.eclipse.papyrus.uml.profile.ui.dialogs.ElementImportTreeSelectionDialog.ImportSpec;
import org.eclipse.papyrus.uml.profile.ui.dialogs.ProfileTreeSelectionDialog;
@@ -72,7 +73,7 @@ public class ImportRegisteredProfileHandler extends AbstractImportHandler {
Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
// get the set of registered libraries available
- RegisteredProfile[] allProfiles = RegisteredProfile.getRegisteredProfiles();
+ IRegisteredProfile[] allProfiles = Registry.getRegisteredProfiles().toArray(new IRegisteredProfile[0]);
// Open Registered ModelLibrary selection dialog
FilteredRegisteredProfilesAsLibrarySelectionDialog dialog = new FilteredRegisteredProfilesAsLibrarySelectionDialog(shell, true, allProfiles, getImportedProfiles());
@@ -80,7 +81,7 @@ public class ImportRegisteredProfileHandler extends AbstractImportHandler {
if(Dialog.OK == dialog.getReturnCode()) {
// get the result, which is the set of libraries to import
List<Object> profilesToImport = Arrays.asList(dialog.getResult());
- importProfiles(profilesToImport.toArray(new RegisteredProfile[profilesToImport.size()]));
+ importProfiles(profilesToImport.toArray(new IRegisteredProfile[profilesToImport.size()]));
}
}
}, "Import Profile", "Import Profile from Registred Profiles"); //$NON-NLS-1$ //$NON-NLS-2$
@@ -93,14 +94,14 @@ public class ImportRegisteredProfileHandler extends AbstractImportHandler {
* @param profilesToImport
* the profiles to import
*/
- protected void importProfiles(RegisteredProfile[] profilesToImport) {
+ protected void importProfiles(IRegisteredProfile[] profilesToImport) {
// create a temporary resource set. Be sure to unload it so that we don't leak models in the CacheAdapter!
ResourceSet resourceSet = Util.createTemporaryResourceSet();
try {
for(int i = 0; i < profilesToImport.length; i++) {
- RegisteredProfile currentLibrary = (profilesToImport[i]);
- URI modelUri = currentLibrary.uri;
+ IRegisteredProfile currentLibrary = (profilesToImport[i]);
+ URI modelUri = currentLibrary.getUri();
Resource modelResource = resourceSet.getResource(modelUri, true);
// PackageImportTreeSelectionDialog dialog = new PackageImportTreeSelectionDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), ((Package)modelResource.getContents().get(0)));
@@ -134,11 +135,11 @@ public class ImportRegisteredProfileHandler extends AbstractImportHandler {
* @return
* the list of the profiles which are already imported
*/
- protected Collection<RegisteredProfile> getImportedProfiles() {
- List<RegisteredProfile> profiles = new ArrayList<RegisteredProfile>();
- RegisteredProfile[] allLibraries = RegisteredProfile.getRegisteredProfiles();
+ protected Collection<IRegisteredProfile> getImportedProfiles() {
+ List<IRegisteredProfile> profiles = new ArrayList<IRegisteredProfile>();
+ IRegisteredProfile[] allLibraries = Registry.getRegisteredProfiles().toArray(new IRegisteredProfile[0]);
for(int i = 0; i < allLibraries.length; i++) {
- RegisteredProfile registeredProfile = allLibraries[i];
+ IRegisteredProfile registeredProfile = allLibraries[i];
List<String> importedPackageNames = PackageUtil.getImportedPackagesNames((Package)getSelectedElement());
// problem: name of library might be different from name of top-level package
if(importedPackageNames.contains(registeredProfile.getName())) {

Back to the top