Example usage for org.apache.commons.io.filefilter OrFileFilter OrFileFilter

List of usage examples for org.apache.commons.io.filefilter OrFileFilter OrFileFilter

Introduction

In this page you can find the example usage for org.apache.commons.io.filefilter OrFileFilter OrFileFilter.

Prototype

public OrFileFilter() 

Source Link

Document

Constructs a new instance of OrFileFilter.

Usage

From source file:com.anrisoftware.mongoose.buildins.listfilesbuildin.ListFiles.java

ListFiles() {
    this.includeSubDirectories = false;
    this.depth = 0;
    this.directories = new ArrayList<File>();
    this.fileFilter = new OrFileFilter();
}

From source file:net.sf.jvifm.control.ListFileCommand.java

@SuppressWarnings("unchecked")
public void execute() throws Exception {

    if (pwd == null)
        return;/*ww  w  .  j  a  v a  2  s .  c o m*/
    if (pwd.length() == 2 && pwd.endsWith(":")) {
        pwd = pwd + File.separator;
    }
    File currentDir = new File(pwd);

    String[] filters = cmdLine.getArgs();
    OrFileFilter orFileFilter = new OrFileFilter();

    if (filters == null || filters.length < 1) {
        orFileFilter.addFileFilter(new WildcardFileFilter("*"));
    } else {
        for (int i = 0; i < filters.length; i++) {
            orFileFilter.addFileFilter(new WildcardFileFilter(filters[i]));
        }
    }

    if (cmdLine.hasOption("R")) {
        // FileFinder finder = new FileFinder();
        // subFiles = finder.find(currentDir, orFileFilter);
    } else {
        subFiles = currentDir.listFiles((FilenameFilter) orFileFilter);
    }

    if (cmdLine.hasOption("r")) {
        if (cmdLine.hasOption("t")) {
            Arrays.sort(subFiles, LastModifiedFileComparator.LASTMODIFIED_REVERSE);
        } else if (cmdLine.hasOption("S")) {
            Arrays.sort(subFiles, SizeFileComparator.SIZE_REVERSE);
        } else if (cmdLine.hasOption("X")) {
            Arrays.sort(subFiles, ExtensionFileComparator.EXTENSION_REVERSE);
        } else {
            Arrays.sort(subFiles, FileComprator.getFileComprator("name", true));
        }
    } else {
        if (cmdLine.hasOption("t")) {
            Arrays.sort(subFiles, LastModifiedFileComparator.LASTMODIFIED_COMPARATOR);
        } else if (cmdLine.hasOption("S")) {
            Arrays.sort(subFiles, SizeFileComparator.SIZE_COMPARATOR);
        } else if (cmdLine.hasOption("X")) {
            Arrays.sort(subFiles, ExtensionFileComparator.EXTENSION_COMPARATOR);
        } else {
            Arrays.sort(subFiles, FileComprator.getFileComprator("name", false));
        }
    }

    listSubFileInPanel(subFiles);

}

From source file:jeplus.RadianceWinTools.java

/**
 * Clean up working directory after simulation, based on the options to keep
 * working files and the list of files to delete.
 * @param workdir The working directory to be cleared
 * @param filesToDelete A [,;: ] separated list of file names to be deleted from the directory
 * @return Clean up successful or not. False is return if error occurs when deleting any file 
 *//*from w  ww  .  j a  va2 s . co  m*/
public static boolean cleanupWorkDir(String workdir, String filesToDelete) {
    boolean success = true;

    // Create the directory
    File dir = new File(workdir);
    if (dir.exists()) {
        if (filesToDelete != null) {
            String[] patterns = filesToDelete.split("\\s*[,;: ]\\s*");
            OrFileFilter filter = new OrFileFilter();
            for (String pattern : patterns) {
                filter.addFileFilter(new WildcardFileFilter(pattern));
            }
            File[] files = dir.listFiles((FileFilter) filter);
            for (File file : files) {
                success &= file.delete();
            }
        }
    }
    return success;
}

From source file:com.anrisoftware.mongoose.buildins.listfilesbuildin.ListFiles.java

