extracted common FileFilter implementation which accepts files with given extension
authornik <Nikolay.Chashnikov@jetbrains.com>
Thu, 25 Jun 2015 08:16:20 +0000 (11:16 +0300)
committernik <Nikolay.Chashnikov@jetbrains.com>
Thu, 25 Jun 2015 08:16:56 +0000 (11:16 +0300)
java/java-impl/src/com/intellij/refactoring/migration/MigrationMapSet.java
jps/model-impl/src/org/jetbrains/jps/model/java/impl/JavaSdkUtil.java
jps/model-serialization/src/org/jetbrains/jps/model/serialization/JpsLoaderBase.java
jps/model-serialization/src/org/jetbrains/jps/model/serialization/JpsProjectLoader.java
platform/lang-impl/src/com/intellij/conversion/impl/ConversionContextImpl.java
platform/util-rt/src/com/intellij/openapi/util/io/FileFilters.java
plugins/ant/src/com/intellij/lang/ant/config/impl/AllJarsUnderDirEntry.java
plugins/gradle/src/org/jetbrains/plugins/gradle/util/GradleUtil.java

index 984c923a3bb5570d8766c96d3efbe23860b73da8..da55fd30befaf588629194083d65f5fa521090a6 100644 (file)
@@ -20,17 +20,19 @@ import com.intellij.openapi.application.PathManager;
 import com.intellij.openapi.diagnostic.Logger;
 import com.intellij.openapi.util.InvalidDataException;
 import com.intellij.openapi.util.JDOMUtil;
+import com.intellij.openapi.util.io.FileFilters;
 import com.intellij.openapi.util.io.FileUtil;
-import com.intellij.openapi.util.text.StringUtil;
 import com.intellij.psi.codeStyle.CodeStyleSettingsManager;
 import com.intellij.util.text.UniqueNameGenerator;
 import org.jdom.Document;
 import org.jdom.Element;
 import org.jdom.JDOMException;
 import org.jetbrains.annotations.NonNls;
-import org.jetbrains.annotations.NotNull;
 
-import java.io.*;
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
 import java.net.URL;
 import java.util.ArrayList;
 import java.util.Iterator;
