diff options
author | Pierre-Charles David | 2018-06-21 09:15:43 +0000 |
---|---|---|
committer | Maxime Porhel | 2018-07-18 14:43:12 +0000 |
commit | ba8e7e02179b6cbb21595c9bff396ef6fe932cd2 (patch) | |
tree | 52ae4e929b6b8545c2c099bc72b82516777c7b5f | |
parent | ecab2308072bab2d11a0bb2ef75efac8371904bb (diff) | |
download | org.eclipse.sirius-ba8e7e02179b6cbb21595c9bff396ef6fe932cd2.tar.gz org.eclipse.sirius-ba8e7e02179b6cbb21595c9bff396ef6fe932cd2.tar.xz org.eclipse.sirius-ba8e7e02179b6cbb21595c9bff396ef6fe932cd2.zip |
[537152] Do not propagate special imports to the Query Legacy
interpreter
Bug: 537152
Cherry-picked-from: 536124
Change-Id: I60d476d8b72f1a5a46f810e70523b648bbe9e6b3
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
-rw-r--r-- | plugins/org.eclipse.sirius/src/org/eclipse/sirius/tools/internal/interpreter/SessionInterpreter.java | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/plugins/org.eclipse.sirius/src/org/eclipse/sirius/tools/internal/interpreter/SessionInterpreter.java b/plugins/org.eclipse.sirius/src/org/eclipse/sirius/tools/internal/interpreter/SessionInterpreter.java index 679a15f925..b26390867b 100644 --- a/plugins/org.eclipse.sirius/src/org/eclipse/sirius/tools/internal/interpreter/SessionInterpreter.java +++ b/plugins/org.eclipse.sirius/src/org/eclipse/sirius/tools/internal/interpreter/SessionInterpreter.java @@ -117,7 +117,13 @@ public class SessionInterpreter implements IInterpreter, IProposalProvider, IInt if (this.dependencies.add(dependency)) { for (final IInterpreter interpreter : this.loadedInterpreters.values()) { if (interpreter != null) { - interpreter.addImport(dependency); + // Is the class imported from one of the white-listed plug-ins (which are not in the normal search path of interpreters)? + boolean isSpecialImport = dependency != null && (dependency.startsWith("org.eclipse.sirius.properties.") || dependency.startsWith("org.eclipse.sirius.common.")); //$NON-NLS-1$ //$NON-NLS-2$ + // Is the target interpreter the legacy one, which does not support the plug-ins white list? + boolean isTargetLegacyInterpreter = interpreter.getClass().getName().startsWith("org.eclipse.sirius.query.legacy."); //$NON-NLS-1$ + if (!isSpecialImport || !isTargetLegacyInterpreter) { + interpreter.addImport(dependency); + } } } } |