/**
 * Sets the file filter for the files.// www .j av  a  2 s .  co  m
 * 
 * @param filter
 *            the {@link IOFileFilter}.
 */
public void setFilter(IOFileFilter filter) {
    this.fileFilter = new OrFileFilter();
    fileFilter.addFileFilter(filter);
}

From source file:com.jaxio.celerio.util.IOUtil.java

/**
 * Recurse in the folder to get the list all files and folders
 * <ul>/* w w w .  j a va 2 s. c o m*/
 * <li>do not recurse in svn folder</li>
 * <li>do not recurse in cvs folder</li>
 * <li>do not match .bak files</li>
 * <li>do not match .old files</li>
 * </ul>
 *
 * @param folder       the folder to parse
 * @param ioFileFilter additionnal IOFilter
 */
@SuppressWarnings("unchecked")
public Collection<String> listFiles(File folder, IOFileFilter ioFileFilter) {
    if (ioFileFilter == null) {
        ioFileFilter = FileFilterUtils.fileFileFilter();
    }
    OrFileFilter oldFilesFilter = new OrFileFilter();
    for (String exclude : DEFAULT_EXCLUDES_SUFFIXES) {
        oldFilesFilter.addFileFilter(FileFilterUtils.suffixFileFilter(exclude));
    }
    IOFileFilter notOldFilesFilter = FileFilterUtils.notFileFilter(oldFilesFilter);

    Collection<File> files = FileUtils.listFiles(folder,
            FileFilterUtils.andFileFilter(ioFileFilter, notOldFilesFilter),
            FileFilterUtils.makeSVNAware(FileFilterUtils.makeCVSAware(null)));
    Collection<String> ret = newArrayList();
    for (File file : files) {
        ret.add(file.getAbsolutePath());
    }
    return ret;
}

From source file:jeplus.INSELWinTools.java

public static boolean cleanupWorkDir(String workdir, boolean keepeplus, boolean keepjeplus, boolean keepdir,
        String filesToDelete, String printers) {
    boolean success = true;

    // Create the directory
    File dir = new File(workdir);
    if (dir.exists()) {
        if (!keepdir) {
            File[] files = dir.listFiles();
            for (int i = 0; i < files.length; i++)
                files[i].delete();/*from  w  w  w  .j  ava  2 s.c  om*/
            success = dir.delete();
        } else {
            if (filesToDelete != null) {
                String[] patterns = filesToDelete.split("\\s*[,;: ]\\s*");
                OrFileFilter filter = new OrFileFilter();
                for (int i = 0; i < patterns.length; i++) {
                    filter.addFileFilter(new WildcardFileFilter(patterns[i]));
                }
                File[] files = dir.listFiles((FileFilter) filter);
                for (int i = 0; i < files.length; i++)
                    success &= files[i].delete();
            }
        }
    }
    return success;
}

From source file:jeplus.EPlusWinTools.java

/**
 * Clean up working directory after simulation, based on the options to keep
 * working files and the list of files to delete.
 * @param workdir The working directory to be cleared
 * @param keepeplus Flag for keeping all EnergyPlus output files
 * @param keepjeplus Flag for keeping all intermediate jEPlus files
 * @param keepdir Flag for keeping the working directory
 * @param filesToDelete A [,;: ] separated list of file names to be deleted from the directory
 * @return Clean up successful or not. False is return if error occurs when deleting any file 
 *//*from   w w  w.j a v a 2s  . c om*/
public static boolean cleanupWorkDir(String workdir, boolean keepeplus, boolean keepjeplus, boolean keepdir,
        String filesToDelete) {
    boolean success = true;

    // Create the directory
    File dir = new File(workdir);
    if (dir.exists()) {
        if (!keepdir) {
            File[] files = dir.listFiles();
            for (File file : files) {
                file.delete();
            }
            success = dir.delete();
        } else {
            if (!keepjeplus) {
                File[] files = dir.listFiles(EPlusConfig.getIOFileFilter(EPlusConfig.JEPLUS_INTERM));
                for (File file : files) {
                    success &= file.delete();
                }
            }
            if (!keepeplus) {
                File[] files = dir.listFiles(EPlusConfig.getIOFileFilter(EPlusConfig.EPOUTPUT));
                for (File file : files) {
                    success &= file.delete();
                }
            }
        }
        if (filesToDelete != null) {
            String[] patterns = filesToDelete.split("\\s*[,;: ]\\s*");
            OrFileFilter filter = new OrFileFilter();
            for (String pattern : patterns) {
                filter.addFileFilter(new WildcardFileFilter(pattern));
            }
            File[] files = dir.listFiles((FileFilter) filter);
            for (File file : files) {
                success &= file.delete();
            }
        }
    }
    return success;
}