@@ -131,17 +133,11 @@ public class MigrationMapSet {
 
   private static File[] getMapFiles() {
     File dir = getMapDirectory();
-    if (dir == null){
+    if (dir == null) {
       return new File[0];
     }
-    File[] ret = dir.listFiles(new FileFilter() {
-      @Override
-      @SuppressWarnings({"HardCodedStringLiteral"})
-      public boolean accept(@NotNull File file){
-        return !file.isDirectory() && StringUtil.endsWithIgnoreCase(file.getName(), ".xml");
-      }
-    });
-    if (ret == null){
+    File[] ret = dir.listFiles(FileFilters.filesWithExtension("xml"));
+    if (ret == null) {
       LOG.error("cannot read directory: " + dir.getAbsolutePath());
       return new File[0];
     }
index a5a38dad44a17f6aff0a58f1a3def39bfa2b66b8..b3e4e6ed586f10c0e2c55fb9deb23d3022dd042d 100644 (file)
@@ -16,6 +16,7 @@
 package org.jetbrains.jps.model.java.impl;
 
 import com.intellij.openapi.util.SystemInfo;
+import com.intellij.openapi.util.io.FileFilters;
 import com.intellij.openapi.util.io.FileUtil;
 import com.intellij.util.containers.ContainerUtil;
 import org.jetbrains.annotations.NotNull;
@@ -62,12 +63,7 @@ public class JavaSdkUtil {
       jarDirs = new File[]{libEndorsedDir, libDir, libExtDir};
     }
 
-    FileFilter jarFileFilter = new FileFilter() {
-      @Override
-      public boolean accept(@NotNull File f) {
-        return !f.isDirectory() && f.getName().endsWith(".jar");
-      }
-    };
+    FileFilter jarFileFilter = FileFilters.filesWithExtension("jar");
     Set<String> pathFilter = ContainerUtil.newTroveSet(FileUtil.PATH_HASHING_STRATEGY);
     List<File> rootFiles = ContainerUtil.newArrayList();
     for (File jarDir : jarDirs) {
index 5bac18442d7dd44cc23e1a9aa0e4a7e5a0a956ba..9825cb4ed5168722a93e32c4239495ddf591b0e2 100644 (file)
@@ -18,7 +18,6 @@ package org.jetbrains.jps.model.serialization;
 import com.intellij.openapi.diagnostic.Logger;
 import com.intellij.openapi.util.JDOMUtil;
 import com.intellij.openapi.util.SystemInfo;
-import com.intellij.openapi.util.io.FileUtilRt;
 import org.jdom.Element;
 import org.jdom.JDOMException;
 import org.jetbrains.jps.TimingLog;
@@ -98,8 +97,4 @@ public abstract class JpsLoaderBase {
     }
     return JDOMUtil.loadDocument(file).getRootElement();
   }
-
-  protected static boolean isXmlFile(File file) {
-    return file.isFile() && FileUtilRt.extensionEquals(file.getName(), "xml");
-  }
 }
index 72c5c4d598e6bf7e0b69cdff3a93ed9ef07a4cdb..e9f6409d88c2425e6ae3211f1916d09a52588d43 100644 (file)
@@ -18,6 +18,7 @@ package org.jetbrains.jps.model.serialization;
 import com.intellij.openapi.diagnostic.Logger;
 import com.intellij.openapi.util.JDOMUtil;
 import com.intellij.openapi.util.Pair;
+import com.intellij.openapi.util.io.FileFilters;
 import com.intellij.openapi.util.io.FileUtil;
 import com.intellij.openapi.util.io.FileUtilRt;
 import com.intellij.util.ArrayUtil;
@@ -46,7 +47,6 @@ import org.jetbrains.jps.model.serialization.runConfigurations.JpsRunConfigurati
 import org.jetbrains.jps.service.SharedThreadPool;
 
 import java.io.File;
-import java.io.FileFilter;
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
@@ -158,12 +158,7 @@ public class JpsProjectLoader extends JpsLoaderBase {
 
   @NotNull
   private static File[] listXmlFiles(final File dir) {
-    File[] files = dir.listFiles(new FileFilter() {
-      @Override
-      public boolean accept(File file) {
-        return isXmlFile(file);
-      }
-    });
+    File[] files = dir.listFiles(FileFilters.filesWithExtension("xml"));
     return files != null ? files : ArrayUtil.EMPTY_FILE_ARRAY;
   }
 
index f78347298ce858291aa14ff7be3395103f391c6d..4b3c5ace39882b1113a72143772f343a2c42a174 100644 (file)
@@ -35,6 +35,7 @@ import com.intellij.openapi.roots.libraries.LibraryTablesRegistrar;
 import com.intellij.openapi.util.Condition;
 import com.intellij.openapi.util.JDOMUtil;
 import com.intellij.openapi.util.SystemInfo;
+import com.intellij.openapi.util.io.FileFilters;
 import com.intellij.openapi.util.io.FileUtil;
 import com.intellij.openapi.util.text.StringUtil;
 import com.intellij.openapi.vfs.VfsUtilCore;
@@ -48,7 +49,6 @@ import org.jetbrains.annotations.Nullable;
 import org.jetbrains.jps.model.serialization.JDomSerializationUtil;
 
 import java.io.File;
-import java.io.FileFilter;
 import java.io.IOException;
 import java.util.*;
 
@@ -351,12 +351,7 @@ public class ConversionContextImpl implements ConversionContext {
         myRunManagerSettings = new RunManagerSettingsImpl(myWorkspaceFile, myProjectFile, null, this);
       }
       else {
-        final File[] files = new File(mySettingsBaseDir, "runConfigurations").listFiles(new FileFilter() {
-          @Override
-          public boolean accept(File file) {
-            return !file.isDirectory() && file.getName().endsWith(".xml");
-          }
-        });
+        final File[] files = new File(mySettingsBaseDir, "runConfigurations").listFiles(FileFilters.filesWithExtension("xml"));
         myRunManagerSettings = new RunManagerSettingsImpl(myWorkspaceFile, null, files, this);
       }
     }
@@ -489,11 +484,6 @@ public class ConversionContextImpl implements ConversionContext {
   @NotNull
   private File[] getSettingsXmlFiles(@NotNull String dirName) {
     final File librariesDir = new File(mySettingsBaseDir, dirName);
-    return librariesDir.exists() ? librariesDir.listFiles(new FileFilter() {
-      @Override
-      public boolean accept(File file) {
-        return !file.isDirectory() && file.getName().endsWith(".xml");
-      }
-    }) : ArrayUtil.EMPTY_FILE_ARRAY;
+    return librariesDir.exists() ? librariesDir.listFiles(FileFilters.filesWithExtension("xml")) : ArrayUtil.EMPTY_FILE_ARRAY;
   }
 }
index d4e7b8b2486f8fdba5da8a8ecbb8b80780a55a8f..118d4c967448e213154433c9c7695766bb7ebba1 100644 (file)
@@ -35,4 +35,13 @@ public class FileFilters {
       }
     };
   }
+
+  public static FileFilter filesWithExtension(@NotNull final String extension) {
+    return new FileFilter() {
+      @Override
+      public boolean accept(File pathname) {
+        return FileUtilRt.extensionEquals(pathname.getPath(), extension) && pathname.isFile();
+      }
+    };
+  }
 }
