Skip to content

Commit 02bd63c

Browse files
committed
normalize URI before using it to find an IProject
1 parent 13f8794 commit 02bd63c

1 file changed

Lines changed: 11 additions & 9 deletions

File tree

  • Eclipse-Integration/org.emftext.language.java.resource.jdt/src/org/emftext/language/java/resource/jdt

Eclipse-Integration/org.emftext.language.java.resource.jdt/src/org/emftext/language/java/resource/jdt/JDTConnector.java

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
import org.eclipse.emf.common.util.URI;
2323
import org.eclipse.emf.ecore.resource.Resource;
2424
import org.eclipse.emf.ecore.resource.ResourceSet;
25+
import org.eclipse.emf.ecore.resource.URIConverter;
2526
import org.eclipse.jdt.core.IJavaProject;
2627
import org.emftext.commons.jdt.JDTJavaClassifier;
2728
import org.emftext.commons.jdt.resolve.JDTClassifierResolver;
@@ -45,20 +46,21 @@ private void initializeResourceSet(ResourceSet resourceSet, URI resourceURI) {
4546
if (resourceSet == null) {
4647
return;
4748
}
48-
if (resourceSet.getURIConverter() == null) {
49+
if (resourceURI == null) {
4950
return;
5051
}
51-
if (!resourceSet.getURIConverter().normalize(resourceURI)
52-
.isPlatformResource()) {
52+
URIConverter uriConverter = resourceSet.getURIConverter();
53+
if (uriConverter == null) {
5354
return;
5455
}
55-
56-
if (resourceURI != null) {
57-
JDTClassifierResolver jdtClassResolver = new JDTClassifierResolver();
58-
IJavaProject javaProject = jdtClassResolver.getJavaProject(resourceURI);
59-
List<JDTJavaClassifier> classifiersInClassPath = jdtClassResolver.getAllClassifiersInClassPath(javaProject);
60-
registerJavaProjectInClassPath(resourceSet, classifiersInClassPath);
56+
URI normalizedURI = uriConverter.normalize(resourceURI);
57+
if (!normalizedURI.isPlatformResource()) {
58+
return;
6159
}
60+
JDTClassifierResolver jdtClassResolver = new JDTClassifierResolver();
61+
IJavaProject javaProject = jdtClassResolver.getJavaProject(normalizedURI);
62+
List<JDTJavaClassifier> classifiersInClassPath = jdtClassResolver.getAllClassifiersInClassPath(javaProject);
63+
registerJavaProjectInClassPath(resourceSet, classifiersInClassPath);
6264
}
6365

6466
private void registerJavaProjectInClassPath(ResourceSet resourceSet,

0 commit comments

Comments
 (0)