diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/references/MavenUrlPsiReference.java b/platform/platform-impl/src/com/intellij/psi/impl/UrlPsiReference.java similarity index 72% rename from plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/references/MavenUrlPsiReference.java rename to platform/platform-impl/src/com/intellij/psi/impl/UrlPsiReference.java index 12fd29d00798..9a52a5691815 100644 --- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/references/MavenUrlPsiReference.java +++ b/platform/platform-impl/src/com/intellij/psi/impl/UrlPsiReference.java @@ -13,33 +13,32 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.jetbrains.idea.maven.dom.references; +package com.intellij.psi.impl; import com.intellij.ide.BrowserUtil; -import com.intellij.openapi.util.TextRange; import com.intellij.psi.PsiElement; -import com.intellij.psi.impl.FakePsiElement; +import com.intellij.psi.PsiReferenceBase; import org.jetbrains.annotations.NotNull; -public class MavenUrlPsiReference extends MavenPsiReference { - public MavenUrlPsiReference(PsiElement element, String text, TextRange range) { - super(element, text, range); +public class UrlPsiReference extends PsiReferenceBase { + public UrlPsiReference(PsiElement element) { + super(element); } public PsiElement resolve() { return new FakePsiElement() { public PsiElement getParent() { - return myElement; + return getElement(); } @Override public String getName() { - return myText; + return getValue(); } @Override public void navigate(boolean requestFocus) { - BrowserUtil.launchBrowser(myText); + BrowserUtil.launchBrowser(getValue()); } }; } @@ -48,4 +47,9 @@ public class MavenUrlPsiReference extends MavenPsiReference { public Object[] getVariants() { return EMPTY_ARRAY; } + + @Override + public boolean isSoft() { + return true; + } } \ No newline at end of file diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/converters/MavenUrlConverter.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/converters/MavenUrlConverter.java index c4f864a642ec..d7a4ca4bae4f 100644 --- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/converters/MavenUrlConverter.java +++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/converters/MavenUrlConverter.java @@ -18,10 +18,10 @@ package org.jetbrains.idea.maven.dom.converters; import com.intellij.openapi.util.TextRange; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiReference; +import com.intellij.psi.impl.UrlPsiReference; import com.intellij.util.xml.ConvertContext; import org.jetbrains.annotations.NonNls; import org.jetbrains.annotations.Nullable; -import org.jetbrains.idea.maven.dom.references.MavenUrlPsiReference; public class MavenUrlConverter extends MavenReferenceConverter { @Override @@ -35,6 +35,6 @@ public class MavenUrlConverter extends MavenReferenceConverter { } protected PsiReference createReference(PsiElement element, String text, TextRange range) { - return new MavenUrlPsiReference(element, text, range); + return new UrlPsiReference(element); } } \ No newline at end of file diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/converters/repositories/MavenRepositoryConverter.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/converters/repositories/MavenRepositoryConverter.java index 4b08baf40d1d..46fa023da939 100644 --- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/converters/repositories/MavenRepositoryConverter.java +++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/converters/repositories/MavenRepositoryConverter.java @@ -18,11 +18,10 @@ package org.jetbrains.idea.maven.dom.converters.repositories; import com.intellij.codeInsight.lookup.LookupElement; import com.intellij.codeInsight.lookup.LookupElementBuilder; import com.intellij.openapi.module.Module; -import com.intellij.openapi.util.TextRange; import com.intellij.openapi.util.text.StringUtil; -import com.intellij.psi.ElementManipulators; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiReference; +import com.intellij.psi.impl.UrlPsiReference; import com.intellij.util.xml.ConvertContext; import com.intellij.util.xml.GenericDomValue; import com.intellij.util.xml.ResolvingConverter; @@ -31,7 +30,6 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.idea.maven.dom.converters.MavenUrlConverter; import org.jetbrains.idea.maven.dom.model.MavenDomRepositoryBase; -import org.jetbrains.idea.maven.dom.references.MavenUrlPsiReference; import java.util.Collection; import java.util.Collections; @@ -77,9 +75,7 @@ public abstract class MavenRepositoryConverter extends ResolvingConverter