garbage reduced
authorAlexey Kudravtsev <cdr@jetbrains.com>
Wed, 17 Dec 2008 16:06:37 +0000 (19:06 +0300)
committerAlexey Kudravtsev <cdr@jetbrains.com>
Wed, 17 Dec 2008 16:06:37 +0000 (19:06 +0300)
148 files changed:
codeInsight/impl/com/intellij/codeInsight/completion/JavaCompletionUtil.java
codeInsight/impl/com/intellij/codeInsight/completion/ModifierChooser.java
codeInsight/impl/com/intellij/codeInsight/javadoc/JavaDocUtil.java
compiler/impl/com/intellij/compiler/CompilerConfigurationImpl.java
compiler/impl/com/intellij/compiler/CompilerManagerImpl.java
compiler/impl/com/intellij/compiler/ant/ModuleChunkClasspath.java
compiler/impl/com/intellij/compiler/classParsing/ClassFileReader.java
compiler/impl/com/intellij/compiler/classParsing/GenericMethodSignature.java
compiler/impl/com/intellij/compiler/classParsing/MethodInfo.java
compiler/impl/com/intellij/compiler/impl/javaCompiler/eclipse/EclipseCompiler.java
compiler/impl/com/intellij/compiler/impl/javaCompiler/eclipse/EclipseEmbeddedCompiler.java
compiler/impl/com/intellij/compiler/impl/javaCompiler/javac/JavacCompiler.java
compiler/impl/com/intellij/compiler/impl/javaCompiler/jikes/JikesCompiler.java
compiler/impl/com/intellij/compiler/impl/rmiCompiler/JavacOutputParserPool.java
compiler/impl/com/intellij/compiler/make/BoundsParser.java
compiler/impl/com/intellij/compiler/make/CacheUtils.java
compiler/impl/com/intellij/compiler/progress/CompilerTask.java
dom/openapi/src/com/intellij/util/xml/DomUtil.java
dom/openapi/src/com/intellij/util/xml/model/gotosymbol/GoToSymbolProvider.java
dom/openapi/src/com/intellij/util/xml/ui/DomCollectionControl.java
inspections/impl/com/intellij/codeInspection/i18n/I18nizeQuickFixDialog.java
lang-api/src/com/intellij/profile/DefaultProjectProfileManager.java
lang-api/src/com/intellij/refactoring/ui/ConflictsDialog.java
lang-impl/src/com/intellij/application/options/colors/ColorAndFontOptions.java
lang-impl/src/com/intellij/codeInsight/highlighting/BraceHighlighter.java
lang-impl/src/com/intellij/codeInsight/highlighting/BraceHighlightingHandler.java
lang-impl/src/com/intellij/codeInsight/hint/ParameterInfoController.java
lang-impl/src/com/intellij/codeInspection/offlineViewer/OfflineViewParseUtil.java
lang-impl/src/com/intellij/find/EditorSearchComponent.java
lang-impl/src/com/intellij/find/impl/FindSettingsImpl.java
lang-impl/src/com/intellij/ide/commander/CommanderPanel.java
lang-impl/src/com/intellij/ide/favoritesTreeView/FavoritesManager.java
lang-impl/src/com/intellij/ide/favoritesTreeView/FavoritesTreeViewPanel.java
lang-impl/src/com/intellij/ide/fileTemplates/FileTemplateUtil.java
lang-impl/src/com/intellij/ide/projectView/impl/AbstractProjectViewPane.java
lang-impl/src/com/intellij/ide/projectView/impl/ModuleGroupUtil.java
lang-impl/src/com/intellij/ide/projectView/impl/ProjectViewImpl.java
lang-impl/src/com/intellij/ide/structureView/newStructureView/StructureViewComponent.java
lang-impl/src/com/intellij/ide/util/DirectoryChooser.java
lang-impl/src/com/intellij/ide/util/FileStructureDialog.java
lang-impl/src/com/intellij/ide/util/gotoByName/ContributorsBasedGotoByModel.java
lang-impl/src/com/intellij/ide/util/gotoByName/GotoActionModel.java
lang-impl/src/com/intellij/ide/util/gotoByName/ProjectBaseDirNavigationContributor.java
lang-impl/src/com/intellij/ide/util/treeView/AbstractTreeStructureBase.java
lang-impl/src/com/intellij/openapi/projectRoots/impl/CompositeProjectRoot.java
lang-impl/src/com/intellij/openapi/projectRoots/impl/ProjectJdkImpl.java
lang-impl/src/com/intellij/openapi/roots/impl/ModuleRootManagerImpl.java
lang-impl/src/com/intellij/openapi/roots/impl/ModuleSourceOrderEntryImpl.java
lang-impl/src/com/intellij/openapi/roots/impl/libraries/LibraryImpl.java
lang-impl/src/com/intellij/profile/codeInspection/InspectionProfileManager.java
lang-impl/src/com/intellij/psi/filters/getters/AllWordsGetter.java
lang-impl/src/com/intellij/psi/impl/CachedValueImpl.java
lang-impl/src/com/intellij/psi/impl/ParameterizedCachedValueImpl.java
lang-impl/src/com/intellij/psi/impl/source/resolve/reference/ReferenceProvidersRegistry.java
lang-impl/src/com/intellij/psi/search/FilenameIndex.java
lang-impl/src/com/intellij/refactoring/rename/RenameDialog.java
lang-impl/src/com/intellij/tools/ToolManager.java
lang-impl/src/com/intellij/tools/ToolsPanel.java
openapi/src/com/intellij/openapi/roots/AnnotationOrderRootType.java
openapi/src/com/intellij/psi/statistics/JavaStatisticsManager.java
openapi/src/com/intellij/psi/util/PropertyUtil.java
platform-api/src/com/intellij/execution/configurations/ParametersList.java
platform-api/src/com/intellij/featureStatistics/FeatureDescriptor.java
platform-api/src/com/intellij/ide/util/treeView/AbstractTreeUi.java
platform-api/src/com/intellij/ide/util/treeView/UpdaterTreeState.java
platform-api/src/com/intellij/openapi/diff/LineTokenizer.java
platform-api/src/com/intellij/openapi/editor/actions/ContentChooser.java
platform-api/src/com/intellij/openapi/ui/DetailsComponent.java
platform-api/src/com/intellij/openapi/ui/MultiLineLabelUI.java
platform-api/src/com/intellij/ui/SortedListModel.java
platform-impl/src/com/intellij/featureStatistics/FeatureUsageTrackerImpl.java
platform-impl/src/com/intellij/ide/RecentProjectsManagerBase.java
platform-impl/src/com/intellij/ide/errorTreeView/ErrorViewStructure.java
platform-impl/src/com/intellij/openapi/actionSystem/ex/QuickList.java
platform-impl/src/com/intellij/openapi/actionSystem/impl/ActionManagerImpl.java
platform-impl/src/com/intellij/openapi/application/impl/LaterInvocator.java
platform-impl/src/com/intellij/openapi/components/impl/ComponentManagerImpl.java
platform-impl/src/com/intellij/openapi/components/impl/stores/ComponentStoreImpl.java
platform-impl/src/com/intellij/openapi/diff/impl/highlighting/BufferedStringList.java
platform-impl/src/com/intellij/openapi/fileChooser/ex/RootFileElement.java
platform-impl/src/com/intellij/openapi/fileChooser/impl/FileTreeStructure.java
platform-impl/src/com/intellij/openapi/fileTypes/impl/FileTypeAssocTable.java
platform-impl/src/com/intellij/openapi/fileTypes/impl/FileTypeManagerImpl.java
platform-impl/src/com/intellij/openapi/keymap/impl/KeymapImpl.java
platform-impl/src/com/intellij/openapi/keymap/impl/ui/KeyboardShortcutDialog.java
platform-impl/src/com/intellij/openapi/keymap/impl/ui/QuickListPanel.java
platform-impl/src/com/intellij/openapi/vfs/impl/jar/JarHandler.java
platform-impl/src/com/intellij/psi/statistics/impl/StatisticsUnit.java
platform-impl/src/com/intellij/ui/GrowlNotifications.java
platform-impl/src/com/intellij/ui/SplittingUtil.java
plugins/ant/src/com/intellij/lang/ant/config/execution/AntCommandLineBuilder.java
plugins/ant/src/com/intellij/lang/ant/config/explorer/AntExplorer.java
plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/AntElementNameReference.java
plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/AntPropertyReference.java
plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/AntRefIdReference.java
refactoring/impl/com/intellij/refactoring/introduceField/IntroduceConstantDialog.java
refactoring/impl/com/intellij/refactoring/memberPullUp/PullUpConflictsUtil.java
refactoring/impl/com/intellij/refactoring/move/moveMembers/MoveMembersProcessor.java
refactoring/impl/com/intellij/refactoring/replaceConstructorWithFactory/ReplaceConstructorWithFactoryDialog.java
source/com/intellij/facet/impl/autodetecting/DetectedFacetManager.java
source/com/intellij/facet/impl/autodetecting/FacetDetectionIndex.java
source/com/intellij/facet/impl/ui/libraries/RequiredLibrariesInfo.java
source/com/intellij/ide/hierarchy/call/CalleeMethodsTreeStructure.java
source/com/intellij/ide/palette/impl/PaletteWindow.java
source/com/intellij/ide/util/SuperMethodWarningUtil.java
source/com/intellij/ide/util/TreeFileChooserDialog.java
source/com/intellij/ide/util/gotoByName/DefaultSymbolNavigationContributor.java
source/com/intellij/internal/psiView/ViewerTreeStructure.java
source/com/intellij/lang/java/JavaDocumentationProvider.java
source/com/intellij/lang/properties/PropertiesReferenceManager.java
source/com/intellij/lang/properties/PropertyReferenceBase.java
source/com/intellij/openapi/compiler/ex/CompilerPathsEx.java
source/com/intellij/openapi/roots/impl/CompilerModuleExtensionImpl.java
source/com/intellij/openapi/roots/ui/configuration/libraryEditor/LibraryTableEditor.java
source/com/intellij/openapi/roots/ui/configuration/projectRoot/FindUsagesInProjectStructureActionBase.java
source/com/intellij/psi/impl/PsiShortNamesCacheImpl.java
source/com/intellij/psi/impl/compiled/ClsStubBuilder.java
source/com/intellij/psi/impl/compiled/SignatureParsing.java
source/com/intellij/psi/impl/source/codeStyle/ImportHelper.java
source/com/intellij/psi/impl/source/codeStyle/JavaCodeStyleManagerImpl.java
source/com/intellij/psi/impl/source/javadoc/SeeDocTagInfo.java
source/com/intellij/psi/impl/source/tree/java/PsiNameValuePairImpl.java
source/com/intellij/ui/ReferenceEditorComboWithBrowseButton.java
ui-designer/impl/com/intellij/uiDesigner/componentTree/ComponentTreeStructure.java
util/src/com/intellij/openapi/util/JDOMUtil.java
util/src/com/intellij/psi/codeStyle/NameUtil.java
util/src/com/intellij/util/ArrayUtil.java
util/src/com/intellij/util/ui/UIUtil.java
util/src/com/intellij/util/xmlb/BeanBinding.java
util/src/com/intellij/util/xmlb/MapBinding.java
util/src/com/intellij/util/xmlb/TagBinding.java
vcs-impl/src/com/intellij/openapi/vcs/changes/patch/ApplyPatchDialog.java
xdebugger/impl/com/intellij/xdebugger/impl/frame/XWatchesView.java
xml/impl/src/com/intellij/application/options/CodeStyleHtmlPanel.java
xml/impl/src/com/intellij/codeInsight/completion/DtdCompletionData.java
xml/impl/src/com/intellij/codeInsight/completion/XmlCompletionData.java
xml/impl/src/com/intellij/codeInsight/daemon/impl/analysis/CreateNSDeclarationIntentionFix.java
xml/impl/src/com/intellij/codeInsight/daemon/impl/quickfix/AddXsiSchemaLocationForExtResourceAction.java
xml/impl/src/com/intellij/codeInsight/generation/surroundWith/TemplateSurrounder.java
xml/impl/src/com/intellij/javaee/ExternalResourceManagerImpl.java
xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/IdRefReference.java
xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/SchemaReferencesProvider.java
xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/URLReference.java
xml/impl/src/com/intellij/psi/impl/source/xml/TagNameReference.java
xml/impl/src/com/intellij/psi/impl/source/xml/XmlFileImpl.java
xml/impl/src/com/intellij/psi/impl/source/xml/XmlTagImpl.java
xml/impl/src/com/intellij/xml/impl/dtd/XmlAttributeDescriptorImpl.java
xml/impl/src/com/intellij/xml/util/XmlUtil.java

index 2dda7539970af84da447e1db0435d4431fbbc75a..e76d051788b96687b8519a203da58df9f2eb073d 100644 (file)
@@ -383,7 +383,7 @@ public class JavaCompletionUtil {
           .add(((PsiNamedElement)element).getName());
       }
     }
-    return overides.toArray(new String[overides.size()]);
+    return ArrayUtil.toStringArray(overides);
   }
 
   public static String[] getImplements(final PsiClass parent, final PsiType typeByPsiElement) {
@@ -396,7 +396,7 @@ public class JavaCompletionUtil {
           .add(((PsiNamedElement)element).getName());
       }
     }
-    return overides.toArray(new String[overides.size()]);
+    return ArrayUtil.toStringArray(overides);
   }
 
   public static String[] getPropertiesHandlersNames(final PsiClass psiClass,
@@ -431,7 +431,7 @@ public class JavaCompletionUtil {
             }
           }
         }
-        result = propertyHandlers.toArray(new String[propertyHandlers.size()]);
+        result = ArrayUtil.toStringArray(propertyHandlers);
       }
     }
     final Change result = new Change();
@@ -536,7 +536,7 @@ public class JavaCompletionUtil {
         }
       });
     }
-    return unresolvedRefs.toArray(new String[unresolvedRefs.size()]);
+    return ArrayUtil.toStringArray(unresolvedRefs);
   }
 
   public static void initOffsets(final PsiFile file, final Project project, final OffsetMap offsetMap){
index a8c61175fbfb25934f95ed2b588410cb78d11fab..fb705e90e63a047e3b68b7783a2e399e3837f44f 100644 (file)
@@ -6,6 +6,7 @@ import com.intellij.psi.filters.classes.InterfaceFilter;
 import com.intellij.psi.impl.source.jsp.jspJava.JspClassLevelDeclarationStatement;
 import com.intellij.psi.javadoc.PsiDocComment;
 import com.intellij.psi.util.PsiTreeUtil;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.containers.HashMap;
 
 import java.util.ArrayList;
@@ -103,7 +104,7 @@ scopes:
       }
     }
     catch(Exception e){}
-    return ret.toArray(new String[ret.size()]);
+    return ArrayUtil.toStringArray(ret);
   }
 
   private static PsiModifierList getModifierList(PsiElement element)
index 79e0a42572e8395f90cb9f6953729ea3689215e0..54e81f57a8a514853b4b3917aa2397e95f6e244f 100644 (file)
@@ -12,6 +12,7 @@ import com.intellij.psi.codeStyle.CodeStyleSettings;
 import com.intellij.psi.codeStyle.CodeStyleSettingsManager;
 import com.intellij.psi.util.PsiTreeUtil;
 import com.intellij.psi.util.TypeConversionUtil;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.IncorrectOperationException;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.Nullable;
@@ -44,7 +45,7 @@ public class JavaDocUtil {
       }
     }
 
