diff options
author | Christian W. Damus | 2015-02-10 22:18:47 +0000 |
---|---|---|
committer | Christian W. Damus | 2015-02-10 22:18:47 +0000 |
commit | aacc2baf18c0599c719ebd8ce9fff9293e4c0f5a (patch) | |
tree | 9a9a60ccf32e3ef1a2175d2808cad0fb05e29750 | |
parent | c9f951d7888a9a8c76e4c8930de5c20dbfd9d21c (diff) | |
download | org.eclipse.papyrus-aacc2baf18c0599c719ebd8ce9fff9293e4c0f5a.tar.gz org.eclipse.papyrus-aacc2baf18c0599c719ebd8ce9fff9293e4c0f5a.tar.xz org.eclipse.papyrus-aacc2baf18c0599c719ebd8ce9fff9293e4c0f5a.zip |
Bug 456934: Random errors causing org.eclipse.uml2.uml.rsa content type to be disabled
https://bugs.eclipse.org/bugs/show_bug.cgi?id=456934
Initializing the registered packages *after* kicking off the multiple concurrent
threads that exercise the content describers obviously isn't going to help.
-rw-r--r-- | plugins/uml/decoratormodel/org.eclipse.papyrus.uml.decoratormodel/src/org/eclipse/papyrus/uml/decoratormodel/internal/resource/DecoratorModelIndex.java | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/plugins/uml/decoratormodel/org.eclipse.papyrus.uml.decoratormodel/src/org/eclipse/papyrus/uml/decoratormodel/internal/resource/DecoratorModelIndex.java b/plugins/uml/decoratormodel/org.eclipse.papyrus.uml.decoratormodel/src/org/eclipse/papyrus/uml/decoratormodel/internal/resource/DecoratorModelIndex.java index 646518aa82c..2cd1d531fb1 100644 --- a/plugins/uml/decoratormodel/org.eclipse.papyrus.uml.decoratormodel/src/org/eclipse/papyrus/uml/decoratormodel/internal/resource/DecoratorModelIndex.java +++ b/plugins/uml/decoratormodel/org.eclipse.papyrus.uml.decoratormodel/src/org/eclipse/papyrus/uml/decoratormodel/internal/resource/DecoratorModelIndex.java @@ -30,7 +30,6 @@ import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IStatus; import org.eclipse.core.runtime.Status; import org.eclipse.emf.common.util.URI; -import org.eclipse.emf.ecore.EPackage; import org.eclipse.emf.ecore.EcorePackage; import org.eclipse.emf.ecore.xml.type.XMLTypePackage; import org.eclipse.papyrus.infra.emf.resource.index.WorkspaceModelIndex; @@ -63,6 +62,14 @@ public class DecoratorModelIndex { private static final int MAX_INDEX_JOBS = 5; + static { + // Ensure that packages required by the UML content describers won't be initialized in parallel by project index jobs + EcorePackage.eINSTANCE.eClass(); + XMLTypePackage.eINSTANCE.eClass(); + UMLPackage.eINSTANCE.eClass(); + ProfileExternalizationPackage.eINSTANCE.eClass(); + } + private static final DecoratorModelIndex INSTANCE = new DecoratorModelIndex(); private final Object sync = new Object(); @@ -77,14 +84,6 @@ public class DecoratorModelIndex { private final CopyOnWriteArrayList<IDecoratorModelIndexListener> listeners = Lists.newCopyOnWriteArrayList(); - static { - // Ensure that packages required by the UML content describers won't be initialized in parallel by project index jobs - EPackage.Registry.INSTANCE.getEPackage(EcorePackage.eNS_URI); - EPackage.Registry.INSTANCE.getEPackage(XMLTypePackage.eNS_URI); - EPackage.Registry.INSTANCE.getEPackage(UMLPackage.eNS_URI); - EPackage.Registry.INSTANCE.getEPackage(ProfileExternalizationPackage.eNS_URI); - } - /** * Not instantiable by clients. */ |