diff options
Diffstat (limited to 'extraplugins/cdo/org.eclipse.papyrus.cdo.core/src/org/eclipse/papyrus/cdo/internal/core/importer/DependencyAdapter.java')
-rw-r--r-- | extraplugins/cdo/org.eclipse.papyrus.cdo.core/src/org/eclipse/papyrus/cdo/internal/core/importer/DependencyAdapter.java | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/extraplugins/cdo/org.eclipse.papyrus.cdo.core/src/org/eclipse/papyrus/cdo/internal/core/importer/DependencyAdapter.java b/extraplugins/cdo/org.eclipse.papyrus.cdo.core/src/org/eclipse/papyrus/cdo/internal/core/importer/DependencyAdapter.java index e5f145708c4..6254b035849 100644 --- a/extraplugins/cdo/org.eclipse.papyrus.cdo.core/src/org/eclipse/papyrus/cdo/internal/core/importer/DependencyAdapter.java +++ b/extraplugins/cdo/org.eclipse.papyrus.cdo.core/src/org/eclipse/papyrus/cdo/internal/core/importer/DependencyAdapter.java @@ -20,6 +20,7 @@ import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.resource.Resource; import org.eclipse.emf.ecore.resource.ResourceSet; import org.eclipse.papyrus.cdo.internal.core.CDOUtils; +import org.eclipse.papyrus.infra.core.resource.ModelSet; import org.eclipse.papyrus.infra.core.resource.sasheditor.DiModel; import org.eclipse.papyrus.infra.core.sashwindows.di.SashWindowsMngr; @@ -133,8 +134,16 @@ public class DependencyAdapter extends AdapterImpl { } boolean isUserModelResource(URI uri) { - return // config.hasResource(uri) && - (uri.isPlatformResource() || uri.isFile() || CDOUtils.isCDOURI(uri)) && !uri.isArchive(); + ModelSet modelSet = getModelSet(); + boolean result = (modelSet != null) ? modelSet.isUserModelResource(uri) : + // config.hasResource(uri) && + uri.isPlatformResource() || uri.isFile() || CDOUtils.isCDOURI(uri); + + return result && !uri.isArchive(); + } + + private ModelSet getModelSet() { + return CDOUtils.adapt(getResource().getResourceSet(), ModelSet.class); } public static boolean isDIResource(Resource resource) { |