-    return result.toArray(new String[result.size()]);
+    return ArrayUtil.toStringArray(result);
   }
 
   /**
index 9c080e1bc218b7427e73a36c76b41dd08585c1d5..a1c5f7f9ecc464a5fa977d810354cf6a0f7249b9 100644 (file)
@@ -226,7 +226,7 @@ public class CompilerConfigurationImpl extends CompilerConfiguration implements
   }
 
   private String[] getWildcardPatterns() {
-    return myWildcardPatterns.toArray(new String[myWildcardPatterns.size()]);
+    return ArrayUtil.toStringArray(myWildcardPatterns);
   }
 
   public void addResourceFilePattern(String namePattern) throws MalformedPatternException {
index 9ee11db9d3eb41a64661b549672b4f7163c05068..f15a3ed06d4a97c37f5d063cccc0103d1b4f0090 100644 (file)
@@ -15,6 +15,7 @@ import com.intellij.openapi.module.Module;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.vfs.LocalFileSystem;
 import com.intellij.openapi.vfs.VirtualFile;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.Chunk;
 import com.intellij.util.graph.CachingSemiGraph;
 import com.intellij.util.graph.Graph;
@@ -270,15 +271,15 @@ public class CompilerManagerImpl extends CompilerManager {
   }
 
   public static String[] getPathsToDelete() {
-    return ourDeletedPaths.toArray(new String[ourDeletedPaths.size()]);
+    return ArrayUtil.toStringArray(ourDeletedPaths);
   }
 
   public static String[] getPathsToRecompile() {
-    return ourRecompiledPaths.toArray(new String[ourRecompiledPaths.size()]);
+    return ArrayUtil.toStringArray(ourRecompiledPaths);
   }
 
   public static String[] getPathsToCompile() {
-    return ourCompiledPaths.toArray(new String[ourCompiledPaths.size()]);
+    return ArrayUtil.toStringArray(ourCompiledPaths);
   }
 
   public static void clearPathsToCompile() {
index 7c96af58337e7aa616ce261345c952db4a17bf5c..e236e619802d195079b9c46034921b2be79761b9 100644 (file)
@@ -12,6 +12,7 @@ import com.intellij.openapi.project.ex.ProjectEx;
 import com.intellij.openapi.roots.*;
 import com.intellij.openapi.vfs.JarFileSystem;
 import com.intellij.openapi.vfs.VirtualFileManager;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.containers.OrderedSet;
 import gnu.trove.TObjectHashingStrategy;
 
@@ -172,7 +173,7 @@ public class ModuleChunkClasspath extends Path {
     final OrderedSet<String> urls = new OrderedSet<String>();
     urls.addAll(Arrays.asList(orderEntry.getUrls(OrderRootType.CLASSES_AND_OUTPUT)));
     urls.removeAll(jdkUrls);
-    return urls.toArray(new String[urls.size()]);
+    return ArrayUtil.toStringArray(urls);
   }
 
   /**
index 7d5993d8d0c784d553ad8a3678f85ea40185d57a..a2ad38fd7bee48cc77632e9dc678158baf7d9003 100644 (file)
@@ -504,7 +504,7 @@ public class ClassFileReader {
         array.add(exceptionClass);
       }
     }
-    return array.toArray(new String[array.size()]);
+    return ArrayUtil.toStringArray(array);
   }
 
   private String readSourceFileAttribute(BytePointer p) throws ClsFormatException {
index b89daffe74947f38e0604d333752231fddff7a40..2397052b04954c6ffe758f87a6e0301411c0b1e9 100644 (file)
@@ -63,7 +63,7 @@ public class GenericMethodSignature {
         SignatureParser.INSTANCE.parseTypeSignature(it, typeSignature);
         params.add(typeSignature.toString());
       }
-      paramSignatures = params.toArray(new String[params.size()]);
+      paramSignatures = ArrayUtil.toStringArray(params);
     }
     else {
       paramSignatures = ArrayUtil.EMPTY_STRING_ARRAY;
index 31f7edb0de88a3213bbf78e2e1d76e0958cc9ba2..3fa4e9047e970dfd0254e7054e6ee5d3aaba2d74 100644 (file)
@@ -168,7 +168,7 @@ public class MethodInfo extends MemberInfo {
       signature = signature.substring(paramSignature.length());
       paramSignature = parseFieldType(signature);
     }
-    return list.toArray(new String[list.size()]);
+    return ArrayUtil.toStringArray(list);
   }
 
   private @NonNls String parseFieldType(@NonNls String signature) {
index f79287e812ca57defdab452dc856fd6eabb64984..25d4f300fdc8b69635260f69b491c8cb60f93df4 100644 (file)
@@ -18,6 +18,7 @@ import com.intellij.openapi.projectRoots.impl.JavaAwareProjectJdkTableImpl;
 import com.intellij.openapi.ui.Messages;
 import com.intellij.openapi.util.io.FileUtil;
 import com.intellij.openapi.vfs.VirtualFile;
+import com.intellij.util.ArrayUtil;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
@@ -105,7 +106,7 @@ public class EclipseCompiler extends ExternalCompiler {
     if (ex[0] != null) {
       throw ex[0];
     }
-    return commandLine.toArray(new String[commandLine.size()]);
+    return ArrayUtil.toStringArray(commandLine);
   }
 
   private void createStartupCommand(final ModuleChunk chunk,
index fad0ad8dea618f09aad25e483327bb9c9549ba9f..98fec2d0bd067a0cf90d06dfddc969bc0c635371 100644 (file)
@@ -13,6 +13,7 @@ import com.intellij.openapi.fileTypes.FileType;
 import com.intellij.openapi.fileTypes.StdFileTypes;
 import com.intellij.openapi.options.Configurable;
 import com.intellij.openapi.project.Project;
+import com.intellij.util.ArrayUtil;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
@@ -123,7 +124,7 @@ public class EclipseEmbeddedCompiler implements BackendCompiler {
       public int waitFor() {
         try {
           commandLine.remove("-verbose");
-          String[] finalCmds = commandLine.toArray(new String[commandLine.size()]);
+          String[] finalCmds = ArrayUtil.toStringArray(commandLine);
           myEclipseCompilerDriver.parseCommandLineAndCompile(finalCmds,compileContext);
           myExitCode = 0;
           return myExitCode;
index 02d8ee602d6525bed6fa6b21f2811b28ac4475e4..52b26f90f5c7832ee99e1f72d586538953ab2dee 100644 (file)
@@ -25,6 +25,7 @@ import com.intellij.openapi.util.io.FileUtil;
 import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.pom.java.LanguageLevel;
 import com.intellij.rt.compiler.JavacRunner;
+import com.intellij.util.ArrayUtil;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.NotNull;
 
@@ -150,7 +151,7 @@ public class JavacCompiler extends ExternalCompiler {
         LOG.error(ex[0]);
       }
     }
-    return commandLine.toArray(new String[commandLine.size()]);
+    return ArrayUtil.toStringArray(commandLine);
   }
 
   private void createStartupCommand(final ModuleChunk chunk, @NonNls final List<String> commandLine, final String outputPath) throws IOException {
index 14d06cf1915126ae03c38fb609dda70dcd628224..9fa05edfe9920d6515841328c55211f8a1f8e28f 100644 (file)
@@ -17,6 +17,7 @@ import com.intellij.openapi.projectRoots.Sdk;
 import com.intellij.openapi.ui.Messages;
 import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.pom.java.LanguageLevel;
+import com.intellij.util.ArrayUtil;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
@@ -126,7 +127,7 @@ public class JikesCompiler extends ExternalCompiler {
     if (ex[0] != null) {
       throw ex[0];
     }
-    return commandLine.toArray(new String[commandLine.size()]);
+    return ArrayUtil.toStringArray(commandLine);
   }
 
   private void _createStartupCommand(final ModuleChunk chunk, final ArrayList<String> commandLine, @NotNull final String outputPath) throws IOException {
index a73af7a6992bea4e0e248a6bd99edf9f0ab138e9..1ae0c89a52be7fd417b23b1e217f4b7fc4b454bb 100644 (file)
@@ -30,6 +30,7 @@ import com.intellij.openapi.projectRoots.ex.JavaSdkUtil;
 import com.intellij.openapi.util.Computable;
 import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.rt.compiler.JavacResourcesReader;
+import com.intellij.util.ArrayUtil;
 
 import java.io.File;
 import java.io.IOException;
@@ -111,7 +112,7 @@ public class JavacOutputParserPool {
 
     commandLine.add(JavacResourcesReader.class.getName());
 
-    return commandLine.toArray(new String[commandLine.size()]);
+    return ArrayUtil.toStringArray(commandLine);
   }
 
 }
index 79421bd9c42e6c77e7b23db8bede5e9623c14175..88d3394a967f3db70a178b8c113a962a91b9f412 100644 (file)
@@ -2,6 +2,7 @@ package com.intellij.compiler.make;
 
 import com.intellij.compiler.classParsing.SignatureParser;
 import com.intellij.compiler.classParsing.SignatureParsingException;
+import com.intellij.util.ArrayUtil;
 
 import java.text.CharacterIterator;
 import java.text.StringCharacterIterator;
@@ -56,7 +57,7 @@ public class BoundsParser extends SignatureParser{
   }
 
   public String[] getBounds() {
-    return myInterfaceBounds.toArray(new String[myInterfaceBounds.size()]);
+    return ArrayUtil.toStringArray(myInterfaceBounds);
   }
 
   public static String[] getBounds(String classSignature) throws SignatureParsingException {
index a114fabb55cde57b0a97ae286d001451dfaf7096..bfe64d5e1c1a598ab67906e577e7bf79a4f92c71 100644 (file)
@@ -4,6 +4,7 @@ import com.intellij.compiler.SymbolTable;
 import com.intellij.compiler.classParsing.MethodInfo;
 import com.intellij.openapi.diagnostic.Logger;
 import com.intellij.openapi.util.text.StringUtil;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.StringBuilderSpinAllocator;
 import gnu.trove.TIntHashSet;
 import org.jetbrains.annotations.Nullable;
@@ -35,7 +36,7 @@ public class CacheUtils {
       signature = signature.substring(paramSignature.length());
       paramSignature = parseParameterSignature(signature);
     }
-    return list.toArray(new String[list.size()]);
+    return ArrayUtil.toStringArray(list);
   }
 
   @SuppressWarnings({"HardCodedStringLiteral"})
index 1ce9271a6dce2ed3fc7e3bd4a273b0eeb4f20d65..973abe7348006f9ce4c3dd65b3b0fcbeb6b6c28a 100644 (file)
@@ -44,6 +44,7 @@ import com.intellij.problems.Problem;
 import com.intellij.problems.WolfTheProblemSolver;
 import com.intellij.ui.content.*;
 import com.intellij.util.Alarm;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.messages.MessageBusConnection;
 import com.intellij.util.ui.MessageCategory;
 import org.jetbrains.annotations.NotNull;
@@ -279,7 +280,7 @@ public class CompilerTask extends Task.Backgroundable {
     while (tokenizer.hasMoreTokens()) {
       lines.add(tokenizer.nextToken());
     }
-    return lines.toArray(new String[lines.size()]);
+    return ArrayUtil.toStringArray(lines);
   }
 
   public static int translateCategory(CompilerMessageCategory category) {
index 748daaec477c0a1920f5fffe6e3ae159bdfd2f37..56f15fe8bb3dfd1eaca953b9bc322a7edc0a180a 100644 (file)
@@ -4,19 +4,23 @@
 package com.intellij.util.xml;
 
 import com.intellij.openapi.editor.Editor;
+import com.intellij.openapi.progress.ProgressManager;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.util.TextRange;
-import com.intellij.openapi.progress.ProgressManager;
 import com.intellij.psi.PsiDocumentManager;
 import com.intellij.psi.PsiElement;
 import com.intellij.psi.PsiFile;
 import com.intellij.psi.util.PsiTreeUtil;
 import com.intellij.psi.xml.*;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.ReflectionCache;
 import com.intellij.util.ReflectionUtil;
 import com.intellij.util.SmartList;
 import com.intellij.util.containers.ContainerUtil;
-import com.intellij.util.xml.reflect.*;
+import com.intellij.util.xml.reflect.DomAttributeChildDescription;
+import com.intellij.util.xml.reflect.DomCollectionChildDescription;
+import com.intellij.util.xml.reflect.DomFixedChildDescription;
+import com.intellij.util.xml.reflect.DomGenericInfo;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
@@ -65,7 +69,7 @@ public class DomUtil {
         }
       }
     }
-    return result.toArray(new String[result.size()]);
+    return ArrayUtil.toStringArray(result);
   }
 
   @NotNull
index 9b85e5ee0da7c47328f25ec6872a4900d3c95bc1..8a522c2f4b155085236d7c09e7a0fe97e3218f8c 100644 (file)
@@ -26,6 +26,7 @@ import com.intellij.openapi.project.Project;
 import com.intellij.psi.PsiElement;
 import com.intellij.psi.impl.FakePsiElement;
 import com.intellij.psi.xml.XmlElement;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.xml.DomElement;
 import com.intellij.util.xml.ElementPresentationManager;
 import com.intellij.util.xml.GenericDomValue;
@@ -65,7 +66,7 @@ public abstract class GoToSymbolProvider implements ChooseByNameContributor {
       }
     }
 
-    return result.toArray(new String[result.size()]);
+    return ArrayUtil.toStringArray(result);
   }
 
   public NavigationItem[] getItemsByName(final String name, final String pattern, final Project project, boolean includeNonProjectItems) {
index 4107c3f594bde5e1738ac4a2264353dd998bf428..f6b7edf22bea0e099c39f9a4dcc04d186fc000f3 100644 (file)
@@ -22,6 +22,7 @@ import com.intellij.openapi.application.Result;
 import com.intellij.openapi.command.WriteCommandAction;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.util.IconLoader;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.EventDispatcher;
 import com.intellij.util.ReflectionUtil;
 import com.intellij.util.ui.ColumnInfo;
@@ -250,7 +251,7 @@ public class DomCollectionControl<T extends DomElement> extends DomUIControl imp
         messages.add(descriptor.getDescriptionTemplate());
       }
     }
-    myCollectionPanel.setErrorMessages(messages.toArray(new String[messages.size()]));
+    myCollectionPanel.setErrorMessages(ArrayUtil.toStringArray(messages));
     myCollectionPanel.repaint();
   }
 
index c075c054300a88a2eec2265978394cd41947eca3..0a74874fe0131b6b5beda896b73d0f7fb1f6de4b 100644 (file)
@@ -32,6 +32,7 @@ import com.intellij.openapi.vfs.VfsUtil;
 import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.psi.*;
 import com.intellij.ui.*;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.IncorrectOperationException;
 import gnu.trove.THashMap;
 import org.jetbrains.annotations.NonNls;
@@ -261,7 +262,7 @@ public class I18nizeQuickFixDialog extends DialogWrapper {
       result.add(getResourceBundleText());
     }
 
-    myRBEditorTextField.setHistory(result.toArray(new String[result.size()]));
+    myRBEditorTextField.setHistory(ArrayUtil.toStringArray(result));
     SwingUtilities.invokeLater(new Runnable() {
       public void run() {
         myRBEditorTextField.setSelectedIndex(0);
index 8c0d55a78e8c2be9241d4f3578f6a365f59e96ae..4c4e116ea317673169b501ae4c91bd3fd129cfb4 100644 (file)
@@ -25,6 +25,7 @@ import com.intellij.psi.PsiFile;
 import com.intellij.psi.search.scope.packageSet.NamedScope;
 import com.intellij.psi.search.scope.packageSet.NamedScopesHolder;
 import com.intellij.psi.search.scope.packageSet.PackageSet;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.text.UniqueNameGenerator;
 import org.jdom.Element;
 import org.jetbrains.annotations.NonNls;
@@ -203,7 +204,7 @@ public abstract class DefaultProjectProfileManager extends ProjectProfileManager
 
   public String[] getAvailableProfileNames() {
     return USE_PROJECT_LEVEL_SETTINGS
-           ? myProfiles.keySet().toArray(new String[myProfiles.keySet().size()])
+           ? ArrayUtil.toStringArray(myProfiles.keySet())
            : myApplicationProfileManager.getAvailableProfileNames();
   }
 
index 2a7814311888967df8bc08c464144a3d17f6e2be..436ac2f380fb5ea9431f451b11128c777408721a 100644 (file)
@@ -23,6 +23,7 @@ package com.intellij.refactoring.ui;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.ui.DialogWrapper;
 import com.intellij.refactoring.RefactoringBundle;
+import com.intellij.util.ArrayUtil;
 import org.jetbrains.annotations.NonNls;
 
 import javax.swing.*;
@@ -34,7 +35,7 @@ public class ConflictsDialog extends DialogWrapper{
   private String[] myConflictDescriptions;
 
   public ConflictsDialog(Project project, Collection<String> conflictDescriptions) {
-    this(project, conflictDescriptions.toArray(new String[conflictDescriptions.size()]));
+    this(project, ArrayUtil.toStringArray(conflictDescriptions));
   }
   public ConflictsDialog(Project project, String... conflictDescriptions) {
     super(project, true);
index a1c9a0e4f34f2205883e93091c6bb3e69fb4867a..ccc9e11700db5880798bf37f7c03f70f6335352b 100644 (file)
@@ -41,6 +41,7 @@ import com.intellij.openapi.vcs.FileStatusManager;
 import com.intellij.psi.search.scope.packageSet.NamedScope;
 import com.intellij.psi.search.scope.packageSet.NamedScopesHolder;
 import com.intellij.psi.search.scope.packageSet.PackageSet;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.containers.HashMap;
 import gnu.trove.THashSet;
 import gnu.trove.TObjectHashingStrategy;
@@ -146,7 +147,7 @@ public class ColorAndFontOptions extends SearchableConfigurable.Parent.Abstract
       names.add(scheme.getName());
     }
 
-    return names.toArray(new String[names.size()]);
+    return ArrayUtil.toStringArray(names);
   }
 
   public Collection<EditorColorsScheme> getSchemes() {
index 38ceac6d1e57fc7cabbaebb750e9f1e74abf493c..f3d3def68302136d598ae7febff7237969b9a94d 100644 (file)
@@ -24,7 +24,6 @@ public class BraceHighlighter implements ProjectComponent {
   private SelectionListener mySelectionListener;
   private DocumentListener myDocumentListener;
   private FocusChangeListener myFocusChangeListener;
-  private boolean myIsDisposed = false;
 
   public BraceHighlighter(Project project) {
     myProject = project;
@@ -38,7 +37,6 @@ public class BraceHighlighter implements ProjectComponent {
   public void initComponent() { }
 
   public void disposeComponent() {
-    myIsDisposed = true;
   }
 
   public void projectOpened() {
index 8e931fda0cc611f7567faae3d378d6a8aadf70be..b454e2143a690fe4a670d4eff93197448e16a250 100644 (file)
@@ -68,7 +68,7 @@ public class BraceHighlightingHandler {
     myFileType = myPsiFile == null ? null : myPsiFile.getFileType();
   }
 
-  public static void lookForInjectedAndMatchBracesInOtherThread(@NotNull final Editor editor, @NotNull final Alarm alarm, final Processor<BraceHighlightingHandler> processor) {
+  static void lookForInjectedAndMatchBracesInOtherThread(@NotNull final Editor editor, @NotNull final Alarm alarm, @NotNull final Processor<BraceHighlightingHandler> processor) {
     final Project project = editor.getProject();
     if (project == null) return;
     final int offset = editor.getCaretModel().getOffset();
@@ -97,7 +97,7 @@ public class BraceHighlightingHandler {
     job.schedule();
   }
 
-  public static PsiFile getInjectedFileIfAny(final Editor editor, final Project project, int offset, PsiFile psiFile, final Alarm alarm) {
+  static PsiFile getInjectedFileIfAny(final Editor editor, final Project project, int offset, PsiFile psiFile, final Alarm alarm) {
     Document document = editor.getDocument();
     // when document is committed, try to highlight braces in injected lang - it's fast
     if (!PsiDocumentManager.getInstance(project).isUncommited(document)) {
@@ -249,14 +249,7 @@ public class BraceHighlightingHandler {
 
     boolean matched = BraceMatchingUtil.matchBrace(myDocument.getCharsSequence(), myFileType, iterator, false);
 
-    int brace2Start;
-
-    if (!iterator.atEnd()) {
-      brace2Start = iterator.getStart();
-    }
-    else {
-      brace2Start = -1;
-    }
+    int brace2Start = iterator.atEnd() ? -1 : iterator.getStart();
 
     highlightBraces(brace2Start, brace1End - 1, matched, false);
   }
@@ -265,13 +258,7 @@ public class BraceHighlightingHandler {
     int brace1Start = iterator.getStart();
     boolean matched = BraceMatchingUtil.matchBrace(myDocument.getCharsSequence(), myFileType, iterator, true);
 
-    int brace2End;
-    if (!iterator.atEnd()) {
-      brace2End = iterator.getEnd() - 1;
-    }
-    else {
-      brace2End = -1;
-    }
+    int brace2End = iterator.atEnd() ? -1 : iterator.getEnd() - 1;
 
     highlightBraces(brace1Start, brace2End, matched, scopeHighlighting);
   }
index f83b0ac4296d3d4e89960e3c128d8a1478d09911..03470c7aacc9afa9e6878aca5ec803acf6cf7fb9 100644 (file)
@@ -107,7 +107,7 @@ public class ParameterInfoController {
       }
     }
 
-    return params.isEmpty() ? ArrayUtil.EMPTY_OBJECT_ARRAY : params.toArray(new Object[params.size()]);
+    return ArrayUtil.toObjectArray(params);
   }
 
   private static ArrayList<ParameterInfoController> getAllControllers(Editor editor) {
index 8cf85f527af9655740855206c4ae6c00c3f4677c..b3ae523fc7566fbcdac69cd9f4f36cb66ee63af4 100644 (file)
@@ -11,6 +11,7 @@ package com.intellij.codeInspection.offlineViewer;
 import com.intellij.codeInspection.InspectionApplication;
 import com.intellij.codeInspection.offline.OfflineProblemDescriptor;
 import com.intellij.codeInspection.reference.SmartRefElementPointerImpl;
+import com.intellij.util.ArrayUtil;
 import com.thoughtworks.xstream.io.xml.XppReader;
 import gnu.trove.THashMap;
 import gnu.trove.THashSet;
@@ -74,8 +75,8 @@ public class OfflineViewParseUtil {
               }
             }
             if (!parentTypes.isEmpty() && !parentNames.isEmpty()) {
-              descriptor.setParentType(parentTypes.toArray(new String[parentTypes.size()]));
-              descriptor.setParentFQName(parentNames.toArray(new String[parentNames.size()]));
+              descriptor.setParentType(ArrayUtil.toStringArray(parentTypes));
+              descriptor.setParentFQName(ArrayUtil.toStringArray(parentNames));
             }
           }
           if (DESCRIPTION.equals(reader.getNodeName())) {
index 7d4037c4db25dddba3c8275b320efc80c5afd8c4..4015bb3b76caeb5f92967161d59a902a4c82e124 100644 (file)
@@ -658,7 +658,7 @@ public class EditorSearchComponent extends JPanel implements DataProvider {
       ArrayList<String> sortedWords = new ArrayList<String>(words);
       Collections.sort(sortedWords);
 
-      return sortedWords.toArray(new String[sortedWords.size()]);
+      return ArrayUtil.toStringArray(sortedWords);
     }
   }
 
index 9aacfa564889c34807e641c367c8e334194294b4..4c257f12a550f5e52b78ad7d0febc8903fc549b1 100644 (file)
@@ -11,6 +11,7 @@ import com.intellij.openapi.util.DefaultJDOMExternalizer;
 import com.intellij.openapi.util.InvalidDataException;
 import com.intellij.openapi.util.JDOMExternalizableStringList;
 import com.intellij.openapi.util.WriteExternalException;
+import com.intellij.util.ArrayUtil;
 import org.jdom.Element;
 import org.jetbrains.annotations.NonNls;
 
@@ -250,15 +251,15 @@ public class FindSettingsImpl extends FindSettings implements PersistentStateCom
   }
 
   public String[] getRecentFindStrings(){
-    return RECENT_FIND_STRINGS.toArray(new String[RECENT_FIND_STRINGS.size()]);
+    return ArrayUtil.toStringArray(RECENT_FIND_STRINGS);
   }
 
   public String[] getRecentReplaceStrings(){
-    return RECENT_REPLACE_STRINGS.toArray(new String[RECENT_REPLACE_STRINGS.size()]);
+    return ArrayUtil.toStringArray(RECENT_REPLACE_STRINGS);
   }
 
   public String[] getRecentFileMasks() {
-    return RECENT_FILE_MASKS.toArray(new String[RECENT_FILE_MASKS.size()]);
+    return ArrayUtil.toStringArray(RECENT_FILE_MASKS);
   }
 
   public ArrayList<String> getRecentDirectories(){
index bd97ae95715a3ee64bd76c0b8aeb5d891854a3a9..ee76921358fc07ae677740fbf6b50d86d5187b4b 100644 (file)
@@ -31,6 +31,7 @@ import com.intellij.psi.PsiElement;
 import com.intellij.psi.util.PsiUtilBase;
 import com.intellij.ui.*;
 import com.intellij.util.ui.UIUtil;
+import com.intellij.util.ArrayUtil;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
@@ -609,7 +610,7 @@ public class CommanderPanel extends JPanel {
     }
 
     public Object[] toArray() {
-      return myElements.toArray(new Object[myElements.size()]);
+      return ArrayUtil.toObjectArray(myElements);
     }
 
     public int indexOf(final Object o) {
index b9495eee977f374949821610a3e5122f41a14a86..16aa2d97009e6da02735beb01ed7ee4bbc9adf0f 100644 (file)
@@ -76,7 +76,7 @@ public class FavoritesManager implements ProjectComponent, JDOMExternalizable {
 
   @NotNull public String[] getAvailableFavoritesLists(){
     final Set<String> keys = myName2FavoritesRoots.keySet();
-    return keys.toArray(new String[keys.size()]);
+    return ArrayUtil.toStringArray(keys);
   }
 
   public synchronized void createNewList(@NotNull String name){
index 1623e15833565a04f3c94694f5ecaa7e99a669ae..c3c29de71bb7e78f8cd3d2bd98d52748c3c9e6f0 100644 (file)
@@ -34,6 +34,7 @@ import com.intellij.pom.Navigatable;
 import com.intellij.psi.*;
 import com.intellij.ui.*;
 import com.intellij.util.EditSourceOnDoubleClickHandler;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.ui.UIUtil;
 import com.intellij.util.ui.tree.TreeUtil;
 import org.jetbrains.annotations.NonNls;
@@ -343,7 +344,7 @@ public class FavoritesTreeViewPanel extends JPanel implements DataProvider {
         result.add(value);
       }
     }
-    return result.toArray(new Object[result.size()]);
+    return ArrayUtil.toObjectArray(result);
   }
 
   @NotNull
index a8c74e4fa8ef402d72bb628afb7ac20115c91761..299ecc5de1e3455c62c69e059e82e9e3d0afe5b8 100644 (file)
@@ -17,14 +17,15 @@ import com.intellij.openapi.util.text.StringUtil;
 import com.intellij.psi.PsiDirectory;
 import com.intellij.psi.PsiElement;
 import com.intellij.psi.codeStyle.CodeStyleSettingsManager;
+import com.intellij.util.ArrayUtil;
 import org.apache.commons.collections.ExtendedProperties;
 import org.apache.velocity.VelocityContext;
 import org.apache.velocity.app.Velocity;
 import org.apache.velocity.exception.ResourceNotFoundException;
 import org.apache.velocity.exception.VelocityException;
+import org.apache.velocity.runtime.RuntimeConstants;
 import org.apache.velocity.runtime.RuntimeServices;
 import org.apache.velocity.runtime.RuntimeSingleton;
-import org.apache.velocity.runtime.RuntimeConstants;
 import org.apache.velocity.runtime.log.LogSystem;
 import org.apache.velocity.runtime.parser.ParseException;
 import org.apache.velocity.runtime.parser.node.ASTReference;
@@ -55,7 +56,7 @@ public class FileTemplateUtil{
     final Set<String> unsetAttributes = new HashSet<String>();
     //noinspection HardCodedStringLiteral
     addAttributesToVector(unsetAttributes, RuntimeSingleton.parse(new StringReader(templateContent), "MyTemplate"), properties, includeDummies);
-    return unsetAttributes.toArray(new String[unsetAttributes.size()]);
+    return ArrayUtil.toStringArray(unsetAttributes);
   }
 
   private static void addAttributesToVector(Set<String> references, Node apacheNode, Properties properties, boolean includeDummies){
index 9331c96321fe4a04e73811991749ff17c28b15d4..22c7ea79d8b4c24f1366df36edb10b7eff10df5c 100644 (file)
@@ -293,7 +293,7 @@ public abstract class AbstractProjectViewPane implements JDOMExternalizable, Dat
         }
       }
     }
-    return list.toArray(new Object[list.size()]);
+    return ArrayUtil.toObjectArray(list);
   }
 
   @Nullable
index 02c387c403c538902818dfd256ea84a9c267f110..cecf0510514cd3d8343d68d618b352219e517ac1 100644 (file)
@@ -10,6 +10,7 @@
  */
 package com.intellij.ide.projectView.impl;
 
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.Consumer;
 import com.intellij.util.Function;
 
