diff --git a/java/java-impl/src/com/intellij/util/xml/CanonicalPsiTypeConverterImpl.java b/java/java-impl/src/com/intellij/util/xml/CanonicalPsiTypeConverterImpl.java index 88ccc0a629ef..dda239eb1848 100644 --- a/java/java-impl/src/com/intellij/util/xml/CanonicalPsiTypeConverterImpl.java +++ b/java/java-impl/src/com/intellij/util/xml/CanonicalPsiTypeConverterImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2000-2011 JetBrains s.r.o. + * Copyright 2000-2013 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -32,9 +32,7 @@ import org.jetbrains.annotations.NotNull; * @author peter */ public class CanonicalPsiTypeConverterImpl extends CanonicalPsiTypeConverter implements CustomReferenceConverter { - - @NonNls static final String[] PRIMITIVES = new String[]{"boolean", "byte", - "char", "double", "float", "int", "long", "short"}; + @NonNls static final String[] PRIMITIVES = {"boolean", "byte", "char", "double", "float", "int", "long", "short"}; @NonNls private static final String ARRAY_PREFIX = "[L"; private static final JavaClassReferenceProvider CLASS_REFERENCE_PROVIDER = new JavaClassReferenceProvider(); @@ -71,9 +69,8 @@ public class CanonicalPsiTypeConverterImpl extends CanonicalPsiTypeConverter imp } } return new JavaClassReferenceSet(trimmed, element, offset, false, CLASS_REFERENCE_PROVIDER) { - protected JavaClassReference createReference(final int referenceIndex, final String subreferenceText, final TextRange textRange, - final boolean staticImport) { - return new JavaClassReference(this, textRange, referenceIndex, subreferenceText, staticImport) { + protected JavaClassReference createReference(int refIndex, String subRefText, TextRange textRange, boolean staticImport) { + return new JavaClassReference(this, textRange, refIndex, subRefText, staticImport) { public boolean isSoft() { return true; } @@ -103,7 +100,7 @@ public class CanonicalPsiTypeConverterImpl extends CanonicalPsiTypeConverter imp public Object[] getVariants() { final Object[] variants = super.getVariants(); if (myIndex == 0) { - return ArrayUtil.mergeArrays(variants, PRIMITIVES); + return ArrayUtil.mergeArrays(variants, PRIMITIVES, ArrayUtil.OBJECT_ARRAY_FACTORY); } return variants; } diff --git a/xml/dom-tests/tests/com/intellij/util/xml/DomHardCoreTestCase.java b/xml/dom-tests/tests/com/intellij/util/xml/DomHardCoreTestCase.java index c2f13f6368cb..8488e6a69743 100644 --- a/xml/dom-tests/tests/com/intellij/util/xml/DomHardCoreTestCase.java +++ b/xml/dom-tests/tests/com/intellij/util/xml/DomHardCoreTestCase.java @@ -75,6 +75,7 @@ public abstract class DomHardCoreTestCase extends CodeInsightTestCase { final XmlTagValue tagValue = value.getXmlTag().getValue(); final TextRange textRange = tagValue.getTextRange(); final String s = value.getStringValue(); + assertNotNull(s); final int i = tagValue.getText().indexOf(s); return assertReference(value, resolveTo, textRange.getStartOffset() + i + s.length()); } @@ -83,18 +84,21 @@ public abstract class DomHardCoreTestCase extends CodeInsightTestCase { final XmlTag tag = value.getXmlTag(); final PsiReference reference = tag.getContainingFile().findReferenceAt(offset); assertNotNull(reference); + reference.getVariants(); assertEquals(resolveTo, reference.resolve()); return reference; } protected PsiReference getReference(final GenericAttributeValue value) { final XmlAttributeValue attributeValue = value.getXmlAttributeValue(); + assertNotNull(attributeValue); final PsiReference reference = attributeValue.getContainingFile().findReferenceAt(attributeValue.getTextRange().getStartOffset() + 1); assertNotNull(reference); assertEquals(attributeValue, reference.resolve()); return reference; } + @SuppressWarnings("deprecation") protected void assertVariants(PsiReference reference, String... variants) { Object[] refVariants = reference.getVariants(); assertNotNull(refVariants);