From d51425a1f2297ec5dd0a02da397aa7d5356ff857 Mon Sep 17 00:00:00 2001 From: Sergey Evdokimov Date: Sun, 11 Mar 2012 14:41:49 +0400 Subject: [PATCH] IDEA-79812 (Spring config highlights all properies as errors yet Idea can still navigate to the property in the .properties file) --- .../dom/references/MavenFilteredPropertyPsiReference.java | 4 ++-- .../MavenFilteredPropertyPsiReferenceProvider.java | 3 +-- .../dom/references/MavenPropertyCompletionContributor.java | 3 +-- .../MavenFilteredPropertiesCompletionAndResolutionTest.java | 5 ++++- 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/references/MavenFilteredPropertyPsiReference.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/references/MavenFilteredPropertyPsiReference.java index 26dafe7f8319..e198e8647a16 100644 --- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/references/MavenFilteredPropertyPsiReference.java +++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/references/MavenFilteredPropertyPsiReference.java @@ -29,8 +29,8 @@ import org.jetbrains.idea.maven.project.MavenProject; import java.util.List; public class MavenFilteredPropertyPsiReference extends MavenPropertyPsiReference { - public MavenFilteredPropertyPsiReference(MavenProject mavenProject, PsiElement element, String text, TextRange range, boolean isSoft) { - super(mavenProject, element, text, range, isSoft); + public MavenFilteredPropertyPsiReference(MavenProject mavenProject, PsiElement element, String text, TextRange range) { + super(mavenProject, element, text, range, true); } @Override diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/references/MavenFilteredPropertyPsiReferenceProvider.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/references/MavenFilteredPropertyPsiReferenceProvider.java index 501f7f40beb8..9b4320a5cc6c 100644 --- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/references/MavenFilteredPropertyPsiReferenceProvider.java +++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/references/MavenFilteredPropertyPsiReferenceProvider.java @@ -138,8 +138,7 @@ public class MavenFilteredPropertyPsiReferenceProvider extends PsiReferenceProvi TextRange range = TextRange.from(from, propertyName.length()); - res.add( - new MavenFilteredPropertyPsiReference(mavenProject, element, propertyName, range, MavenPropertyPsiReferenceProvider.SOFT_DEFAULT)); + res.add(new MavenFilteredPropertyPsiReference(mavenProject, element, propertyName, range)); } return res == null ? PsiReference.EMPTY_ARRAY : res.toArray(new PsiReference[res.size()]); diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/references/MavenPropertyCompletionContributor.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/references/MavenPropertyCompletionContributor.java index 396146253dad..2a3d6871b4b6 100644 --- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/references/MavenPropertyCompletionContributor.java +++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/references/MavenPropertyCompletionContributor.java @@ -53,8 +53,7 @@ public class MavenPropertyCompletionContributor extends CompletionContributor { TextRange range = TextRange.create(braceOffset, offset); String prefix = range.substring(text); - MavenFilteredPropertyPsiReference ref = new MavenFilteredPropertyPsiReference(projectFile, psiFile, prefix, range, - MavenPropertyPsiReferenceProvider.SOFT_DEFAULT); + MavenFilteredPropertyPsiReference ref = new MavenFilteredPropertyPsiReference(projectFile, psiFile, prefix, range); addVariants(Arrays.asList(ref.getVariants()), result.withPrefixMatcher(prefix)); } diff --git a/plugins/maven/src/test/java/org/jetbrains/idea/maven/dom/MavenFilteredPropertiesCompletionAndResolutionTest.java b/plugins/maven/src/test/java/org/jetbrains/idea/maven/dom/MavenFilteredPropertiesCompletionAndResolutionTest.java index f3a1c49b1b41..ab598af2dc21 100644 --- a/plugins/maven/src/test/java/org/jetbrains/idea/maven/dom/MavenFilteredPropertiesCompletionAndResolutionTest.java +++ b/plugins/maven/src/test/java/org/jetbrains/idea/maven/dom/MavenFilteredPropertiesCompletionAndResolutionTest.java @@ -20,6 +20,7 @@ import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.PsiDirectory; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiManager; +import com.intellij.psi.PsiReference; import org.jetbrains.annotations.Nullable; import org.jetbrains.idea.maven.dom.model.MavenDomProfilesModel; import org.jetbrains.idea.maven.dom.references.MavenPropertyPsiReference; @@ -493,7 +494,9 @@ public class MavenFilteredPropertiesCompletionAndResolutionTest extends MavenDom assertNotNull(resolveReference(f, "basedir")); assertNotNull(resolveReference(f, "pom.baseUri")); - assertNotNull(getReference(f, "ve|rsion")); + PsiReference ref = getReference(f, "ve|rsion"); + assertNotNull(ref); + assertTrue(ref.isSoft()); } public void testDontUseDefaultDelimiter1() throws Exception {