@@ -29,7 +30,7 @@ public class ModuleGroupUtil {
     final String[] groupPath = group.getGroupPath();
     for (String pathElement : groupPath) {
       path.add(pathElement);
-      final ModuleGroup moduleGroup = new ModuleGroup(path.toArray(new String[path.size()]));
+      final ModuleGroup moduleGroup = new ModuleGroup(ArrayUtil.toStringArray(path));
       T moduleGroupNode = map.get(moduleGroup);
       if (moduleGroupNode == null) {
         moduleGroupNode = createNewNode.fun(moduleGroup);
@@ -50,7 +51,7 @@ public class ModuleGroupUtil {
     final String[] groupPath = group.getGroupPath();
     for (String pathElement : groupPath) {
       path.add(pathElement);
-      final ModuleGroup moduleGroup = new ModuleGroup(path.toArray(new String[path.size()]));
+      final ModuleGroup moduleGroup = new ModuleGroup(ArrayUtil.toStringArray(path));
       T moduleGroupNode = needToCreateNode.fun(moduleGroup);
       if (moduleGroupNode == null) {
         moduleGroupNode = createNewNode.fun(moduleGroup);
index f66a424472e9b49ff4ceec3439db4f6175e78478..e57ae38eb710f0ea44c2a451503476446b226899 100644 (file)
@@ -840,7 +840,7 @@ public final class ProjectViewImpl extends ProjectView implements JDOMExternaliz
     views.remove(getCurrentProjectViewPane());
     Collections.sort(views, PANE_WEIGHT_COMPARATOR);
 
-    final JList list = new JList(views.toArray(new Object[views.size()]));
+    final JList list = new JList(ArrayUtil.toObjectArray(views));
     list.setCellRenderer(new DefaultListCellRenderer() {
       public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
         super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
index 0a774bdb84b45e04f84b9ed257a55d591ca92dd2..c0d6fa5a382ad35b6f131eb1f41063e6226bbf14 100644 (file)
@@ -200,7 +200,7 @@ public class StructureViewComponent extends SimpleToolWindowPanel implements Tre
           result.add(value);
         }
       }
-      return result.toArray(new Object[result.size()]);
+      return ArrayUtil.toObjectArray(result);
     }
     else {
       return null;
index 5cf74687eb97b5cdb842401878914febce368d8e..43bd4ed9faf07cd3ccb7d25129e5d9bc46ebadfd 100644 (file)
@@ -9,6 +9,7 @@ import com.intellij.openapi.util.SystemInfo;
 import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.psi.PsiDirectory;
 import com.intellij.psi.PsiManager;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.Icons;
 import org.jetbrains.annotations.Nullable;
 
@@ -84,7 +85,7 @@ public class DirectoryChooser extends DialogWrapper {
       index = nextSeparator + 1;
     }
     list.add(path.substring(index, path.length()));
-    return list.toArray(new String[list.size()]);
+    return ArrayUtil.toStringArray(list);
   }
 
   private void buildFragments() {
index 7186ae6f2c389ef8cbb332224f35d048a5401de5..ae11f9fd185bc8e78e4251b7367261c4f4af449a 100644 (file)
@@ -35,6 +35,7 @@ import com.intellij.psi.util.PsiUtilBase;
 import com.intellij.ui.ListScrollingUtil;
 import com.intellij.ui.SpeedSearchBase;
 import com.intellij.util.containers.HashSet;
+import com.intellij.util.ArrayUtil;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
@@ -380,7 +381,7 @@ public class FileStructureDialog extends DialogWrapper {
         }
         filteredElements.add(child);
       }
-      return filteredElements.toArray(new Object[filteredElements.size()]);
+      return ArrayUtil.toObjectArray(filteredElements);
     }
 
     public void rebuildTree() {
index c0d3a36bbb73cb98f324610ca3d7fdd49fd62e74..e0b1fd6393d4bfb5b9ea3850e1035f1b65bafdba 100644 (file)
@@ -74,7 +74,7 @@ public abstract class ContributorsBasedGotoByModel implements ChooseByNameModel
       }
     }
 
-    return names.toArray(new String[names.size()]);
+    return ArrayUtil.toStringArray(names);
   }
 
   /**
@@ -107,7 +107,7 @@ public abstract class ContributorsBasedGotoByModel implements ChooseByNameModel
         LOG.error(ex);
       }
     }
-    return items == null ? ArrayUtil.EMPTY_OBJECT_ARRAY : items.toArray(new Object[items.size()]);
+    return items == null ? ArrayUtil.EMPTY_OBJECT_ARRAY : ArrayUtil.toObjectArray(items);
   }
 
   public String getElementName(Object element) {
index 90b37edf079dfb7c50401e71d2895088567ccb6e..d333eed70edc29ede2ea5b21f83d2e29fe7f29ec 100644 (file)
@@ -142,7 +142,7 @@ public class GotoActionModel implements ChooseByNameModel {
         }
       }
     }
-    return result.toArray(new String[result.size()]);
+    return ArrayUtil.toStringArray(result);
   }
 
   private void collectActionIds(Collection<String> result, ActionGroup group){
index b40dd97817dcaf8f653c71c6f19d69c366a62709..fb87530ab5eb05d0db29f97f8c13bbb4415b9661 100644 (file)
@@ -40,6 +40,7 @@ import com.intellij.openapi.util.Comparing;
 import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.psi.PsiFile;
 import com.intellij.psi.PsiManager;
+import com.intellij.util.ArrayUtil;
 
 import java.util.ArrayList;
 
@@ -55,7 +56,7 @@ public class ProjectBaseDirNavigationContributor implements ChooseByNameContribu
         list.add(file.getName());
       }
     }
-    return list.toArray(new String[list.size()]);
+    return ArrayUtil.toStringArray(list);
   }
 
   public NavigationItem[] getItemsByName(String name, final String pattern, Project project, boolean includeNonProjectItems) {
index 379e7d09cbdeb781bff5c354cc1dd02f26d63192..89eec561910b302924b84dbf40cbff949a1e964a 100644 (file)
@@ -4,6 +4,7 @@ import com.intellij.ide.projectView.TreeStructureProvider;
 import com.intellij.ide.projectView.ViewSettings;
 import com.intellij.openapi.diagnostic.Logger;
 import com.intellij.openapi.project.Project;
+import com.intellij.util.ArrayUtil;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
@@ -36,7 +37,7 @@ public abstract class AbstractTreeStructureBase extends AbstractTreeStructure {
       node.setParent(treeNode);
     }
 
-    return modified.toArray(new Object[modified.size()]);
+    return ArrayUtil.toObjectArray(modified);
   }
 
   public Object getParentElement(Object element) {
index cb874eff185c809bb080f69e99a55aad4506c83a..bb86b372db47f5404072f85b6ae0fca435749db6 100644 (file)
@@ -4,6 +4,7 @@ import com.intellij.openapi.projectRoots.ex.ProjectRoot;
 import com.intellij.openapi.util.InvalidDataException;
 import com.intellij.openapi.util.WriteExternalException;
 import com.intellij.openapi.vfs.VirtualFile;
+import com.intellij.util.ArrayUtil;
 import org.jdom.Element;
 
 import java.util.ArrayList;
@@ -40,7 +41,7 @@ class CompositeProjectRoot implements ProjectRoot {
     for (ProjectRoot root : myRoots) {
       result.addAll(Arrays.asList(root.getUrls()));
     }
-    return result.toArray(new String[result.size()]);
+    return ArrayUtil.toStringArray(result);
   }
 
   public boolean isValid() {
index 891fa7942882016f58575338def77d63d51f1144..e101717a232ef2fabb59045819e6b5f7d710e587 100644 (file)
@@ -16,6 +16,7 @@ import com.intellij.openapi.util.WriteExternalException;
 import com.intellij.openapi.vfs.LocalFileSystem;
 import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.openapi.vfs.VirtualFileManager;
+import com.intellij.util.ArrayUtil;
 import org.jdom.Element;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.NotNull;
@@ -226,7 +227,7 @@ public class ProjectJdkImpl implements JDOMExternalizable, Sdk, SdkModificator {
       for (ProjectRoot rootFile : rootFiles) {
         result.addAll(Arrays.asList(rootFile.getUrls()));
       }
-      return result.toArray(new String[result.size()]);
+      return ArrayUtil.toStringArray(result);
     }
 
     public VirtualFile[] getFiles(final OrderRootType rootType) {
index 69396ad2b2843f7d6895fc09b34311bdae9b6948..08d6a98305b26bc66b2ee9ef194b4970b6aff850 100644 (file)
@@ -242,7 +242,7 @@ public class ModuleRootManagerImpl extends ModuleRootManager implements ModuleCo
       }
       result.addAll(Arrays.asList(urls));
     }
-    return result.toArray(new String[result.size()]);
+    return ArrayUtil.toStringArray(result);
   }
 
   void commitModel(RootModelImpl rootModel) {
@@ -352,11 +352,11 @@ public class ModuleRootManagerImpl extends ModuleRootManager implements ModuleCo
     List<String> result = new ArrayList<String>();
     if (OrderRootType.SOURCES.equals(rootType) || OrderRootType.COMPILATION_CLASSES.equals(rootType)) {
       myRootModel.addExportedUrs(rootType, result, processed);
-      return result.toArray(new String[result.size()]);
+      return ArrayUtil.toStringArray(result);
     }
     else if (OrderRootType.CLASSES.equals(rootType)) {
       myRootModel.addExportedUrs(rootType, result, processed);
-      return result.toArray(new String[result.size()]);
+      return ArrayUtil.toStringArray(result);
     }
     else if (OrderRootType.CLASSES_AND_OUTPUT.equals(rootType)) {
       return getUrls(OrderRootType.CLASSES_AND_OUTPUT, processed);
@@ -525,7 +525,7 @@ public class ModuleRootManagerImpl extends ModuleRootManager implements ModuleCo
               }
             }, new ArrayList<String>());
 
-            final String[] names = names1.toArray(new String[names1.size()]);
+            final String[] names = ArrayUtil.toStringArray(names1);
             List<RootModelImpl> result = new ArrayList<RootModelImpl>();
             for (String name : names) {
               final RootModelImpl depRootModel = nameToModel.get(name);
index bbde3631aea652dfe82cc67580fe4755845e1967..9c3ad02ead0bea6fd22d3266a4b5426c05db0482 100644 (file)
@@ -7,6 +7,7 @@ import com.intellij.openapi.util.InvalidDataException;
 import com.intellij.openapi.util.WriteExternalException;
 import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.openapi.vfs.pointers.VirtualFilePointerManager;
+import com.intellij.util.ArrayUtil;
 import org.jdom.Element;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.NotNull;
@@ -85,7 +86,7 @@ public class ModuleSourceOrderEntryImpl extends OrderEntryBaseImpl implements Mo
           result.add(url);
         }
       }
-      return result.toArray(new String[result.size()]);
+      return ArrayUtil.toStringArray(result);
     }
     return getRootModel().getRootUrls(type);
   }
index 125b64eccd8df09e67e58cad71ac68b3ab5aa795..cccd816c62cfb194135a0ad3edd06fcaff781146 100644 (file)
@@ -25,6 +25,7 @@ import com.intellij.openapi.vfs.newvfs.events.*;
 import com.intellij.openapi.vfs.pointers.VirtualFilePointer;
 import com.intellij.openapi.vfs.pointers.VirtualFilePointerContainer;
 import com.intellij.openapi.vfs.pointers.VirtualFilePointerManager;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.StringBuilderSpinAllocator;
 import com.intellij.util.containers.HashMap;
 import com.intellij.util.messages.MessageBusConnection;
@@ -510,7 +511,7 @@ public class LibraryImpl implements LibraryEx.ModifiableModelEx, LibraryEx {
       for (VirtualFile file : getFiles(rootType)) { // Add those expanded with jar directories.
         originalUrls.add(file.getUrl());
       }
-      return originalUrls.toArray(new String[originalUrls.size()]);
+      return ArrayUtil.toStringArray(originalUrls);
     }
 
     public VirtualFile[] getFiles(final OrderRootType rootType) {
index 7ce1c53bf081be1423fe606c6e574229622a04d7..ff9fa0a177a5a69f6b8bb0399cd51f8434004362 100644 (file)
@@ -40,6 +40,7 @@ import com.intellij.profile.ApplicationProfileManager;
 import com.intellij.profile.Profile;
 import com.intellij.profile.ProfileChangeAdapter;
 import com.intellij.psi.search.scope.packageSet.NamedScope;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.containers.ContainerUtil;
 import org.jdom.Document;
 import org.jdom.Element;
@@ -361,7 +362,7 @@ public class InspectionProfileManager extends ApplicationProfileManager implemen
 
   public String[] getAvailableProfileNames() {
     final Collection<String> names = mySchemesManager.getAllSchemeNames();
-    return names.toArray(new String[names.size()]);
+    return ArrayUtil.toStringArray(names);
   }
 
   public Profile getProfile(@NotNull final String name) {
index d9ef061e0c6a7fc0dad54fbef8d1802e937aea8b..d459fbc26d3f52e85b4c2ecffa8f6acb7a7027e0 100644 (file)
@@ -31,6 +31,6 @@ public class AllWordsGetter implements ContextGetter {
         }
       }
     }, chars, 0, chars.length());
-    return objs.toArray(new String[objs.size()]);
+    return ArrayUtil.toStringArray(objs);
   }
 }
index f611d34778e7ae5968ad2a0ebf85500eab8aeff9..7e830d9d0a004df99d58bb46a51b7beffe5a6203 100644 (file)
@@ -22,6 +22,7 @@ import com.intellij.psi.util.CachedValueProvider;
 import com.intellij.psi.util.PsiModificationTracker;
 import com.intellij.reference.SoftReference;
 import com.intellij.util.TimedReference;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.concurrency.JBLock;
 import com.intellij.util.concurrency.JBReentrantReadWriteLock;
 import com.intellij.util.concurrency.LockFactory;
@@ -190,7 +191,7 @@ public class CachedValueImpl<T> implements CachedValue<T> {
 
     myLastPsiTimeStamp = myManager.getModificationTracker().getModificationCount();
 
-    return  new Data<T>(value, deps.toArray(new Object[deps.size()]), timeStamps.toNativeArray());
+    return  new Data<T>(value, ArrayUtil.toObjectArray(deps), timeStamps.toNativeArray());
   }
 
   private void collectDependencies(TLongArrayList timeStamps, List<Object> resultingDeps, Object[] dependencies) {
index 125bd1a6c236a96a67ccb959f70ffc07d6ccad0d..835db8edc60bf7294eca5ff06eb4b19f12abbcc7 100644 (file)
@@ -24,6 +24,7 @@ import com.intellij.psi.util.ParameterizedCachedValueProvider;
 import com.intellij.psi.util.PsiModificationTracker;
 import com.intellij.reference.SoftReference;
 import com.intellij.util.TimedReference;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.concurrency.JBLock;
 import com.intellij.util.concurrency.JBReentrantReadWriteLock;
 import com.intellij.util.concurrency.LockFactory;
@@ -185,7 +186,7 @@ public class ParameterizedCachedValueImpl<T,P> implements ParameterizedCachedVal
 
     myLastPsiTimeStamp = myManager.getModificationTracker().getModificationCount();
 
-    return new Data<T>(value, deps.toArray(new Object[deps.size()]), timeStamps.toNativeArray());
+    return new Data<T>(value, ArrayUtil.toObjectArray(deps), timeStamps.toNativeArray());
   }
 
   private void collectDependencies(TLongArrayList timeStamps, List<Object> resultingDeps, Object[] dependencies) {
index e3787768ba4aa6fca20fb1bc4c1e356345a55865..fc03345a0d8f731b86aa3e51f3f7c93fddf5a783 100644 (file)
@@ -73,7 +73,7 @@ public class ReferenceProvidersRegistry implements PsiReferenceRegistrar {
         ContainerUtil.findInstance(nameCondition.getNamePattern().getCondition().getConditions(), ValuePatternCondition.class);
       if (valueCondition != null) {
         final Collection<String> strings = valueCondition.getValues();
-        registerNamedReferenceProvider(strings.toArray(new String[strings.size()]), new NamedObjectProviderBinding() {
+        registerNamedReferenceProvider(ArrayUtil.toStringArray(strings), new NamedObjectProviderBinding() {
           protected String getName(final PsiElement position) {
             return nameCondition.getPropertyValue(position);
           }
index 87efefb8f84da48baf66fcb13d2a316044a91d6b..c5074dc0b0902465c51e83f389d0a905481bdd3c 100644 (file)
@@ -6,6 +6,7 @@ import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.openapi.vfs.VirtualFileFilter;
 import com.intellij.psi.PsiFile;
 import com.intellij.psi.PsiManager;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.indexing.*;
 import com.intellij.util.io.EnumeratorStringDescriptor;
 import com.intellij.util.io.KeyDescriptor;
@@ -49,7 +50,7 @@ public class FilenameIndex extends ScalarIndexExtension<String> {
 
   public static String[] getAllFilenames() {
     final Collection<String> allKeys = FileBasedIndex.getInstance().getAllKeys(NAME);
-    return allKeys.toArray(new String[allKeys.size()]);
+    return ArrayUtil.toStringArray(allKeys);
   }
 
   public static PsiFile[] getFilesByName(final Project project, final String name, final GlobalSearchScope scope) {
index a8b3d6df457c004915a22ad609eb0ca753a292f2..455926d50b265ab5abde58a9386a519641bce04f 100644 (file)
@@ -19,6 +19,7 @@ import com.intellij.refactoring.util.TextOccurrencesUtil;
 import com.intellij.ui.IdeBorderFactory;
 import com.intellij.ui.NonFocusableCheckBox;
 import com.intellij.usageView.UsageViewUtil;
+import com.intellij.util.ArrayUtil;
 import com.intellij.xml.util.XmlTagUtilBase;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
@@ -126,7 +127,7 @@ public class RenameDialog extends RefactoringDialog {
         if (info != null) mySuggestedNameInfo = info;
       }
     }
-    return result.toArray(new String[result.size()]);
+    return ArrayUtil.toStringArray(result);
   }
 
   private void completeVariable(Editor editor) {
index da686eb82f83ea2f358df2fcc3cb6f1f7526f4fd..e14d630874e5948158e782c265cf7f0996a02b00 100644 (file)
@@ -8,11 +8,14 @@ import com.intellij.openapi.components.RoamingType;
 import com.intellij.openapi.options.SchemesManager;
 import com.intellij.openapi.options.SchemesManagerFactory;
 import com.intellij.openapi.util.Comparing;
+import com.intellij.util.ArrayUtil;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
 import java.io.File;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashSet;
 
 public class ToolManager implements ExportableApplicationComponent {
 
@@ -83,7 +86,7 @@ public class ToolManager implements ExportableApplicationComponent {
         list.add(tool.getGroup());
       }
     }
-    return list.toArray(new String[list.size()]);
+    return ArrayUtil.toStringArray(list);
   }
 
   public String getGroupByActionId(String actionId) {
index 56e345b1244ce37b9cc86d5e1d29bc2fc311b921..a32ca118efbd39dbfedb46799e6b1536826d9480 100644 (file)
@@ -7,6 +7,7 @@ import com.intellij.ui.CheckboxTree;
 import com.intellij.ui.CheckedTreeNode;
 import com.intellij.ui.ScrollPaneFactory;
 import com.intellij.ui.SimpleTextAttributes;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.ui.tree.TreeUtil;
 import org.jetbrains.annotations.Nullable;
 
@@ -516,6 +517,6 @@ class ToolsPanel extends JPanel {
     for (ToolsGroup group : groups) {
       result.add(group.getName());
     }
-    return result.toArray(new String[result.size()]);
+    return ArrayUtil.toStringArray(result);
   }
 }
index c185bbce2e1bc0264ceb645a1d926343d853485b..434d179ed2dd4d394b0bc89151dc3c5804d5f051 100644 (file)
@@ -1,6 +1,7 @@
 package com.intellij.openapi.roots;
 
 import com.intellij.openapi.vfs.VirtualFile;
+import com.intellij.util.ArrayUtil;
 
 import java.util.ArrayList;
 import java.util.Collections;
@@ -68,6 +69,6 @@ public class AnnotationOrderRootType extends OrderRootType {
       }
     };
     entry.accept(policy, result);
-    return result.toArray(new String[result.size()]);
+    return ArrayUtil.toStringArray(result);
   }
 }
index 0c06d65af211211c8724e86535895777534fb098..4432fb1249e599e1b117f2361e6c00c7b71c061c 100644 (file)
@@ -2,8 +2,9 @@ package com.intellij.psi.statistics;
 
 import com.intellij.openapi.diagnostic.Logger;
 import com.intellij.psi.*;
-import com.intellij.psi.util.TypeConversionUtil;
 import com.intellij.psi.codeStyle.VariableKind;
+import com.intellij.psi.util.TypeConversionUtil;
+import com.intellij.util.ArrayUtil;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
@@ -168,7 +169,7 @@ public abstract class JavaStatisticsManager {
       list.add(name);
     }
 
-    return list.toArray(new String[list.size()]);
+    return ArrayUtil.toStringArray(list);
   }
 
   public enum NameContext{
@@ -191,7 +192,7 @@ public abstract class JavaStatisticsManager {
       if(name == null || !name.startsWith(prefix)) continue;
       suggestions.add(name);
     }
-    return suggestions.toArray(new String[suggestions.size()]);
+    return ArrayUtil.toStringArray(suggestions);
   }
 
   public static void incNameUseCount(PsiType type, NameContext context, String name) {
index c091c8533e21b6e5fed8ea12aad944447a5fae3d..c162581d2edde21af40c457ef7311c7710479f50 100644 (file)
@@ -23,10 +23,11 @@ import com.intellij.psi.*;
 import com.intellij.psi.codeStyle.CodeStyleManager;
 import com.intellij.psi.codeStyle.JavaCodeStyleManager;
 import com.intellij.psi.codeStyle.VariableKind;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.IncorrectOperationException;
 import org.jetbrains.annotations.NonNls;
-import org.jetbrains.annotations.Nullable;
 import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
 
 import java.beans.Introspector;
 import java.util.*;
@@ -327,7 +328,7 @@ public class PropertyUtil {
       }
     }
 
-    return result.toArray(new String[result.size()]);
+    return ArrayUtil.toStringArray(result);
   }
 
   public static String[] getWritableProperties(PsiClass aClass, boolean includeSuperClass) {
@@ -350,7 +351,7 @@ public class PropertyUtil {
       }
     }
 
-    return result.toArray(new String[result.size()]);
+    return ArrayUtil.toStringArray(result);
   }
 
   public static PsiMethod generateGetterPrototype(PsiField field) {
index 2fd19769b5c9a58afaed684cb7b8d5f108e1417b..7ab633cd6cf0410b5448a5264163051dda620a53 100644 (file)
@@ -20,6 +20,7 @@ import com.intellij.openapi.application.ApplicationManager;
 import com.intellij.openapi.application.PathMacros;
 import com.intellij.openapi.diagnostic.Logger;
 import com.intellij.openapi.util.text.StringUtil;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.EnvironmentUtil;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.NotNull;
@@ -65,7 +66,7 @@ public class ParametersList implements Cloneable{
   }
 
   public String[] getArray() {
-    return myParameters.toArray(new String[myParameters.size()]);
+    return ArrayUtil.toStringArray(myParameters);
   }
 
   public void addParametersString(final String parameters) {
@@ -237,7 +238,7 @@ public class ParametersList implements Cloneable{
         }
       }
       tokenFinished();
-      return myArray.toArray(new String[myArray.size()]);
+      return ArrayUtil.toStringArray(myArray);
     }
 
     private boolean processNotQuoted(final char c) {
index 2e62d80f64ad4ccdd3dbc752c3044f3a5a569186..b257fdf20d5cf9308187f2fa63ec6af52a356a81 100644 (file)
@@ -182,7 +182,7 @@ public class FeatureDescriptor{
 
   public String[] getDependencyFeatures() {
     if (myDependencies == null) return ArrayUtil.EMPTY_STRING_ARRAY;
-    return myDependencies.toArray(new String[myDependencies.size()]);
+    return ArrayUtil.toStringArray(myDependencies);
   }
 
   void triggerShown() {
index 87649b01ad1721e6848e982319e62abffd4fc7e3..c0eeaa3ebd676582ede8c0e3344e0981806fce28 100644 (file)
@@ -16,6 +16,7 @@ import com.intellij.ui.LoadingNode;
 import com.intellij.util.Alarm;
 import com.intellij.util.ConcurrencyUtil;
 import com.intellij.util.Time;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.concurrency.WorkerThread;
 import com.intellij.util.containers.HashSet;
 import com.intellij.util.containers.WeakList;
@@ -1159,7 +1160,7 @@ class AbstractTreeUi {
         eachParent = eachParent.getParent();
       }
 
-      return new TreePath(nodes.toArray(new Object[nodes.size()]));
+      return new TreePath(ArrayUtil.toObjectArray(nodes));
     }
   }
 
@@ -1452,7 +1453,7 @@ class AbstractTreeUi {
       }
     }
 
-    final Object[] elementsToSelect = toSelect.toArray(new Object[toSelect.size()]);
+    final Object[] elementsToSelect = ArrayUtil.toObjectArray(toSelect);
 
     if (wasRootNodeInitialized()) {
       final int[] originalRows = myTree.getSelectionRows();
index 2c723d365c130e6f5c0f46be18a080468abcc7a4..cc05b3f9af04e6579f7791067428b1a9d7839baf 100644 (file)
@@ -3,6 +3,7 @@ package com.intellij.ide.util.treeView;
 import com.intellij.openapi.util.ActionCallback;
 import com.intellij.openapi.util.Condition;
 import com.intellij.util.Function;
+import com.intellij.util.ArrayUtil;
 
 import javax.swing.*;
 import javax.swing.tree.DefaultMutableTreeNode;
@@ -194,7 +195,7 @@ public class UpdaterTreeState {
       }
     }
 
-    final Object[] newSelection = toSelect.toArray(new Object[toSelect.size()]);
+    final Object[] newSelection = ArrayUtil.toObjectArray(toSelect);
 
     myUi._select(newSelection, new Runnable() {
       public void run() {
index 11aa6654a2699956998fb3079ebe432d7ccb76f3..97248e943eef7eb838e0e8211fd3f31b5c6b467f 100644 (file)
@@ -15,6 +15,8 @@
  */
 package com.intellij.openapi.diff;
 
+import com.intellij.util.ArrayUtil;
+
 import java.util.ArrayList;
 
 public class LineTokenizer {
@@ -46,7 +48,7 @@ public class LineTokenizer {
       if (appendNewLine) line += "\n";
       lines.add(line);
     }
-    return lines.toArray(new String[lines.size()]);
+    return ArrayUtil.toStringArray(lines);
   }
 
   private void skipEOL() {
index fa860b35861888d9ad968ccb6e5831314f029925..7a45a57e87e801437ebe0216d7019b66ef8ac528 100644 (file)
@@ -15,6 +15,7 @@
  */
 package com.intellij.openapi.editor.actions;
 
+import com.intellij.CommonBundle;
 import com.intellij.openapi.editor.Document;
 import com.intellij.openapi.editor.Editor;
 import com.intellij.openapi.editor.EditorFactory;
@@ -23,9 +24,9 @@ import com.intellij.openapi.ui.DialogWrapper;
 import com.intellij.openapi.ui.Splitter;
 import com.intellij.openapi.util.IconLoader;
 import com.intellij.openapi.util.text.StringUtil;
-import com.intellij.CommonBundle;
 import com.intellij.ui.ColoredListCellRenderer;
 import com.intellij.ui.SimpleTextAttributes;
+import com.intellij.util.ArrayUtil;
 
 import javax.swing.*;
 import javax.swing.event.ListSelectionEvent;
@@ -35,7 +36,7 @@ import java.awt.event.KeyAdapter;
 import java.awt.event.KeyEvent;
 import java.awt.event.MouseAdapter;
 import java.awt.event.MouseEvent;
-import java.util.*;
+import java.util.ArrayList;
 import java.util.List;
 
 public abstract class ContentChooser<Data> extends DialogWrapper {
@@ -203,7 +204,7 @@ public abstract class ContentChooser<Data> extends DialogWrapper {
     }
 
     myAllContents = allContents;
-    myList.setListData(shortened.toArray(new String[shortened.size()]));
+    myList.setListData(ArrayUtil.toStringArray(shortened));
   }
 
   protected abstract String getStringRepresentationFor(final Data content);
index 127c07d6e586348bb5026d3508adf48d277a4fb6..1d19aca60b4ed5e5fc8922a21b70c6e432fec5f6 100644 (file)
@@ -19,6 +19,7 @@ package com.intellij.openapi.ui;
 import com.intellij.openapi.wm.impl.content.GraphicsConfig;
 import com.intellij.ui.components.panels.NonOpaquePanel;
 import com.intellij.ui.components.panels.Wrapper;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.ui.UIUtil;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.NotNull;
@@ -197,7 +198,7 @@ public class DetailsComponent {
       strings.addAll(Arrays.asList(myText));
     }
 
-    myBannerText = strings.toArray(new String[strings.size()]);
+    myBannerText = ArrayUtil.toStringArray(strings);
 
     updateBanner();
   }
index fced7ae465a6c4b9b66f6e58672c6aa617a7cac2..106344074cc04f2fcf7999b07605c0dc515670a9 100644 (file)
@@ -358,7 +358,7 @@ public class MultiLineLabelUI extends BasicLabelUI {
       list.add(st.nextToken());
     }
 
-    myLines = (String[])list.toArray(new String[list.size()]);
+    myLines = (String[])ArrayUtil.toStringArray(list);
     return myLines;
   }
 
index fac9485a03470c98929b832afebc956e57cb5d06..0bb33a96f9c1da7f18d6289e5464cc56e40e9f4c 100644 (file)
@@ -16,6 +16,7 @@
 package com.intellij.ui;
 
 import com.intellij.util.containers.ContainerUtil;
+import com.intellij.util.ArrayUtil;
 
 import javax.swing.*;
 import java.util.*;
@@ -60,7 +61,7 @@ public class SortedListModel<T> extends AbstractListModel {
   }
 
   public int[] addAll(Collection<T> items) {
-    return addAll(items.toArray(new Object[items.size()]));
+    return addAll(ArrayUtil.toObjectArray(items));
   }
 
   public void remove(int index) {
index 313007456eb65d9b71c31c122b233776da1a3b41..cf30756c1c3a9240992a96938a02e76184ca367f 100644 (file)
@@ -12,6 +12,7 @@ import com.intellij.openapi.components.Storage;
 import com.intellij.openapi.progress.ProgressFunComponentProvider;
 import com.intellij.openapi.progress.ProgressManager;
 import com.intellij.openapi.project.Project;
+import com.intellij.util.ArrayUtil;
 import org.jdom.Element;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.NotNull;
@@ -61,7 +62,7 @@ public class FeatureUsageTrackerImpl extends FeatureUsageTracker implements Appl
         result.add(id);
       }
     }