From source file:jeplus.TRNSYSWinTools.java

public static boolean cleanupWorkDir(String workdir, boolean keepeplus, boolean keepjeplus, boolean keepdir,
        String filesToDelete, String printers) {
    boolean success = true;

    // Create the directory
    File dir = new File(workdir);
    ArrayList<String> jeplus = TRNSYSTask.getjeplusfiles();
    TRNSYSTask.setjeplusfile(TRNSYSConfig.getTRNSYSDefDCK());
    if (dir.exists()) {
        if (!keepdir) {
            File[] files = dir.listFiles();
            for (File file : files) {
                file.delete();/*from   ww  w.j a va  2  s .  c  o  m*/
            }
            success = dir.delete();
        } else {
            if (!keepjeplus) {
                File[] files = dir.listFiles();
                for (File file : files) {
                    if ((jeplus.contains(file.getName()))
                            && (!file.getName().contains(TRNSYSConfig.getTRNSYSDefLST()))) {
                        success &= file.delete();
                    }
                }
            }
            if (!keepeplus) {
                File[] files = dir.listFiles();
                for (File file : files) {
                    if ((!jeplus.contains(file.getName()))
                            && (!getPrintersFunc(printers).contains(file.getName().toLowerCase()))
                            && (!file.getName().contains(TRNSYSConfig.getTRNSYSDefLST()))) {
                        success &= file.delete();
                    }
                }
            }
            if (filesToDelete != null) {
                String[] patterns = filesToDelete.split("\\s*[,;: ]\\s*");
                OrFileFilter filter = new OrFileFilter();
                for (String pattern : patterns) {
                    filter.addFileFilter(new WildcardFileFilter(pattern));
                }
                File[] files = dir.listFiles((FileFilter) filter);
                for (File file : files) {
                    success &= file.delete();
                }
            }
        }
    }
    return success;
}

From source file:jeplus.EPlusWinTools.java

public static List<String> getInstalledTransitionVersions(String binfolder) {
    ArrayList<String> list = new ArrayList<>();
    if (binfolder != null) {
        File dir = new File(binfolder);
        if (dir.exists() && dir.isDirectory()) {
            String pattern = "V?-?-?-Energy+.idd";
            OrFileFilter filter = new OrFileFilter();
            filter.addFileFilter(new WildcardFileFilter(pattern));
            File[] files = dir.listFiles((FileFilter) filter);
            for (File file : files) {
                list.add(file.getName().substring(0, 6));
            }//from   w w w  .  j  a  va2s  . c  om
        }
    }
    return list;
}

From source file:jeplus.EPlusWinTools.java

public static void scanFolderForFiles(File folder, String filters, List<String> list) {
    if (list == null) {
        list = new ArrayList<>();
    }/*from   w ww. j ava2s  .c om*/
    if (folder.exists() && folder.isDirectory()) {
        // Scan files that satisfy the filters
        if (filters != null) {
            String[] patterns = filters.split("\\s*[,;: ]\\s*");
            OrFileFilter filter = new OrFileFilter();
            for (String pattern : patterns) {
                filter.addFileFilter(new WildcardFileFilter(pattern));
            }
            File[] files = folder.listFiles((FileFilter) filter);
            for (File file : files) {
                list.add(file.getAbsolutePath());
            }
        }
        // Scan sub-folders
        File[] listOfAllFiles = folder.listFiles();
        for (File file : listOfAllFiles) {
            if (file.isDirectory()) {
                scanFolderForFiles(file, filters, list);
            }
        }
    }
}