Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEike Stepper2018-05-02 11:27:46 +0000
committerEike Stepper2018-05-02 11:27:46 +0000
commit52a62ab5e7e7d8aff1e482a32a453fe67ff3bf62 (patch)
treee244ba54a213cd4118b453a16aa2b156cb62c824 /plugins/org.eclipse.emf.cdo/src/org/eclipse
parentb1cf5c385c916946ea044f0325b74b3907c262ed (diff)
downloadcdo-52a62ab5e7e7d8aff1e482a32a453fe67ff3bf62.tar.gz
cdo-52a62ab5e7e7d8aff1e482a32a453fe67ff3bf62.tar.xz
cdo-52a62ab5e7e7d8aff1e482a32a453fe67ff3bf62.zip
[534254] [DB] Create all mapped tables lazily
https://bugs.eclipse.org/bugs/show_bug.cgi?id=534254
Diffstat (limited to 'plugins/org.eclipse.emf.cdo/src/org/eclipse')
-rw-r--r--plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/util/CompletePackageClosure.java53
1 files changed, 21 insertions, 32 deletions
diff --git a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/util/CompletePackageClosure.java b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/util/CompletePackageClosure.java
index fda65177e8..96b61eb744 100644
--- a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/util/CompletePackageClosure.java
+++ b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/util/CompletePackageClosure.java
@@ -25,7 +25,6 @@ import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EParameter;
import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.emf.ecore.ETypeParameter;
-import org.eclipse.emf.ecore.EcorePackage;
import java.text.MessageFormat;
import java.util.HashSet;
@@ -39,53 +38,43 @@ public class CompletePackageClosure extends PackageClosure
{
private static final ContextTracer TRACER = new ContextTracer(OM.DEBUG_MODEL, CompletePackageClosure.class);
- private boolean excludeEcore;
-
public CompletePackageClosure()
{
}
- public CompletePackageClosure(boolean excludeEcore)
- {
- this.excludeEcore = excludeEcore;
- }
-
@Override
protected void handleEPackage(EPackage ePackage, Set<EPackage> visitedPackages)
{
- if (ePackage != null && visitedPackages.add(ePackage))
+ if (ePackage != null)
{
- if (excludeEcore && // Optimize EPackage comparison
- (EcorePackage.eINSTANCE == ePackage || EcorePackage.eNS_URI.equals(ePackage.getNsURI())))
+ if (visitedPackages.add(ePackage))
{
- return;
- }
-
- Set<Object> visited = new HashSet<Object>();
- for (EClassifier classifier : ePackage.getEClassifiers())
- {
- handleEClassifier(classifier, visitedPackages, visited);
- }
+ Set<Object> visited = new HashSet<Object>();
+ for (EClassifier classifier : ePackage.getEClassifiers())
+ {
+ handleEClassifier(classifier, visitedPackages, visited);
+ }
- for (Object object : visited)
- {
- if (object instanceof EClassifier)
+ for (Object object : visited)
{
- EClassifier classifier = (EClassifier)object;
- final EPackage p = classifier.getEPackage();
- if (p != null)
+ if (object instanceof EClassifier)
{
- if (visitedPackages.add(p))
+ EClassifier classifier = (EClassifier)object;
+ final EPackage p = classifier.getEPackage();
+ if (p != null)
{
- if (TRACER.isEnabled())
+ if (visitedPackages.add(p))
{
- TRACER.trace("Found package " + p.getNsURI()); //$NON-NLS-1$
+ if (TRACER.isEnabled())
+ {
+ TRACER.trace("Found package " + p.getNsURI()); //$NON-NLS-1$
+ }
}
}
- }
- else
- {
- OM.LOG.warn(MessageFormat.format(Messages.getString("CompletePackageClosure.0"), classifier.getName())); //$NON-NLS-1$
+ else
+ {
+ OM.LOG.warn(MessageFormat.format(Messages.getString("CompletePackageClosure.0"), classifier.getName())); //$NON-NLS-1$
+ }
}
}
}

Back to the top