-    return result.toArray(new String[result.size()]);
+    return ArrayUtil.toStringArray(result);
   }
 
   public boolean isToBeShown(String featureId, Project project) {
index 1028559562a293bd58c73771aa6b6aa3adb24e56..22745c9797c71ff1eaa3965b74b11ddfe2a2979e 100644 (file)
@@ -4,13 +4,14 @@ import com.intellij.openapi.actionSystem.AnAction;
 import com.intellij.openapi.actionSystem.AnActionEvent;
 import com.intellij.openapi.actionSystem.PlatformDataKeys;
 import com.intellij.openapi.actionSystem.Separator;
+import com.intellij.openapi.application.ApplicationManager;
 import com.intellij.openapi.components.PersistentStateComponent;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.project.ProjectManager;
 import com.intellij.openapi.project.ProjectManagerAdapter;
 import com.intellij.openapi.util.Ref;
 import com.intellij.openapi.util.SystemInfo;
-import com.intellij.openapi.application.ApplicationManager;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.messages.MessageBus;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
@@ -140,7 +141,7 @@ public abstract class RecentProjectsManagerBase implements PersistentStateCompon
 
   public String[] getRecentProjectPaths() {
     validateRecentProjects();
-    return myState.recentPaths.toArray(new String[myState.recentPaths.size()]);
+    return ArrayUtil.toStringArray(myState.recentPaths);
   }
 
   @Nullable
index 41fc2c9c601c2d82345fb33519bd21937f01f5f3..80aea290680d3a39ce9c83fdabd49a53d97c9e6e 100644 (file)
@@ -64,7 +64,7 @@ public class ErrorViewStructure extends AbstractTreeStructure {
           children.add(groupingElement);
         }
       }
-      return children.toArray(new Object[children.size()]);
+      return ArrayUtil.toObjectArray(children);
     }
     else if (element instanceof GroupingElement) {
       synchronized (myGroupNameToMessagesMap) {
index dfdf8bfb3e35047605740dbb4b025af3d0aa747d..e2465a7cee3d90b8cdf2069aeeb6752e0e0b2acb 100644 (file)
@@ -1,23 +1,15 @@
 package com.intellij.openapi.actionSystem.ex;
 
 
-
-import com.intellij.openapi.options.ExternalizableScheme;
-
 import com.intellij.openapi.options.ExternalInfo;
-
+import com.intellij.openapi.options.ExternalizableScheme;
+import com.intellij.util.ArrayUtil;
 import org.jdom.Element;
-
 import org.jetbrains.annotations.NonNls;
-
 import org.jetbrains.annotations.NotNull;
 
-
-
 import java.util.ArrayList;
-
 import java.util.Arrays;
-
 import java.util.List;
 
 
@@ -208,7 +200,7 @@ public class QuickList implements ExternalizableScheme {
 
     }
 
-    myActionIds = ids.toArray(new String[ids.size()]);
+    myActionIds = ArrayUtil.toStringArray(ids);
 
   }
 
index f2e23bea42edb87bbbf3f2e8d21fe3b5a66d2f23..2f90ea0fa4261051270652a47f1e7e0b7e4323b4 100644 (file)
@@ -269,7 +269,7 @@ public final class ActionManagerImpl extends ActionManagerEx implements JDOMExte
           idList.add(id);
         }
       }