index 54205337eee4ff5f4fb47a864e5f154e1198e171..74a5d7d342f0d2b2889d6222cb5afbcf45a9f419 100644 (file)
@@ -20,6 +20,7 @@ import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
 import com.intellij.openapi.roots.ui.CellAppearanceEx;
 import com.intellij.openapi.roots.ui.FileAppearanceService;
 import com.intellij.openapi.roots.ui.ModifiableCellAppearanceEx;
+import com.intellij.openapi.util.io.FileFilters;
 import com.intellij.openapi.vfs.LocalFileSystem;
 import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.openapi.vfs.VirtualFileManager;
@@ -30,11 +31,9 @@ import org.jetbrains.annotations.NonNls;
 
 import javax.swing.*;
 import java.io.File;
-import java.io.FileFilter;
 import java.util.List;
 
 public class AllJarsUnderDirEntry implements AntClasspathEntry {
-  @NonNls private static final String JAR_SUFFIX = ".jar";
 
   private static final Function<VirtualFile, AntClasspathEntry> CREATE_FROM_VIRTUAL_FILE = new Function<VirtualFile, AntClasspathEntry>() {
     public AntClasspathEntry fun(VirtualFile file) {
@@ -60,11 +59,7 @@ public class AllJarsUnderDirEntry implements AntClasspathEntry {
   }
 
   public void addFilesTo(final List<File> files) {
-    File[] children = myDir.listFiles(new FileFilter() {
-      public boolean accept(File pathName) {
-        return pathName.getName().endsWith(JAR_SUFFIX) && pathName.isFile();
-      }
-    });
+    File[] children = myDir.listFiles(FileFilters.filesWithExtension("jar"));
     if (children != null) ContainerUtil.addAll(files, children);
   }
 
index 4ec3f9dd7e067a9b48e51b9d6367e5591211ceeb..7675e3630590b423f8c686031ad5c929e18749ce 100644 (file)
@@ -22,6 +22,7 @@ import com.intellij.openapi.externalSystem.util.ExternalSystemConstants;
 import com.intellij.openapi.fileChooser.FileChooserDescriptor;
 import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
 import com.intellij.openapi.fileChooser.FileTypeDescriptor;
+import com.intellij.openapi.util.io.FileFilters;
 import com.intellij.openapi.util.io.FileUtil;
 import com.intellij.openapi.util.text.StringUtil;
 import com.intellij.util.containers.ContainerUtilRt;
@@ -204,12 +205,7 @@ public class GradleUtil {
       return null;
     }
 
-    File[] candidates = wrapperDir.listFiles(new FileFilter() {
-      @Override
-      public boolean accept(File candidate) {
-        return candidate.isFile() && candidate.getName().endsWith(".properties");
-      }
-    });
+    File[] candidates = wrapperDir.listFiles(FileFilters.filesWithExtension("properties"));
     if (candidates == null) {
       GradleLog.LOG.warn("No *.properties file is found at the gradle wrapper directory " + wrapperDir.getAbsolutePath());
       return null;