-      return idList.toArray(new String[idList.size()]);
+      return ArrayUtil.toStringArray(idList);
     }
   }
 
@@ -869,7 +869,7 @@ public final class ActionManagerImpl extends ActionManagerEx implements JDOMExte
   public String[] getPluginActions(PluginId pluginName) {
     if (myPlugin2Id.containsKey(pluginName)){
       final THashSet<String> pluginActions = myPlugin2Id.get(pluginName);
-      return pluginActions.toArray(new String[pluginActions.size()]);
+      return ArrayUtil.toStringArray(pluginActions);
     }
     return ArrayUtil.EMPTY_STRING_ARRAY;
   }
index 0ef8c8b36b545af43f2a14d9611870f0ea740146..99103f457f74ff3bad58f887af229c7cfdae2f5a 100644 (file)
@@ -11,6 +11,7 @@ import com.intellij.openapi.util.ActionCallback;
 import com.intellij.openapi.util.Condition;
 import com.intellij.openapi.util.Conditions;
 import com.intellij.util.EventDispatcher;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.concurrency.Semaphore;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.NotNull;
@@ -223,7 +224,7 @@ public class LaterInvocator {
     //TODO!
     //LOG.assertTrue(IdeEventQueue.getInstance().isInInputEvent() || isInMyRunnable());
 
-    return ourModalEntities.toArray(new Object[ourModalEntities.size()]);
+    return ArrayUtil.toObjectArray(ourModalEntities);
   }
 
   public static boolean isInModalContext() {
index 365c417ce7240dfc48e5abad3c2ec821cec62b3d..4cc25f1eb907f64c04f64708edfc7a68aacd4836 100644 (file)
@@ -16,6 +16,7 @@ import com.intellij.openapi.progress.ProgressIndicator;
 import com.intellij.openapi.progress.ProgressManager;
 import com.intellij.openapi.util.UserDataHolderBase;
 import com.intellij.util.ReflectionCache;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.containers.HashMap;
 import com.intellij.util.messages.MessageBus;
 import com.intellij.util.messages.MessageBusFactory;
@@ -271,7 +272,7 @@ public abstract class ComponentManagerImpl extends UserDataHolderBase implements
       Object component = getComponent(interfaceClass);
       if (component != null) components.add(component);
     }
-    return components.toArray(new Object[components.size()]);
+    return ArrayUtil.toObjectArray(components);
   }
 
   @SuppressWarnings({"unchecked"})
index 6fc65bfb81b67fc65a2225c3091b6fa438460fbc..f1643ae82f5642daed0fc241ab5e39188c1a78dd 100644 (file)
@@ -6,6 +6,7 @@ import com.intellij.openapi.components.*;
 import com.intellij.openapi.diagnostic.Logger;
 import com.intellij.openapi.util.*;
 import com.intellij.openapi.vfs.VirtualFile;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.ReflectionCache;
 import com.intellij.util.ReflectionUtil;
 import com.intellij.util.io.fs.IFile;
@@ -387,7 +388,7 @@ abstract class ComponentStoreImpl implements IComponentStore {
 
       final StateStorageManager.ExternalizationSession session = storageManager.startExternalization();
 
-      final String[] names = myComponents.keySet().toArray(new String[myComponents.keySet().size()]);
+      final String[] names = ArrayUtil.toStringArray(myComponents.keySet());
 
       for (String name : names) {
         Object component = myComponents.get(name);
index f0166b53e2faad8d8a73c3f01335a66e497dd464..879558b51723f86c34b3110c45338e3c99d697de 100644 (file)
@@ -1,5 +1,7 @@
 package com.intellij.openapi.diff.impl.highlighting;
 
+import com.intellij.util.ArrayUtil;
+
 import java.util.ArrayList;
 
 class BufferedStringList {
@@ -24,6 +26,6 @@ class BufferedStringList {
 
   public String[] toArray() {
     flushLast();
-    return myStrings.toArray(new String[myStrings.size()]);
+    return ArrayUtil.toStringArray(myStrings);
   }
 }
index 57f6412ea7a0f78b197283fe62e6f3a809761622..98c53b5a044f7dd349718f1a9686aa1a46292fe6 100644 (file)
@@ -4,6 +4,7 @@ import com.intellij.openapi.fileChooser.FileElement;
 import com.intellij.openapi.util.text.StringUtil;
 import com.intellij.openapi.vfs.LocalFileSystem;
 import com.intellij.openapi.vfs.VirtualFile;
+import com.intellij.util.ArrayUtil;
 import org.jetbrains.annotations.NonNls;
 
 import java.io.File;
@@ -41,7 +42,7 @@ public class RootFileElement extends FileElement {
         roots.add(new FileElement(file, file.getPresentableUrl()));
       }
     }
-    return roots.toArray(new Object[roots.size()]);
+    return ArrayUtil.toObjectArray(roots);
   }
 
   private static Object[] getFileSystemRoots() {
@@ -56,7 +57,7 @@ public class RootFileElement extends FileElement {
       if (file == null) continue;
       rootChildren.add(new FileElement(file, file.getPresentableUrl()));
     }
-    return rootChildren.toArray(new Object[rootChildren.size()]);
+    return ArrayUtil.toObjectArray(rootChildren);
   }
 
   public Object getParentFor(final VirtualFile parent) {
index 420883249591d7a2414565feba04020b0ae13deb..c869e40987c5be9953a0e66b6209b25a511d660d 100644 (file)
@@ -104,7 +104,7 @@ public class FileTreeStructure extends AbstractTreeStructure {
         childrenSet.add(childElement);
       }
     }
-    return childrenSet.toArray(new Object[childrenSet.size()]);
+    return ArrayUtil.toObjectArray(childrenSet);
   }
 
 
index 4491e384d333759982538b30470cd1cbfb53ab36..a0e59e41e307c09dd4011a333abff54fbc2a9a01 100644 (file)
@@ -9,6 +9,7 @@ import com.intellij.openapi.fileTypes.FileNameMatcher;
 import com.intellij.openapi.fileTypes.FileType;
 import com.intellij.openapi.util.Pair;
 import com.intellij.openapi.util.io.FileUtil;
+import com.intellij.util.ArrayUtil;
 import gnu.trove.THashMap;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.NotNull;
@@ -77,7 +78,7 @@ public class FileTypeAssocTable {
   public boolean removeAllAssociations(FileType type) {
     boolean changed = false;
     Set<String> exts = myExtensionMappings.keySet();
-    String[] extsStrings = exts.toArray(new String[exts.size()]);
+    String[] extsStrings = ArrayUtil.toStringArray(exts);
     for (String s : extsStrings) {
       if (myExtensionMappings.get(s) == type) {
         myExtensionMappings.remove(s);
@@ -135,7 +136,7 @@ public class FileTypeAssocTable {
         exts.add(ext);
       }
     }
-    return exts.toArray(new String[exts.size()]);
+    return ArrayUtil.toStringArray(exts);
   }
 
   @NotNull
index 7f9d15b85197fe6f6aef162120383c857204c06f..1f6b9c084e6faa7281c84eb3bfee6726e7188282 100644 (file)
@@ -15,8 +15,8 @@ import com.intellij.openapi.fileTypes.ex.*;
 import com.intellij.openapi.options.*;
 import com.intellij.openapi.util.*;
 import com.intellij.openapi.vfs.VirtualFile;
-import com.intellij.util.PatternUtil;
 import com.intellij.util.ArrayUtil;
+import com.intellij.util.PatternUtil;
 import com.intellij.util.containers.ConcurrentHashSet;
 import com.intellij.util.messages.MessageBus;
 import com.intellij.util.messages.MessageBusConnection;
@@ -24,14 +24,12 @@ import gnu.trove.THashMap;
 import gnu.trove.THashSet;
 import org.jdom.Document;
 import org.jdom.Element;
-import org.jdom.JDOMException;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
 import javax.swing.*;
 import java.io.File;
-import java.io.IOException;
 import java.util.*;
 import java.util.regex.Pattern;
 
@@ -68,8 +66,8 @@ public class FileTypeManagerImpl extends FileTypeManagerEx implements NamedJDOME
   @NonNls private static final String ATTRIBUTE_DEFAULT_EXTENSION = "default_extension";
 
   private static class StandardFileType {
-    FileType fileType;
-    List<FileNameMatcher> matchers;
+    private final FileType fileType;
+    private final List<FileNameMatcher> matchers;
 
     private StandardFileType(final FileType fileType, final List<FileNameMatcher> matchers) {
       this.fileType = fileType;
@@ -81,15 +79,15 @@ public class FileTypeManagerImpl extends FileTypeManagerEx implements NamedJDOME
   private static final Map<String, StandardFileType> ourStandardFileTypes = new LinkedHashMap<String, StandardFileType>();
   @NonNls private static final String[] FILE_TYPES_WITH_PREDEFINED_EXTENSIONS = {"JSP", "JSPX", "DTD", "HTML", "Properties", "XHTML"};
   private final SchemesManager<FileType, AbstractFileType> mySchemesManager;
-  private static final String FILE_SPEC = "$ROOT_CONFIG$/filetypes";
+  @NonNls private static final String FILE_SPEC = "$ROOT_CONFIG$/filetypes";
 
   static {
     final FileTypeConsumer consumer = new FileTypeConsumer() {
-      public void consume(final @NotNull FileType fileType, final String extensions) {
+      public void consume(@NotNull final FileType fileType, final String extensions) {
         register(fileType, parse(extensions));
       }
 
-      public void consume(final @NotNull FileType fileType, final FileNameMatcher... matchers) {
+      public void consume(@NotNull final FileType fileType, final FileNameMatcher... matchers) {
         register(fileType, Arrays.asList(matchers));
       }
 
@@ -130,7 +128,7 @@ public class FileTypeManagerImpl extends FileTypeManagerEx implements NamedJDOME
 
   public FileTypeManagerImpl(MessageBus bus, SchemesManagerFactory schemesManagerFactory) {
     mySchemesManager = schemesManagerFactory.createSchemesManager(FILE_SPEC, new SchemeProcessor<AbstractFileType>() {
-      public AbstractFileType readScheme(final Document document) throws InvalidDataException, IOException, JDOMException {
+      public AbstractFileType readScheme(final Document document) throws InvalidDataException {
         if (document == null) {
           throw new InvalidDataException();
         }
@@ -214,7 +212,7 @@ public class FileTypeManagerImpl extends FileTypeManagerEx implements NamedJDOME
     myMessageBus = bus;
   }
 
-  private void writeImportedExtensionsMap(final Element map, final ImportedFileType type) {
+  private static void writeImportedExtensionsMap(final Element map, final ImportedFileType type) {
     for (FileNameMatcher matcher : type.getOriginalPatterns()) {
       Element content = AbstractFileType.writeMapping(type, matcher, false);
       if (content != null) {
@@ -790,7 +788,7 @@ public class FileTypeManagerImpl extends FileTypeManagerEx implements NamedJDOME
     return type;
   }
 
-  private void setFileTypeAttributes(final String fileTypeName, final String fileTypeDescr, final String iconPath, final UserFileType ft) {
+  private static void setFileTypeAttributes(final String fileTypeName, final String fileTypeDescr, final String iconPath, final UserFileType ft) {
     if (iconPath != null && !"".equals(iconPath.trim())) {
       Icon icon = IconLoader.getIcon(iconPath);
       ft.setIcon(icon);
index d42a1b7b305ed55480d591c2b15ee7ea0116d020..42bcde594b9866a98f5c7db8dbf2e4efa7cb33d3 100644 (file)
@@ -423,7 +423,7 @@ public class KeymapImpl implements Keymap, ExternalizableScheme {
       }
     }
     if (list == null) return ArrayUtil.EMPTY_STRING_ARRAY;
-    return sortInOrderOfRegistration(list.toArray(new String[list.size()]));
+    return sortInOrderOfRegistration(ArrayUtil.toStringArray(list));
   }
 
   public String[] getActionIds(KeyStroke firstKeyStroke) {
@@ -449,7 +449,7 @@ public class KeymapImpl implements Keymap, ExternalizableScheme {
       }
     }
     if (list == null) return ArrayUtil.EMPTY_STRING_ARRAY;
-    return sortInOrderOfRegistration(list.toArray(new String[list.size()]));
+    return sortInOrderOfRegistration(ArrayUtil.toStringArray(list));
   }
 
   public String[] getActionIds(KeyStroke firstKeyStroke, KeyStroke secondKeyStroke) {
@@ -468,7 +468,7 @@ public class KeymapImpl implements Keymap, ExternalizableScheme {
         }
       }
     }
-    return actualBindings.toArray(new String[actualBindings.size()]);
+    return ArrayUtil.toStringArray(actualBindings);
   }
 
   public String[] getActionIds(final Shortcut shortcut) {
@@ -516,7 +516,7 @@ public class KeymapImpl implements Keymap, ExternalizableScheme {
     if (list == null){
       return ArrayUtil.EMPTY_STRING_ARRAY;
     }
-    return sortInOrderOfRegistration(list.toArray(new String[list.size()]));
+    return sortInOrderOfRegistration(ArrayUtil.toStringArray(list));
   }
 
   private static String[] sortInOrderOfRegistration(String[] ids) {
@@ -856,7 +856,7 @@ public class KeymapImpl implements Keymap, ExternalizableScheme {
         ids.add(id);
       }
     }
-    return ids.toArray(new String[ids.size()]);
+    return ArrayUtil.toStringArray(ids);
   }
 
   protected String[] getParentActionIds() {
index 222b2bc6602255e30270f9fd2e5587e58f3b43fc..bc3bbba192e9ae5760a4b0ffaf95bb1ac8431339 100644 (file)
@@ -13,6 +13,7 @@ import com.intellij.openapi.project.Project;
 import com.intellij.openapi.ui.DialogWrapper;
 import com.intellij.openapi.wm.ex.IdeFocusTraversalPolicy;
 import com.intellij.ui.IdeBorderFactory;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.ui.UIUtil;
 
 import javax.swing.*;
@@ -171,7 +172,7 @@ public class KeyboardShortcutDialog extends DialogWrapper {
     Map<String, ArrayList<KeyboardShortcut>> conflicts = myKeymap.getConflicts(myActionId, keyboardShortcut);
 
     Set<String> keys = conflicts.keySet();
-    String[] actionIds = keys.toArray(new String[keys.size()]);
+    String[] actionIds = ArrayUtil.toStringArray(keys);
     for (String actionId : actionIds) {
       String actionPath = myMainGroup.getActionQualifiedPath(actionId);
       // actionPath == null for editor actions having corresponding $-actions
index 749c6dde59c3e9682abc0820c8e10d450a7ec18a..48a204ec1def8f6073aa63ef381b37455d3dbb07 100644 (file)
@@ -243,7 +243,7 @@ public class QuickListPanel {
         }
       }
     }
-    return actions.toArray(new String[actions.size()]);
+    return ArrayUtil.toStringArray(actions);
   }
 
   public JPanel getPanel() {
index f1ac905fbee076e4ec0bb96002418111e4c34621..222a4032cd8b61e35465ebcbe3e4a297b10dc7d7 100644 (file)
@@ -16,6 +16,7 @@ import com.intellij.openapi.vfs.VfsBundle;
 import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.openapi.vfs.newvfs.FileSystemInterface;
 import com.intellij.openapi.vfs.newvfs.NewVirtualFile;
+import com.intellij.util.ArrayUtil;
 import gnu.trove.THashMap;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.NotNull;
@@ -133,7 +134,7 @@ public class JarHandler implements FileSystemInterface {
         }
       }
 
-      return names.toArray(new String[names.size()]);
+      return ArrayUtil.toStringArray(names);
     }
   }
 
index 5962f984300b42e32a3b3c670d0d5ad16e3abe06..137213f1607c16a0c4b8a4748ed4f6f5f12949ed 100644 (file)
@@ -47,7 +47,7 @@ class StatisticsUnit {
     if (list == null) return ArrayUtil.EMPTY_STRING_ARRAY;
 
     final HashSet<String> keys = new HashSet<String>(list);
-    return keys.toArray(new String[keys.size()]);
+    return ArrayUtil.toStringArray(keys);
   }
 
   public int getNumber() {
index 868900d908aa8fa9c235ca651630a5412ba68487..4239cefe49e4a63c5c479d2443a8ee701a80797c 100644 (file)
@@ -5,6 +5,7 @@ import com.apple.cocoa.foundation.NSArray;
 import com.growl.Growl;
 import com.intellij.openapi.application.ApplicationNamesInfo;
 import com.intellij.openapi.diagnostic.Logger;
+import com.intellij.util.ArrayUtil;
 import org.jetbrains.annotations.NotNull;
 
 import java.util.Set;
@@ -33,7 +34,7 @@ class GrowlNotifications {
   }
 
   private String[] getAllNotifications() {
-    return myNotifications.toArray(new String[myNotifications.size()]);
+    return ArrayUtil.toStringArray(myNotifications);
   }
 
   public static synchronized GrowlNotifications getNofications() {
index 01fd8aa3836c08140ac27c367e4106577ba74062..9ba02ba86fa7fd7eeff55a5de8e38dad9d0b0ffb 100644 (file)
@@ -1,11 +1,13 @@
 package com.intellij.ui;
 
+import com.intellij.util.ArrayUtil;
+
 import java.awt.*;
 import java.util.ArrayList;
 
 public class SplittingUtil {
   public static String[] splitText(String text, FontMetrics fontMetrics, int widthLimit, char separator){
-    ArrayList lines = new ArrayList();
+    ArrayList<String> lines = new ArrayList<String>();
     String currentLine = "";
     StringBuffer currentAtom = new StringBuffer();
 
@@ -38,6 +40,6 @@ public class SplittingUtil {
       lines.add(s);
     }
 
-    return (String[])lines.toArray(new String[lines.size()]);
+    return ArrayUtil.toStringArray(lines);
   }
 }
index dd7de79f7ca2fa9ac0194dbf3327714a6082d2e0..936c4bec24e00fdb14a2ea82010d554057c5fc59 100644 (file)
@@ -16,6 +16,7 @@ import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.rt.ant.execution.AntMain2;
 import com.intellij.rt.ant.execution.IdeaAntLogger2;
 import com.intellij.rt.ant.execution.IdeaInputHandler;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.PathUtil;
 import com.intellij.util.config.AbstractProperty;
 import org.jetbrains.annotations.NonNls;
@@ -146,6 +147,6 @@ public class AntCommandLineBuilder {
   }
 
   public String[] getTargets() {
-    return myTargets.toArray(new String[myTargets.size()]);
+    return ArrayUtil.toStringArray(myTargets);
   }
 }
index 5d17f22e69d52c18cfd2ef24429585afbc62324c..3036cc5a40b2c04fb343909cf1e51e8a9eb48355 100644 (file)
@@ -31,6 +31,7 @@ import com.intellij.openapi.util.Disposer;
 import com.intellij.openapi.util.IconLoader;
 import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.ui.*;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.StringBuilderSpinAllocator;
 import com.intellij.util.ui.Tree;
 import com.intellij.util.ui.tree.TreeUtil;
@@ -291,7 +292,7 @@ public class AntExplorer extends JPanel implements DataProvider {
         targets.add(target.getName());
       }
     }
-    return targets.toArray(new String[targets.size()]);
+    return ArrayUtil.toStringArray(targets);
   }
 
   private static AntBuildTarget[] getTargetObjectsFromPaths(TreePath[] paths) {
index d2a7748c1387130a5770ae778c78a670c41a1a92..1e34524ce03de352d45015c5df8895a155c9424a 100644 (file)
@@ -11,6 +11,7 @@ import com.intellij.psi.PsiElement;
 import com.intellij.psi.search.GlobalSearchScope;
 import com.intellij.psi.xml.XmlAttribute;
 import com.intellij.util.IncorrectOperationException;
+import com.intellij.util.ArrayUtil;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
@@ -150,7 +151,7 @@ public class AntElementNameReference extends AntGenericReference {
           }
         }.walkFiles(antFile);
       }
-      return ids.toArray(new Object[ids.size()]);
+      return ArrayUtil.toObjectArray(ids);
     }
     finally {
       PsiElementSetSpinAllocator.dispose(ids);
index 102abb11b199f739f516aa4fce13d61c7e4743e8..0ec56555facc6d092fa24b58698eda1113f50aa4 100644 (file)
@@ -21,6 +21,7 @@ import com.intellij.psi.xml.XmlAttributeValue;
 import com.intellij.util.IncorrectOperationException;
 import com.intellij.util.StringBuilderSpinAllocator;
 import com.intellij.util.StringSetSpinAllocator;
+import com.intellij.util.ArrayUtil;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
@@ -120,7 +121,7 @@ public class AntPropertyReference extends AntGenericReference {
           }
         }
       }
-      return variants.toArray(new Object[variants.size()]);
+      return ArrayUtil.toObjectArray(variants);
     }
     finally {
       PsiElementSetSpinAllocator.dispose(variants);
index 036c9a1a4ba5999c8acbf1dce0f5efe97e9e4c85..5f577c1adf626afe994ac8440e592954e431df90 100644 (file)
@@ -12,6 +12,7 @@ import com.intellij.psi.PsiElement;
 import com.intellij.psi.PsiNamedElement;
 import com.intellij.psi.xml.XmlAttribute;
 import com.intellij.util.IncorrectOperationException;
+import com.intellij.util.ArrayUtil;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
@@ -67,7 +68,7 @@ public class AntRefIdReference extends AntGenericReference {
       final Set<PsiElement> elementsDepthStack = PsiElementSetSpinAllocator.alloc();
       try {
         getVariants(getElement().getAntProject(), variants, elementsDepthStack);
-        return variants.toArray(new Object[variants.size()]);
+        return ArrayUtil.toObjectArray(variants);
       }
       finally {
         PsiElementSetSpinAllocator.dispose(elementsDepthStack);
index 5d6e9c11d58daacdbb53c5950013e773fad4e4aa..d44b107c98fbc6b0de8815800a07c194c9ee953e 100644 (file)
@@ -27,6 +27,7 @@ import com.intellij.refactoring.util.CommonRefactoringUtil;
 import com.intellij.refactoring.util.EnumConstantsUtil;
 import com.intellij.refactoring.util.RefactoringMessageUtil;
 import com.intellij.ui.*;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.IncorrectOperationException;
 import gnu.trove.THashSet;
 import org.jetbrains.annotations.NonNls;
@@ -196,7 +197,7 @@ class IntroduceConstantDialog extends DialogWrapper {
       myTargetClassNamePanel.setLayout(new BorderLayout());
       myTargetClassNamePanel.add(targetClassName, BorderLayout.CENTER);
       myTargetClassNameLabel.setLabelFor(targetClassName);
-      targetClassName.setHistory(possibleClassNames.toArray(new String[possibleClassNames.size()]));
+      targetClassName.setHistory(ArrayUtil.toStringArray(possibleClassNames));
       myTfTargetClassName = targetClassName;
       targetClassName.getChildComponent().addDocumentListener(new DocumentAdapter() {
         public void documentChanged(DocumentEvent e) {
index 67ad2d2a88d0a73f5eb4e8bcf694125ff2eeb929..1bfa2ef302b0c528297aeab4747c3977edcbb618 100644 (file)
@@ -9,16 +9,20 @@
 package com.intellij.refactoring.memberPullUp;
 
 import com.intellij.psi.*;
+import com.intellij.psi.util.MethodSignature;
+import com.intellij.psi.util.MethodSignatureUtil;
 import com.intellij.psi.util.PsiUtil;
 import com.intellij.psi.util.TypeConversionUtil;
-import com.intellij.psi.util.MethodSignatureUtil;
-import com.intellij.psi.util.MethodSignature;
 import com.intellij.refactoring.RefactoringBundle;
-import com.intellij.refactoring.util.*;
+import com.intellij.refactoring.util.ConflictsUtil;
+import com.intellij.refactoring.util.RefactoringHierarchyUtil;
+import com.intellij.refactoring.util.RefactoringUIUtil;
+import com.intellij.refactoring.util.RefactoringUtil;
 import com.intellij.refactoring.util.classMembers.ClassMemberReferencesVisitor;
 import com.intellij.refactoring.util.classMembers.InterfaceContainmentVerifier;
 import com.intellij.refactoring.util.classMembers.MemberInfo;
 import com.intellij.usageView.UsageInfo;
+import com.intellij.util.ArrayUtil;
 
 import java.util.*;
 
@@ -83,7 +87,7 @@ public class PullUpConflictsUtil {
     }
     RefactoringUtil.analyzeModuleConflicts(subclass.getProject(), checkModuleConflictsList,
                                            new UsageInfo[0], targetRepresentativeElement, conflictsList);
-    return conflictsList.toArray(new String[conflictsList.size()]);
+    return ArrayUtil.toStringArray(conflictsList);
   }
 
   private static void checkInterfaceTarget(MemberInfo[] infos, LinkedHashSet<String> conflictsList) {
index ae4a4c7c35495be4bbc05c1758ff1e81536dcea9..7208a023be765e2a78e0d638f088948d79cac3a0 100644 (file)
@@ -27,6 +27,7 @@ import com.intellij.refactoring.util.*;
 import com.intellij.usageView.UsageInfo;
 import com.intellij.usageView.UsageViewDescriptor;
 import com.intellij.usageView.UsageViewUtil;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.IncorrectOperationException;
 import com.intellij.util.containers.HashMap;
 import org.jetbrains.annotations.NotNull;
@@ -457,7 +458,7 @@ public class MoveMembersProcessor extends BaseRefactoringProcessor {
         }
       }
     }
-    return conflicts.toArray(new String[conflicts.size()]);
+    return ArrayUtil.toStringArray(conflicts);
   }
 
   private static void checkUsedElements(PsiMember member, PsiElement scope, @NotNull Set<PsiMember> membersToMove, PsiClass newContext, LinkedHashSet<String> conflicts) {
index cfec6fa3f757917d8afd79f68e04f428c0fb77c9..39a3b8eac42246ef56c7300506696f1900e4e96d 100644 (file)
@@ -11,8 +11,9 @@ import com.intellij.refactoring.RefactoringBundle;
 import com.intellij.refactoring.ui.NameSuggestionsField;
 import com.intellij.refactoring.ui.RefactoringDialog;
 import com.intellij.refactoring.util.CommonRefactoringUtil;
-import com.intellij.ui.ReferenceEditorWithBrowseButton;
 import com.intellij.ui.JavaReferenceEditorUtil;
+import com.intellij.ui.ReferenceEditorWithBrowseButton;
+import com.intellij.util.ArrayUtil;
 import org.jetbrains.annotations.NonNls;
 
 import javax.swing.*;
@@ -133,7 +134,7 @@ public class ReplaceConstructorWithFactoryDialog extends RefactoringDialog {
         parent = parent.getParent();
       }
 
-      myTargetClassNameCombo = new JComboBox(list.toArray(new String[list.size()]));
+      myTargetClassNameCombo = new JComboBox(ArrayUtil.toStringArray(list));
       JLabel label = new JLabel(RefactoringBundle.message("replace.constructor.with.factory.target.fq.name"));
       label.setLabelFor(myTargetClassNameCombo.getEditor().getEditorComponent());
       targetClassPanel.add(label, BorderLayout.NORTH);
index 91a49a48dc0c9afcb52b9a5f07a655b1c2396a86..d654020e3d67e46192f667edc4175ac79c849747 100644 (file)
@@ -4,6 +4,7 @@
 
 package com.intellij.facet.impl.autodetecting;
 
+import com.intellij.ProjectTopics;
 import com.intellij.facet.*;
 import com.intellij.facet.autodetecting.FacetDetector;
 import com.intellij.facet.impl.autodetecting.facetsTree.DetectedFacetsDialog;
@@ -14,8 +15,8 @@ import com.intellij.openapi.Disposable;
 import com.intellij.openapi.application.ApplicationManager;
 import com.intellij.openapi.application.ModalityState;
 import com.intellij.openapi.module.Module;
-import com.intellij.openapi.project.Project;
 import com.intellij.openapi.project.ModuleAdapter;
+import com.intellij.openapi.project.Project;
 import com.intellij.openapi.roots.ModifiableRootModel;
 import com.intellij.openapi.roots.ModuleRootManager;
 import com.intellij.openapi.ui.popup.JBPopup;
@@ -30,7 +31,7 @@ import com.intellij.openapi.wm.StatusBar;
 import com.intellij.openapi.wm.WindowManager;
 import com.intellij.ui.SimpleColoredComponent;
 import com.intellij.util.Alarm;
-import com.intellij.ProjectTopics;
+import com.intellij.util.ArrayUtil;
 import org.jetbrains.annotations.NotNull;
 
 import javax.swing.*;
@@ -189,7 +190,7 @@ public class DetectedFacetManager implements Disposable {
   public void disableDetectionInFile(final DetectedFacetInfo<Module> detectedFacet) {
     Collection<String> urls = myAutodetectingManager.getFileIndex().getFiles(detectedFacet.getId());
     if (urls != null && !urls.isEmpty()) {
-      myAutodetectingManager.disableAutodetectionInFiles(detectedFacet.getFacetType(), detectedFacet.getModule(), urls.toArray(new String[urls.size()]));
+      myAutodetectingManager.disableAutodetectionInFiles(detectedFacet.getFacetType(), detectedFacet.getModule(), ArrayUtil.toStringArray(urls));
     }
     myAutodetectingManager.getDetectedFacetSet().removeFacetInfo(detectedFacet);
   }
@@ -334,7 +335,7 @@ public class DetectedFacetManager implements Disposable {
     public void beforeFacetRemoved(final F facet) {
       Set<String> files = myAutodetectingManager.getFiles(facet);
       if (files != null) {
-        myAutodetectingManager.disableAutodetectionInFiles(facet.getType(), facet.getModule(), files.toArray(new String[files.size()]));
+        myAutodetectingManager.disableAutodetectionInFiles(facet.getType(), facet.getModule(), ArrayUtil.toStringArray(files));
       }
       myAutodetectingManager.removeFacetFromCache(facet);
     }
index 818e1788e8f8946870fc782c9fbab16afabed64d..fab13cded6484893c6382c8159c9074858afe456 100644 (file)
@@ -14,10 +14,11 @@ import com.intellij.openapi.application.PathManager;
 import com.intellij.openapi.diagnostic.Logger;
 import com.intellij.openapi.fileTypes.FileType;
 import com.intellij.openapi.fileTypes.FileTypeManager;
+import com.intellij.openapi.module.Module;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.project.ProjectBundle;
 import com.intellij.openapi.vfs.VirtualFile;
-import com.intellij.openapi.module.Module;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.SmartList;
 import com.intellij.util.containers.BidirectionalMultiMap;
 import com.intellij.util.fileIndex.AbstractFileIndex;
@@ -185,7 +186,7 @@ public class FacetDetectionIndex extends AbstractFileIndex<FacetDetectionIndexEn
     FacetPointer<Facet> pointer = FacetPointersManager.getInstance(facet.getModule().getProject()).create(facet);
     Set<String> urls = myDetectedFacetIds.getKeys(info.getId());
     if (urls != null) {
-      String[] urlsArray = urls.toArray(new String[urls.size()]);
+      String[] urlsArray = ArrayUtil.toStringArray(urls);
       for (String url : urlsArray) {
         myDetectedFacetIds.remove(url, info.getId());
         myFacets.put(url, pointer);
index 216606eb0b4541cd48d35a593c39e66c5f13fa15..9e2a03a42ab1885c2d69b2eb3279ea3e74353c65 100644 (file)
@@ -7,6 +7,7 @@ package com.intellij.facet.impl.ui.libraries;
 import com.intellij.facet.ui.libraries.LibraryInfo;
 import com.intellij.openapi.roots.libraries.LibraryUtil;
 import com.intellij.openapi.vfs.VirtualFile;
+import com.intellij.util.ArrayUtil;
 import org.jetbrains.annotations.Nullable;
 
 import java.util.ArrayList;
@@ -50,8 +51,7 @@ public class RequiredLibrariesInfo {
     if (infos.isEmpty()) {
       return null;
     }
-    return new RequiredClassesNotFoundInfo(classes.toArray(new String[classes.size()]),
-                                           infos.toArray(new LibraryInfo[infos.size()]));
+    return new RequiredClassesNotFoundInfo(ArrayUtil.toStringArray(classes), infos.toArray(new LibraryInfo[infos.size()]));
   }
 
   public static String getLibrariesPresentableText(final LibraryInfo[] libraryInfos) {
index 2d170008ed0fbaffe977ceaddd2cdc7378a55e0f..ce66e4eb1628cf8468c00410094d7a8fcd8f6f16 100644 (file)
@@ -77,7 +77,7 @@ public final class CalleeMethodsTreeStructure extends HierarchyTreeStructure {
       result.add(new CallHierarchyNodeDescriptor(myProject, descriptor, ejbImplementation, false));
     }
 */
-    return result.toArray(new Object[result.size()]);
+    return ArrayUtil.toObjectArray(result);
   }
 
   private boolean isInScope(final PsiClass baseClass, final PsiMethod calledMethod) {
index 0d25b3e3f6dbfd3626e975845ca7d2371b189498..f37c29cb878d5c690d7884459653bf2e6c879256 100644 (file)
@@ -8,9 +8,10 @@ import com.intellij.openapi.fileEditor.FileEditorManager;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.ui.PopupHandler;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.containers.HashSet;
-import org.jetbrains.annotations.Nullable;
 import org.jetbrains.annotations.NonNls;
+import org.jetbrains.annotations.Nullable;
 
 import javax.swing.*;
 import javax.swing.event.ListSelectionEvent;
@@ -123,7 +124,7 @@ public class PaletteWindow extends JPanel implements DataProvider {
     for(PaletteGroup group: groups) {
       result.add(group.getTabName());
     }
-    return result.toArray(new String[result.size()]);
+    return ArrayUtil.toStringArray(result);
   }
 
   private ArrayList<PaletteGroup> collectCurrentGroups(@Nullable VirtualFile selectedFile) {
index 429cf79863296edc9648cac13de6d3a68d3574a4..65e29fd14fcd7ec6d78acb5487f1e361c64fdec2 100644 (file)
@@ -1,13 +1,14 @@
 package com.intellij.ide.util;
 
+import com.intellij.openapi.application.ApplicationManager;
+import com.intellij.openapi.ui.DialogWrapper;
 import com.intellij.psi.PsiClass;
+import com.intellij.psi.PsiElement;
 import com.intellij.psi.PsiMethod;
 import com.intellij.psi.PsiModifier;
-import com.intellij.psi.PsiElement;
 import com.intellij.psi.search.searches.DeepestSuperMethodsSearch;
 import com.intellij.usageView.UsageViewUtil;
-import com.intellij.openapi.ui.DialogWrapper;
-import com.intellij.openapi.application.ApplicationManager;
+import com.intellij.util.ArrayUtil;
 import org.jetbrains.annotations.NotNull;
 
 import java.util.Collection;
@@ -47,15 +48,8 @@ public class SuperMethodWarningUtil {
     }
 
     SuperMethodWarningDialog dialog =
-        new SuperMethodWarningDialog(
-            method.getProject(),
-            UsageViewUtil.getDescriptiveName(method),
-            actionString,
-            superAbstract,
-            parentInterface,
-            aClass.isInterface(),
-            superClasses.toArray(new String[superClasses.size()])
-    );
+        new SuperMethodWarningDialog(method.getProject(), UsageViewUtil.getDescriptiveName(method), actionString, superAbstract,
+                                     parentInterface, aClass.isInterface(), ArrayUtil.toStringArray(superClasses));
     dialog.show();
 
     if (dialog.getExitCode() == DialogWrapper.OK_EXIT_CODE) {
index c6b4ae9ecd48fe481a13e4bcf544577b029c5b17..ecd83b92020b9788118d3c072610d72461994c64 100644 (file)
@@ -30,6 +30,7 @@ import com.intellij.psi.PsiFile;
 import com.intellij.psi.PsiManager;
 import com.intellij.ui.TabbedPaneWrapper;
 import com.intellij.ui.TreeSpeedSearch;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.ui.Tree;
 import com.intellij.util.ui.UIUtil;
 import gnu.trove.THashSet;
@@ -361,7 +362,7 @@ public final class TreeFileChooserDialog extends DialogWrapper implements TreeFi
         }
       }
 
-      final String[] result = array.toArray(new String[array.size()]);
+      final String[] result = ArrayUtil.toStringArray(array);
       Arrays.sort(result);
       return result;
     }
@@ -428,6 +429,6 @@ public final class TreeFileChooserDialog extends DialogWrapper implements TreeFi
       }
       result.add(o);
     }
-    return result.toArray(new Object[result.size()]);
+    return ArrayUtil.toObjectArray(result);
   }
 }
index 35ca1ba69b72351bfe9ed9333bfb86d7e2648120..4103dcf4a61792af0faf0f9e99aca6a39a0d7181 100644 (file)
@@ -35,11 +35,13 @@ import com.intellij.ide.util.DefaultPsiElementCellRenderer;
 import com.intellij.navigation.ChooseByNameContributor;
 import com.intellij.navigation.NavigationItem;
 import com.intellij.openapi.diagnostic.Logger;
+import com.intellij.openapi.progress.ProgressManager;
 import com.intellij.openapi.project.Project;
 import com.intellij.psi.*;
 import com.intellij.psi.search.GlobalSearchScope;
 import com.intellij.psi.search.PsiShortNamesCache;
 import com.intellij.psi.util.PsiUtil;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.containers.HashSet;
 
 import java.util.*;
@@ -53,7 +55,7 @@ public class DefaultSymbolNavigationContributor implements ChooseByNameContribut
     cache.getAllMethodNames(set);
     cache.getAllFieldNames(set);
     cache.getAllClassNames(set);
-    return set.toArray(new String[set.size()]);
+    return ArrayUtil.toStringArray(set);
   }
 
   public NavigationItem[] getItemsByName(String name, final String pattern, Project project, boolean includeNonProjectItems) {
@@ -90,8 +92,10 @@ public class DefaultSymbolNavigationContributor implements ChooseByNameContribut
   }
 
   private static PsiMethod[] filterInheritedMethods(PsiMethod[] methods) {
-    ArrayList<PsiMethod> list = new ArrayList<PsiMethod>();
+    ArrayList<PsiMethod> list = new ArrayList<PsiMethod>(methods.length);
+    ProgressManager progressManager = ProgressManager.getInstance();
     for (PsiMethod method : methods) {
+      progressManager.checkCanceled();
       if (method.isConstructor()) continue;
       PsiMethod[] supers = method.findSuperMethods();
       if (supers.length > 0) continue;
index 92bbbbadaee7697888154353bb93b22066272180..2b504bc6b866d1f2e209fb52960702c417900041 100644 (file)
@@ -75,7 +75,7 @@ public class ViewerTreeStructure extends AbstractTreeStructure {
               child = child.getTreeNext();
             }
           }
-          result = list.toArray(new Object[list.size()]);
+          result = ArrayUtil.toObjectArray(list);
         }
         else {
           final PsiElement[] elementChildren = ((PsiElement)element).getChildren();
index 56537d1f21c44bef9d733a2566552327156d63d1..c00d4eac175f37a38da2df1afcc74921dc9e0acd 100644 (file)
@@ -41,6 +41,7 @@ import com.intellij.psi.infos.CandidateInfo;
 import com.intellij.psi.javadoc.PsiDocComment;
 import com.intellij.psi.javadoc.PsiDocTag;
 import com.intellij.psi.util.PsiFormatUtil;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.StringBuilderSpinAllocator;
 import com.intellij.util.containers.HashMap;
 import org.jetbrains.annotations.NonNls;
@@ -630,8 +631,7 @@ public class JavaDocumentationProvider extends ExtensibleDocumentationProvider i
       }
       final HashSet<String> set = new HashSet<String>(urls);
       if (set.size() > 1) {
-        JBPopupFactory.getInstance().createListPopup(new BaseListPopupStep<String>("Choose javadoc root",
-                                                                                   set.toArray(new String[set.size()])) {
+        JBPopupFactory.getInstance().createListPopup(new BaseListPopupStep<String>("Choose javadoc root", ArrayUtil.toStringArray(set)) {
           public PopupStep onChosen(final String selectedValue, final boolean finalChoice) {
             BrowserUtil.launchBrowser(selectedValue);
             return PopupStep.FINAL_CHOICE;
index e136f4e5823c3ba932b51effbc573e4eb3d6e2a3..8987ee44ec0216fc510fbe1792d31d1f9103e395 100644 (file)
@@ -14,6 +14,7 @@ import com.intellij.openapi.roots.ProjectRootManager;
 import com.intellij.openapi.startup.StartupManager;
 import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.psi.*;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.Processor;
 import com.intellij.util.messages.MessageBusConnection;
 import gnu.trove.THashSet;
@@ -145,7 +146,7 @@ public class PropertiesReferenceManager implements ProjectComponent {
         result.add(baseName);
       }
     });
-    return result.toArray(new String[result.size()]);
+    return ArrayUtil.toStringArray(result);
   }
 
   interface PropertiesFileProcessor {
index 9a94deb75ec32f7ff4673f4d254a62044296623f..a1142277fbf6aea9f2530fee6d4bc91568a06773 100644 (file)
@@ -11,6 +11,7 @@ import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.openapi.diagnostic.Logger;
 import com.intellij.psi.*;
 import com.intellij.util.IncorrectOperationException;
+import com.intellij.util.ArrayUtil;
 import gnu.trove.THashSet;
 import gnu.trove.TObjectHashingStrategy;
 import org.jetbrains.annotations.NotNull;
@@ -192,6 +193,6 @@ public abstract class PropertyReferenceBase implements PsiPolyVariantReference,
         addVariantsFromFile(propFile, variants);
       }
     }
-    return variants.toArray(new Object[variants.size()]);
+    return ArrayUtil.toObjectArray(variants);
   }
 }
index 9ea92ceccbdd2563403a701907a00453943f6b52..5a75718a86e80ecf4bc8cf5492c53c36ea8c4eb3 100644 (file)
@@ -9,6 +9,7 @@ import com.intellij.openapi.roots.ModuleRootManager;
 import com.intellij.openapi.roots.OrderEntry;
 import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.openapi.vfs.VirtualFileManager;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.StringBuilderSpinAllocator;
 import com.intellij.util.containers.OrderedSet;
 import gnu.trove.TObjectHashingStrategy;
@@ -102,7 +103,7 @@ public class CompilerPathsEx extends CompilerPaths {
         outputPaths.add(VirtualFileManager.extractPath(outputPathForTestsUrl).replace('/', File.separatorChar));
       }
     }
-    return outputPaths.toArray(new String[outputPaths.size()]);
+    return ArrayUtil.toStringArray(outputPaths);
   }
 
   public static VirtualFile[] getOutputDirectories(final Module[] modules) {
index b2691876b2db0e7fc99ec59a30736605bc0b7d1b..e6a2531d20a4ddd91bf5c750da24d713f5467bba 100644 (file)
@@ -17,6 +17,7 @@ import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.openapi.vfs.pointers.VirtualFilePointer;
 import com.intellij.openapi.vfs.pointers.VirtualFilePointerListener;
 import com.intellij.openapi.vfs.pointers.VirtualFilePointerManager;
+import com.intellij.util.ArrayUtil;
 import org.jdom.Element;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.NotNull;
@@ -301,7 +302,7 @@ public class CompilerModuleExtensionImpl extends CompilerModuleExtension {
       if (outputPathForTests != null && !outputPathForTests.equals(outputRoot)) {
         result.add(outputPathForTests);
       }
-      return result.toArray(new String[result.size()]);
+      return ArrayUtil.toStringArray(result);
     }
     return null;
   }
index 68fd868573eab9b81567fd8072dcbc2382c4fd5c..b731d4970a262716da6cea104cce152eb350ea02 100644 (file)
@@ -321,7 +321,7 @@ public class LibraryTableEditor implements Disposable {
         elements.add(pathElement);
       }
     }
-    return elements.toArray(new Object[elements.size()]);
+    return ArrayUtil.toObjectArray(elements);
   }
 
   @Nullable
index 704af69ca1a577c0d7da0c52eb71ed7b32b742d4..1e5d1546e4406a8715fc77ac5a8586eab4b91431 100644 (file)
@@ -22,6 +22,7 @@ import com.intellij.openapi.ui.popup.PopupStep;
 import com.intellij.openapi.ui.popup.util.BaseListPopupStep;
 import com.intellij.openapi.util.IconLoader;
 import com.intellij.ui.awt.RelativePoint;
+import com.intellij.util.ArrayUtil;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
@@ -61,8 +62,8 @@ public abstract class FindUsagesInProjectStructureActionBase extends AnAction {
       return;
     }
     RelativePoint point = getPointToShowResults();
-    JBPopupFactory.getInstance().createListPopup(new BaseListPopupStep<String>(
-      ProjectBundle.message("dependencies.used.in.popup.title"), dependencies.toArray(new String[dependencies.size()])) {
+    JBPopupFactory.getInstance().createListPopup(new BaseListPopupStep<String>(ProjectBundle.message("dependencies.used.in.popup.title"),
+                                                                               ArrayUtil.toStringArray(dependencies)) {
 
       public PopupStep onChosen(final String nameToSelect, final boolean finalChoice) {
         navigateToObject(nameToSelect, selectedObject);
index 9d066fd434fd7508aecc7a5ca09e94d789a4d409..a357aa7a2f0e9261379575011f2e11f0ea96eaea 100644 (file)
@@ -10,6 +10,7 @@ import com.intellij.psi.search.FilenameIndex;
 import com.intellij.psi.search.GlobalSearchScope;
 import com.intellij.psi.search.PsiShortNamesCache;
 import com.intellij.psi.stubs.StubIndex;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.containers.HashSet;
 import gnu.trove.THashSet;
 import gnu.trove.TObjectHashingStrategy;
@@ -80,7 +81,7 @@ class PsiShortNamesCacheImpl implements PsiShortNamesCache {
   @NotNull
   public String[] getAllClassNames() {
     final Collection<String> names = JavaShortClassNameIndex.getInstance().getAllKeys();
-    return names.toArray(new String[names.size()]);
+    return ArrayUtil.toStringArray(names);
   }
 
   public void getAllClassNames(@NotNull HashSet<String> set) {
@@ -106,7 +107,7 @@ class PsiShortNamesCacheImpl implements PsiShortNamesCache {
   @NotNull
   public String[] getAllMethodNames() {
     final Collection<String> names = JavaMethodNameIndex.getInstance().getAllKeys();
-    return names.toArray(new String[names.size()]);
+    return ArrayUtil.toStringArray(names);
   }
 
   public void getAllMethodNames(@NotNull HashSet<String> set) {
@@ -126,7 +127,7 @@ class PsiShortNamesCacheImpl implements PsiShortNamesCache {
   @NotNull
   public String[] getAllFieldNames() {
     final Collection<String> names = JavaFieldNameIndex.getInstance().getAllKeys();
-    return names.toArray(new String[names.size()]);
+    return ArrayUtil.toStringArray(names);
   }
 
   public void getAllFieldNames(@NotNull HashSet<String> set) {
index 9550466d4ea8cd9fc9ce885561ec775f6253446a..be2ee964c2b9e3c5949ffc2e5f23b6c2330f26f2 100644 (file)
@@ -150,7 +150,7 @@ public class ClsStubBuilder {
         }
       }
 
-      String[] interfacesArray = convertedInterfaces.toArray(new String[convertedInterfaces.size()]);
+      String[] interfacesArray = ArrayUtil.toStringArray(convertedInterfaces);
       if (isInterface) {
         new PsiClassReferenceListStubImpl(JavaStubElementTypes.EXTENDS_LIST, myResult, interfacesArray, PsiReferenceList.Role.EXTENDS_LIST);
         new PsiClassReferenceListStubImpl(JavaStubElementTypes.IMPLEMENTS_LIST, myResult, ArrayUtil.EMPTY_STRING_ARRAY,
index 78a2121cc5f492bf614fd5c9d7d020ab59cc8a17..bd02745f57792d222e31c50b789e46d273ba53e9 100644 (file)
@@ -11,6 +11,7 @@ import com.intellij.psi.impl.java.stubs.impl.PsiClassReferenceListStubImpl;
 import com.intellij.psi.impl.java.stubs.impl.PsiTypeParameterListStubImpl;
 import com.intellij.psi.impl.java.stubs.impl.PsiTypeParameterStubImpl;
 import com.intellij.psi.stubs.StubElement;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.cls.ClsFormatException;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.Nullable;
@@ -59,7 +60,7 @@ public class SignatureParsing {
       }
     }
 
-    String[] sbounds = bounds.toArray(new String[bounds.size()]);
+    String[] sbounds = ArrayUtil.toStringArray(bounds);
     new PsiClassReferenceListStubImpl(JavaStubElementTypes.EXTENDS_BOUND_LIST, parameterStub, sbounds, PsiReferenceList.Role.EXTENDS_BOUNDS_LIST);
 
     return parameterStub;
index 0b26db833c94a1fef4164dfdc7ba527adb6ffcf8..7724b717bab579b3f0cb0afce4a15d14f3907697 100644 (file)
@@ -74,7 +74,7 @@ public class ImportHelper{
     for (String name : names) {
       if (name != null) namesList.add(name);
     }
-    names = namesList.toArray(new String[namesList.size()]);
+    names = ArrayUtil.toStringArray(namesList);
 
     TObjectIntHashMap<String> packageToCountMap = new TObjectIntHashMap<String>();
     TObjectIntHashMap<String> classToCountMap = new TObjectIntHashMap<String>();
@@ -542,7 +542,7 @@ public class ImportHelper{
 
     addUnresolvedImportNames(names, file, namesToImportStaticly);
 
-    return names.toArray(new String[names.size()]);
+    return ArrayUtil.toStringArray(names);
   }
 
   private static void collectNamesToImport(final Set<String> names, final PsiJavaFile file, final Set<String> namesToImportStaticly) {
index cdc6384eb7cfd2cd46e6d37fe738fa83cfa55977..c341a1e03acfae970579bfa0a8c843e1931a3205 100644 (file)
@@ -226,7 +226,7 @@ public class JavaCodeStyleManagerImpl extends JavaCodeStyleManager {
 
     addNamesFromStatistics(names, kind, _propertyName, type);
 
-    String[] namesArray = names.toArray(new String[names.size()]);
+    String[] namesArray = ArrayUtil.toStringArray(names);
     sortVariableNameSuggestions(namesArray, kind, _propertyName, type);
 
     final PsiType _type = type;
@@ -294,7 +294,7 @@ public class JavaCodeStyleManagerImpl extends JavaCodeStyleManager {
       suggestions.addAll(Arrays.asList(getSuggestionsByName(typeName, variableKind, type instanceof PsiArrayType)));
     }
 
-    return suggestions.toArray(new String[suggestions.size()]);
+    return ArrayUtil.toStringArray(suggestions);
   }
 
   private void suggestNamesFromGenericParameters(final PsiType type,
@@ -531,7 +531,7 @@ public class JavaCodeStyleManagerImpl extends JavaCodeStyleManager {
     if (names3 != null) {
       names.addAll(Arrays.asList(names3));
     }
-    String[] namesArray = names.toArray(new String[names.size()]);
+    String[] namesArray = ArrayUtil.toStringArray(names);
     String propertyName = names1.propertyName != null ? names1.propertyName : names2.propertyName;
     return new NamesByExprInfo(propertyName, namesArray);
   }
@@ -643,7 +643,7 @@ public class JavaCodeStyleManagerImpl extends JavaCodeStyleManager {
     if (currentWord.length() > 0) {
       result.add(currentWord.toString());
     }
-    return result.toArray(new String[result.size()]);
+    return ArrayUtil.toStringArray(result);
   }
 
   private NamesByExprInfo suggestVariableNameByExpressionPlace(PsiExpression expr, final VariableKind variableKind) {
@@ -842,7 +842,7 @@ public class JavaCodeStyleManagerImpl extends JavaCodeStyleManager {
       }
     }
 
-    return list.toArray(new String[list.size()]);
+    return ArrayUtil.toStringArray(list);
   }
 
   public String suggestUniqueVariableName(String baseName, PsiElement place, boolean lookForward) {
@@ -894,7 +894,7 @@ public class JavaCodeStyleManagerImpl extends JavaCodeStyleManager {
       uniqueNames.add(suggestUniqueVariableName(name, place, lookForward));
     }
 
-    return new SuggestedNameInfo(uniqueNames.toArray(new String[uniqueNames.size()])) {
+    return new SuggestedNameInfo(ArrayUtil.toStringArray(uniqueNames)) {
       public void nameChoosen(String name) {
         baseNameInfo.nameChoosen(name);
       }
index f68f4cf87ce269e3a6fdd4a23825e6dc42f5e982..ec26e4f091d9aaf25301f7dd1631bdf7da2f801e 100644 (file)
@@ -54,7 +54,7 @@ class SeeDocTagInfo implements JavadocTagInfo {
             result.add(method);
           }
         }
-        return result.toArray(new Object[result.size()]);
+        return ArrayUtil.toObjectArray(result);
       } else if (token.getTokenType() == JavaDocTokenType.DOC_TAG_VALUE_TOKEN && place.getParent() instanceof PsiDocMethodOrFieldRef) {
         return getPossibleMethodsAndFields(context, place, prefix);
       }
@@ -78,7 +78,7 @@ class SeeDocTagInfo implements JavadocTagInfo {
       result.add(variable);
     }
 
-    return result.toArray(new Object[result.size()]);
+    return ArrayUtil.toObjectArray(result);
   }
 
   private PsiElement getTargetContext(PsiElement context, PsiElement place) {
index 32b240206ac27941566eeffd2b6b7d5ad476b740..4a3cab504cdc48ce2ff658f78416e825ffeb8498 100644 (file)
@@ -193,7 +193,7 @@ methods:
             result.add(method);
           }
 
-          return result.toArray(new Object[result.size()]);
+          return ArrayUtil.toObjectArray(result);
         } else {
           return ArrayUtil.EMPTY_OBJECT_ARRAY;
         }
index abf61d6598a5612d641313ec366f48c639456dee..3394a190c089441cb2b9a4a46761bb2eab3797c1 100644 (file)
@@ -4,6 +4,7 @@ import com.intellij.openapi.editor.Document;
 import com.intellij.openapi.fileTypes.StdFileTypes;
 import com.intellij.openapi.ui.ComponentWithBrowseButton;
 import com.intellij.psi.*;
+import com.intellij.util.ArrayUtil;
 import org.jetbrains.annotations.NotNull;
 
 import java.awt.event.ActionListener;
@@ -20,7 +21,7 @@ public class ReferenceEditorComboWithBrowseButton extends ComponentWithBrowseBut
     super(new EditorComboBox(createDocument(text, manager, toAcceptClasses), manager.getProject(), StdFileTypes.JAVA), browseActionListener);
     final List<String> recentEntries = RecentsManager.getInstance(manager.getProject()).getRecentEntries(recentsKey);
     if (recentEntries != null) {
-      setHistory(recentEntries.toArray(new String[recentEntries.size()]));
+      setHistory(ArrayUtil.toStringArray(recentEntries));
     }
     if (text != null && text.length() > 0) {
       prependItem(text);
index b8c306aad94134265de6362e52de2acd102a0386..c66e81e04c11664d4414c672087a7844cfb24c72 100644 (file)
@@ -73,7 +73,7 @@ final class ComponentTreeStructure extends AbstractTreeStructure{
           result.add(suppression);
         }
       }
-      return result.toArray(new Object[result.size()]);
+      return ArrayUtil.toObjectArray(result);
     }
     else if (element instanceof RadButtonGroup[]) {
       return (RadButtonGroup[]) element;
index f71ce4d3be19141dfa37e40f082c7b1e92c8399d..b3b469805afac67a0004a320ec60d7aca0ca7aaf 100644 (file)
@@ -121,7 +121,7 @@ public class JDOMUtil {
     ArrayList<Object> result = new ArrayList<Object>();
     result.addAll(e.getContent());
     result.addAll(e.getAttributes());
-    return result.toArray(new Object[result.size()]);
+    return ArrayUtil.toObjectArray(result);
   }
 
   @SuppressWarnings({"unchecked"})
index 549bb45e5a0dbadbbfd9eaa4cc784366552779f3..431044d37d977f43b44ec7aabba5abf2ab89db2f 100644 (file)
@@ -16,6 +16,7 @@
 package com.intellij.psi.codeStyle;
 
 import com.intellij.openapi.util.text.StringUtil;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.Function;
 import com.intellij.util.containers.ContainerUtil;
 import org.jetbrains.annotations.NonNls;
@@ -77,7 +78,7 @@ public class NameUtil {
       String word = name.substring(wordStart, index);
       array.add(word);
     }
-    return array.toArray(new String[array.size()]);
+    return ArrayUtil.toStringArray(array);
   }
 
   private static boolean containsOnlyUppercaseLetters(String s) {
@@ -221,7 +222,7 @@ public class NameUtil {
     for (String word : underlineDelimited) {
       addAllWords(word, result);
     }
-    return result.toArray(new String[result.size()]);
+    return ArrayUtil.toStringArray(result);
   }
 
   private enum WordState { NO_WORD, PREV_UC, WORD }
index c811e286f7c82362742dc39c302dbe27649b4bc2..f8b16a3e770bd7d9a191dd931fed312dfeea1ed1 100644 (file)
@@ -92,17 +92,22 @@ public class ArrayUtil {
     return result;
   }
 
-  public static<T> T[] toObjectArray(Collection<T> collection, Class<T> aClass) {
+  @NotNull
+  public static<T> T[] toObjectArray(@NotNull Collection<T> collection, @NotNull Class<T> aClass) {
     T[] array = (T[]) Array.newInstance(aClass, collection.size());
     return collection.toArray(array);
   }
 
-  public static Object[] toObjectArray(Collection collection) {
-    return toObjectArray(collection, Object.class);
+  @NotNull
+  public static Object[] toObjectArray(@NotNull Collection<?> collection) {
+    if (collection.isEmpty()) return EMPTY_OBJECT_ARRAY;
+    return collection.toArray(new Object[collection.size()]);
   }
 
-  public static String[] toStringArray(Collection<String> collection) {
-    return toObjectArray(collection, String.class);
+  @NotNull
+  public static String[] toStringArray(@NotNull Collection<String> collection) {
+    if (collection.isEmpty()) return EMPTY_STRING_ARRAY;
+    return collection.toArray(new String[collection.size()]);
   }
 
   public static <T> T[] mergeArrays(T[] a1, T[] a2, Class<T> aClass) {
index 52bbe23dd452c6a6ccad7823ee65056426d43007..f91aedd0a5542992f6d185f40b85be1fef260f7c 100644 (file)
@@ -19,6 +19,7 @@ import com.intellij.openapi.Disposable;
 import com.intellij.openapi.diagnostic.Logger;
 import com.intellij.openapi.util.Disposer;
 import com.intellij.openapi.util.SystemInfo;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.ReflectionUtil;
 import com.intellij.util.ui.treetable.TreeTableCellRenderer;
 import org.jetbrains.annotations.NonNls;
@@ -505,7 +506,7 @@ public class UIUtil {
         // JRE has problems working with the font. Just skip.
       }
     }
-    return result.toArray(new String[result.size()]);
+    return ArrayUtil.toStringArray(result);
   }
 
   public static String[] getStandardFontSizes() {
@@ -523,7 +524,7 @@ public class UIUtil {
   }
 
   public static String displayPropertiesToCSS(Font font, Color fg) {
-    @NonNls StringBuffer rule = new StringBuffer("body {");
+    @NonNls StringBuilder rule = new StringBuilder("body {");
     if (font != null) {
       rule.append(" font-family: ");
       rule.append(font.getFamily());
index fc1e83fdf068580e5b743098e69fc8a5f1557f6b..2f53171204fe73ccf65b4d36bc96115a8c30da4a 100644 (file)
@@ -20,6 +20,7 @@ import com.intellij.openapi.diagnostic.Logger;
 import com.intellij.openapi.util.JDOMUtil;
 import com.intellij.util.containers.MultiMap;
 import com.intellij.util.xmlb.annotations.*;
+import com.intellij.util.ArrayUtil;
 import org.jdom.Element;
 import org.jetbrains.annotations.NonNls;
 
@@ -159,7 +160,7 @@ class BeanBinding implements Binding {
     for (Object o1 : data.keySet()) {
       Binding binding = (Binding)o1;
       Collection<Object> nn = data.get(binding);
-      binding.deserialize(result, nn.toArray(new Object[nn.size()]));
+      binding.deserialize(result, ArrayUtil.toObjectArray(nn));
     }
 
     return result;
index d67ebeaacde2f924995cfafd7610fcb09c87ad10..173ee4a3064300e2c764b014aea0bfbef209ee44 100644 (file)
@@ -19,6 +19,7 @@ package com.intellij.util.xmlb;
 import com.intellij.openapi.util.JDOMUtil;
 import static com.intellij.util.xmlb.Constants.*;
 import com.intellij.util.xmlb.annotations.MapAnnotation;
+import com.intellij.util.ArrayUtil;
 import org.jdom.Attribute;
 import org.jdom.Content;
 import org.jdom.Element;
@@ -71,7 +72,7 @@ class MapBinding implements Binding {
     }
 
     final Set keySet = map.keySet();
-    final Object[] keys = keySet.toArray(new Object[keySet.size()]);
+    final Object[] keys = ArrayUtil.toObjectArray(keySet);
     Arrays.sort(keys, KEY_COMPARATOR);
     for (Object k : keys) {
       Object v = map.get(k);
index f4590770447f93e8cf389c3a27bf1b9cbd61773f..4c434603b5090ac75b70af022592b053d864fb12 100644 (file)
@@ -18,6 +18,7 @@ package com.intellij.util.xmlb;
 
 import com.intellij.openapi.util.JDOMUtil;
 import com.intellij.util.xmlb.annotations.Tag;
+import com.intellij.util.ArrayUtil;
 import org.jdom.Element;
 import org.jdom.Text;
 
@@ -66,7 +67,7 @@ class TagBinding implements Binding {
         childrenList.addAll(Arrays.asList(JDOMUtil.getContent((Element)node)));
       }
 
-      children = childrenList.toArray(new Object[childrenList.size()]);
+      children = ArrayUtil.toObjectArray(childrenList);
     }
 
     if (children.length == 0) {
index 394a357f14813dfad9dd25829d5981242ee46113..8fa1a1e97c40b15b3310ef7485de788da6d15b12 100644 (file)
@@ -41,6 +41,7 @@ import com.intellij.ui.DocumentAdapter;
 import com.intellij.ui.SimpleTextAttributes;
 import com.intellij.util.Alarm;
 import com.intellij.util.Consumer;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.ui.UIUtil;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.Nullable;
@@ -163,7 +164,7 @@ public class ApplyPatchDialog extends DialogWrapper {
     Object[] selection = myPatchContentsList.getSelectedValues();
     if (selection.length == 0) {
       if (myPatches == null) return;
-      selection = myPatches.toArray(new Object[myPatches.size()]);
+      selection = ArrayUtil.toObjectArray(myPatches);
     }
     for(Object o: selection) {
       final TextFilePatch patch = (TextFilePatch) o;
index 19195b36871421803ad03d386e6beb61e79597de..327c719ff02fcfc33f11a6622c3a800b627618b4 100644 (file)
@@ -6,6 +6,7 @@ import com.intellij.ide.dnd.DnDNativeTarget;
 import com.intellij.openapi.Disposable;
 import com.intellij.openapi.actionSystem.ActionManager;
 import com.intellij.openapi.actionSystem.CustomShortcutSet;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.ui.tree.TreeUtil;
 import com.intellij.xdebugger.XDebugSession;
 import com.intellij.xdebugger.XDebuggerBundle;
@@ -149,7 +150,7 @@ public class XWatchesView extends XDebugViewBase implements DnDNativeTarget {
   }
 
   public String[] getWatchExpressions() {
-    return myWatchExpressions.toArray(new String[myWatchExpressions.size()]);
+    return ArrayUtil.toStringArray(myWatchExpressions);
   }
 
   public void removeWatchExpression(final int index) {
index e8d8fb559415c0a0de0d71a6ac7ebed27c162eb4..c506a4cec0cb0c15d6d030f08890676f974e6709 100644 (file)
@@ -42,6 +42,7 @@ import com.intellij.openapi.util.Comparing;
 import com.intellij.openapi.util.text.StringUtil;
 import com.intellij.psi.PsiFile;
 import com.intellij.psi.codeStyle.CodeStyleSettings;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.Icons;
 import org.jetbrains.annotations.NotNull;
 
@@ -118,7 +119,7 @@ public class CodeStyleHtmlPanel extends CodeStyleAbstractPanel {
       }
 
       private String createStringOn(final ArrayList<String> data) {
-        return StringUtil.join(data.toArray(new String[data.size()]), ",");
+        return StringUtil.join(ArrayUtil.toStringArray(data), ",");
       }
 
       private ArrayList<String> createCollectionOn(final String data) {
index 4609e4b2cbda9fa8e71e554b7bcb35a07e4ecd65..12ff3897d8d79f84067b6da6322042122817159b 100644 (file)
@@ -23,6 +23,7 @@ import com.intellij.codeInsight.lookup.LookupElement;
 import com.intellij.codeInsight.lookup.MutableLookupElement;
 import com.intellij.codeInsight.TailType;
 import com.intellij.xml.util.XmlUtil;
+import com.intellij.util.ArrayUtil;
 
 import java.util.*;
 
@@ -108,7 +109,7 @@ public class DtdCompletionData extends CompletionData {
       };
 
       XmlUtil.processXmlElements((XmlFile)context.getContainingFile().getOriginalFile(), processor, true);
-      return results.toArray(new Object[results.size()]);
+      return ArrayUtil.toObjectArray(results);
     }
   }
   static class MyInsertHandler extends BasicInsertHandler {
index 11620c25b2ca4dca4ddfc5080d701944eb7c5e69..2c1ce4d1f2dafc275962dfc4f258b4b22b3559c5 100644 (file)
@@ -296,7 +296,7 @@ public class XmlCompletionData extends CompletionData {
           if (element != null) XmlUtil.processXmlElements(element, processor, true);
         }
 
-        return results.toArray(new Object[results.size()]);
+        return ArrayUtil.toObjectArray(results);
       }
 
       return ArrayUtil.EMPTY_OBJECT_ARRAY;
index f61f1fed3d4d16f12726f76ab8d38adbf66a32c3..2f115fe3810a1f2b6ed36f2ab60650dba60d4ed4 100644 (file)
@@ -1,5 +1,6 @@
 package com.intellij.codeInsight.daemon.impl.analysis;
 
+import com.intellij.application.options.XmlSettings;
 import com.intellij.codeInsight.CodeInsightUtilBase;
 import com.intellij.codeInsight.completion.ExtendedTagInsertHandler;
 import com.intellij.codeInsight.daemon.XmlErrorMessages;
@@ -30,13 +31,13 @@ import com.intellij.psi.xml.XmlDocument;
 import com.intellij.psi.xml.XmlFile;
 import com.intellij.psi.xml.XmlTag;
 import com.intellij.psi.xml.XmlToken;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.IncorrectOperationException;
 import com.intellij.xml.XmlElementDescriptor;
 import com.intellij.xml.XmlExtension;
 import com.intellij.xml.impl.schema.AnyXmlElementDescriptor;
 import com.intellij.xml.impl.schema.XmlNSDescriptorImpl;
 import com.intellij.xml.util.XmlUtil;
-import com.intellij.application.options.XmlSettings;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
@@ -111,7 +112,7 @@ public class CreateNSDeclarationIntentionFix implements HintAction, LocalQuickFi
     if (!myElement.isValid() || !CodeInsightUtilBase.prepareFileForWrite(file)) return;
 
     final Set<String> set = XmlExtension.getExtension((XmlFile)file).guessUnboundNamespaces(myElement, (XmlFile)file);
-    final String[] namespaces = set.toArray(new String[set.size()]);
+    final String[] namespaces = ArrayUtil.toStringArray(set);
     Arrays.sort(namespaces);
 
     runActionOverSeveralAttributeValuesAfterLettingUserSelectTheNeededOne(
index da1b07965e4242d423b0ea83b04207bbbf53997f..22eb814759de69b0bd0e492e945c480dc021516c 100644 (file)
@@ -1,8 +1,8 @@
 package com.intellij.codeInsight.daemon.impl.quickfix;
 
+import com.intellij.codeInsight.CodeInsightUtilBase;
 import com.intellij.codeInsight.daemon.XmlErrorMessages;
 import com.intellij.codeInsight.daemon.impl.analysis.CreateNSDeclarationIntentionFix;
-import com.intellij.codeInsight.CodeInsightUtilBase;
 import com.intellij.openapi.editor.Editor;
 import com.intellij.openapi.util.TextRange;
 import com.intellij.psi.PsiFile;
@@ -11,6 +11,7 @@ import com.intellij.psi.codeStyle.CodeStyleManager;
 import com.intellij.psi.util.PsiTreeUtil;
 import com.intellij.psi.xml.XmlAttribute;
 import com.intellij.psi.xml.XmlTag;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.IncorrectOperationException;
 import com.intellij.xml.util.XmlUtil;
 import org.jetbrains.annotations.NonNls;
@@ -43,11 +44,8 @@ public class AddXsiSchemaLocationForExtResourceAction extends BaseExtResourceAct
     }, true);
 
     CreateNSDeclarationIntentionFix.runActionOverSeveralAttributeValuesAfterLettingUserSelectTheNeededOne(
-      schemaLocations.toArray(new String[schemaLocations.size()]),
-      file.getProject(),
-      new CreateNSDeclarationIntentionFix.StringToAttributeProcessor() {
-        public void doSomethingWithGivenStringToProduceXmlAttributeNowPlease(@NotNull final String attrName)
-        throws IncorrectOperationException {
+      ArrayUtil.toStringArray(schemaLocations), file.getProject(), new CreateNSDeclarationIntentionFix.StringToAttributeProcessor() {
+        public void doSomethingWithGivenStringToProduceXmlAttributeNowPlease(@NotNull final String attrName) throws IncorrectOperationException {
           doIt(file, editor, uri, tag, attrName);
         }
       }, XmlErrorMessages.message("select.namespace.location.title"), this, editor);
index ecc1a9af456e92d61872c69ef791858aa3d16e4a..a938bcefe555f5716bd4334a3fe0315439e2cbb9 100644 (file)
@@ -13,7 +13,6 @@ import com.intellij.lang.xml.XMLLanguage;
 import com.intellij.openapi.editor.Editor;
 import com.intellij.openapi.extensions.Extensions;
 import com.intellij.openapi.fileTypes.FileType;
-import com.intellij.openapi.fileTypes.StdFileTypes;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.util.TextRange;
 import com.intellij.psi.PsiElement;
@@ -42,7 +41,7 @@ public class TemplateSurrounder implements Surrounder {
   public boolean isApplicableForFileType(FileType fileType) {
     final TemplateContext templateContext = myTemplate.getTemplateContext();
 
-    if (fileType instanceof XmlLikeFileType || fileType == StdFileTypes.JSP || fileType == StdFileTypes.JSPX) {
+    if (fileType instanceof XmlLikeFileType) {
       for(TemplateContextType contextType: Extensions.getExtensions(TemplateContextType.EP_NAME)) {
         if (contextType.isInContext(fileType)) {
           if (contextType.isEnabled(templateContext)) return true;
index 7c52903f705caf1609080f59f112be1fda9705e0..eda3735032b80adedf364ea5be09649fd41c42db 100644 (file)
@@ -20,6 +20,7 @@ import com.intellij.psi.PsiManager;
 import com.intellij.psi.util.CachedValue;
 import com.intellij.psi.util.CachedValueProvider;
 import com.intellij.psi.xml.XmlFile;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.Consumer;
 import com.intellij.util.containers.ConcurrentMultiMap;
 import com.intellij.util.containers.HashMap;
@@ -305,7 +306,7 @@ public class ExternalResourceManagerImpl extends ExternalResourceManagerEx imple
       addResourcesFromMap(fileType, result,version, myStdResources);
     }
 
-    return result.toArray(new String[result.size()]);
+    return ArrayUtil.toStringArray(result);
   }
 
   private static void addResourcesFromMap(final FileType fileType, final List<String> result, String version, Map<String, Map<String, String>> resourcesMap) {
@@ -362,7 +363,7 @@ public class ExternalResourceManagerImpl extends ExternalResourceManagerEx imple
     for (Map<String, String> map : myResources.values()) {
       urls.addAll(map.keySet());
     }
-    return urls.toArray(new String[urls.size()]);
+    return ArrayUtil.toStringArray(urls);
   }
 
   public void clearAllResources() {
@@ -390,7 +391,7 @@ public class ExternalResourceManagerImpl extends ExternalResourceManagerEx imple
   }
 
   public String[] getIgnoredResources() {
-    return myIgnoredResources.toArray(new String[myIgnoredResources.size()]);
+    return ArrayUtil.toStringArray(myIgnoredResources);
   }
 
   public long getModificationCount() {
index 0a49a4b523fd0f16bf6a1be374f494a8b60339c2..7de9aac2bfe31639a507e7a337881e5652d6f267 100644 (file)
@@ -14,6 +14,7 @@ import com.intellij.psi.xml.XmlAttribute;
 import com.intellij.psi.xml.XmlComment;
 import com.intellij.psi.xml.XmlTag;
 import com.intellij.xml.util.XmlDeclareIdInCommentAction;
+import com.intellij.util.ArrayUtil;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
@@ -161,7 +162,7 @@ public class IdRefReference extends BasicAttributeValueReference {
       }
     });
 
-    return result.toArray(new Object[result.size()]);
+    return ArrayUtil.toObjectArray(result);
   }
 
   public boolean isSoft() {
index e92cb8f5cbce4a0a12ea5ccb8ea84e07bb5c47f0..71aad45023ec53211483970032404b532215a1f0 100644 (file)
@@ -482,7 +482,7 @@ public class SchemaReferencesProvider extends PsiReferenceProvider {
         );
       }
 
-      return processor.myElements.toArray(new String[processor.myElements.size()]);
+      return ArrayUtil.toStringArray(processor.myElements);
     }
 
     private static void processNamespace(final String namespace,
index 34ceee06108274390147bd0de137146ab0dcc224..1402ec29f296cc86076ba2a877a8b950c0183351 100644 (file)
@@ -186,7 +186,7 @@ public class URLReference implements PsiReference, QuickFixProvider, EmptyResolv
     final XmlSchemaProvider provider = XmlSchemaProvider.getAvailableProvider(file);
     if (provider != null) {
       final Set<String> strings = provider.getAvailableNamespaces(file, null);
-      return strings.toArray(new Object[strings.size()]);
+      return ArrayUtil.toObjectArray(strings);
     }
     String[] resourceUrls = ExternalResourceManager.getInstance().getResourceUrls(null, true);
     final XmlDocument document = file.getDocument();
@@ -200,7 +200,7 @@ public class URLReference implements PsiReference, QuickFixProvider, EmptyResolv
         return true;
       }
     });
-    resourceUrls = ArrayUtil.mergeArrays(resourceUrls, additionalNs.toArray(new String[additionalNs.size()]), String.class);
+    resourceUrls = ArrayUtil.mergeArrays(resourceUrls, ArrayUtil.toStringArray(additionalNs), String.class);
     return resourceUrls;
   }
 
index f80cdcbbb913f104500d3456e84290985dd3f98d..a8223447e55b8b6b323937c0496cca6259d1e2c6 100644 (file)
@@ -206,7 +206,7 @@ public class TagNameReference implements PsiReference {
         return descriptor instanceof AnyXmlElementDescriptor ? null : descriptor.getName(element);
       }
     });
-    return l.toArray(new String[l.size()]);
+    return ArrayUtil.toStringArray(l);
   }
 
   private static void processVariantsInNamespace(final String namespace,
index ec59268d503e89d328b3217468b6469d75a9ab28..558565446fb0f97165872f976b3775a66a06bd60 100644 (file)
@@ -17,14 +17,13 @@ import com.intellij.psi.search.PsiElementProcessor;
 import com.intellij.psi.tree.IElementType;
 import com.intellij.psi.xml.XmlChildRole;
 import com.intellij.psi.xml.XmlDocument;
-import com.intellij.psi.xml.XmlElementType;
 import com.intellij.psi.xml.XmlFile;
 import org.jetbrains.annotations.NotNull;
 
 /**
  * @author Mike
  */
-public class XmlFileImpl extends PsiFileImpl implements XmlFile, XmlElementType {
+public class XmlFileImpl extends PsiFileImpl implements XmlFile {
 
   public XmlFileImpl(FileViewProvider viewProvider, IElementType elementType) {
     super(elementType, elementType, viewProvider);
index 3aadc4c4777bdc5fb463822cc2c90d3b382a9ead..9138ce293347bc143813f5f465735878edd8588e 100644 (file)
@@ -689,7 +689,7 @@ public class XmlTagImpl extends XmlElementImpl implements XmlTag {
         known.addAll(Arrays.asList(rootTag.knownNamespaces()));
       }
     }
-    return known.toArray(new String[known.size()]);
+    return ArrayUtil.toStringArray(known);
   }
 
   @Nullable
index 2c3f48c5546b858a815a63d189f4cf97e90b2215..8ad83fe508d5328e08366c5493e499ea7a5e1be8 100644 (file)
@@ -6,8 +6,9 @@ import com.intellij.psi.meta.PsiWritableMetaData;
 import com.intellij.psi.xml.XmlAttributeDecl;
 import com.intellij.psi.xml.XmlAttributeValue;
 import com.intellij.psi.xml.XmlElement;
-import com.intellij.xml.impl.BasicXmlAttributeDescriptor;
+import com.intellij.util.ArrayUtil;
 import com.intellij.util.IncorrectOperationException;
+import com.intellij.xml.impl.BasicXmlAttributeDescriptor;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -91,7 +92,7 @@ public class XmlAttributeDescriptorImpl extends BasicXmlAttributeDescriptor impl
       result.add(value.getText());
     }
 
-    return result.toArray(new String[result.size()]);
+    return ArrayUtil.toStringArray(result);
   }
 
   public String getQualifiedName() {
index 013ba34344769a147f4e14281718b4636fc7b16e..8feab74a9a92ccb8137461a8354389bdc5ad7b40 100644 (file)
@@ -207,7 +207,7 @@ public class XmlUtil {
       if ("xmlns".equals(attribute.getName()) && attribute.getValue().equals(uri)) result.add("");
     }
 
-    return result.toArray(new String[result.size()]);
+    return ArrayUtil.toStringArray(result);
   }
 
   @Nullable