Example usage for org.apache.commons.io.filefilter FileFilterUtils andFileFilter

List of usage examples for org.apache.commons.io.filefilter FileFilterUtils andFileFilter

Introduction

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

Prototype

public static IOFileFilter andFileFilter(IOFileFilter filter1, IOFileFilter filter2) 

Source Link

Document

Returns a filter that ANDs the two specified filters.

Usage

From source file:org.eclipse.skalli.core.storage.Historian.java

Collection<File> getHistoryFiles(final File file) {
    String prefix = FilenameUtils.getBaseName(file.getAbsolutePath());
    IOFileFilter fileFilter = FileFilterUtils.andFileFilter(FileFilterUtils.prefixFileFilter(prefix),
            FileFilterUtils.suffixFileFilter("history")); //$NON-NLS-1$
    fileFilter = new IOFileFilter() {
        @Override/*  w  w w  .jav  a 2s .c  om*/
        public boolean accept(File arg0, String arg1) {
            return false;
        }

        @Override
        public boolean accept(File historyFile) {
            boolean ret = StringUtils.startsWithIgnoreCase(historyFile.getAbsolutePath(),
                    file.getAbsolutePath());
            ret &= StringUtils.endsWithIgnoreCase(historyFile.getAbsolutePath(), ".history"); //$NON-NLS-1$
            return ret;
        }
    };
    @SuppressWarnings("unchecked")
    Collection<File> files = FileUtils.listFiles(file.getParentFile(), fileFilter, null);
    return files;
}

From source file:org.geotools.coverageio.jp2k.Utils.java

static IOFileFilter excludeFilters(final IOFileFilter inputFilter, IOFileFilter... filters) {
    IOFileFilter retFilter = inputFilter;
    for (IOFileFilter filter : filters) {
        retFilter = FileFilterUtils.andFileFilter(retFilter, FileFilterUtils.notFileFilter(filter));
    }//from ww  w. j  av  a 2 s  .  c o m
    return retFilter;
}

From source file:org.geotools.gce.imagemosaic.catalogbuilder.CatalogBuilder.java

/**
 * @return//from w w w . ja  v  a 2s . co m
 */
private IOFileFilter createGranuleFilterRules() {
    final IOFileFilter specialWildCardFileFilter = new WildcardFileFilter(runConfiguration.getWildcard(),
            IOCase.INSENSITIVE);
    IOFileFilter dirFilter = FileFilterUtils.andFileFilter(FileFilterUtils.directoryFileFilter(),
            HiddenFileFilter.VISIBLE);
    IOFileFilter fileFilter = Utils.excludeFilters(
            FileFilterUtils.makeSVNAware(FileFilterUtils.makeFileOnly(
                    FileFilterUtils.andFileFilter(specialWildCardFileFilter, HiddenFileFilter.VISIBLE))),
            FileFilterUtils.suffixFileFilter("shp"), FileFilterUtils.suffixFileFilter("dbf"),
            FileFilterUtils.suffixFileFilter("shx"), FileFilterUtils.suffixFileFilter("qix"),
            FileFilterUtils.suffixFileFilter("lyr"), FileFilterUtils.suffixFileFilter("prj"),
            FileFilterUtils.nameFileFilter("error.txt"), FileFilterUtils.nameFileFilter("error.txt.lck"),
            FileFilterUtils.suffixFileFilter("properties"), FileFilterUtils.suffixFileFilter("svn-base"));

    // exclude common extensions
    Set<String> extensions = WorldImageFormat.getWorldExtension("png");
    for (String ext : extensions) {
        fileFilter = FileFilterUtils.andFileFilter(fileFilter,
                FileFilterUtils.notFileFilter(FileFilterUtils.suffixFileFilter(ext.substring(1))));
    }
    extensions = WorldImageFormat.getWorldExtension("gif");
    for (String ext : extensions) {
        fileFilter = FileFilterUtils.andFileFilter(fileFilter,
                FileFilterUtils.notFileFilter(FileFilterUtils.suffixFileFilter(ext.substring(1))));
    }
    extensions = WorldImageFormat.getWorldExtension("jpg");
    for (String ext : extensions) {
        fileFilter = FileFilterUtils.andFileFilter(fileFilter,
                FileFilterUtils.notFileFilter(FileFilterUtils.suffixFileFilter(ext.substring(1))));
    }
    extensions = WorldImageFormat.getWorldExtension("tiff");
    for (String ext : extensions) {
        fileFilter = FileFilterUtils.andFileFilter(fileFilter,
                FileFilterUtils.notFileFilter(FileFilterUtils.suffixFileFilter(ext.substring(1))));
    }
    extensions = WorldImageFormat.getWorldExtension("bmp");
    for (String ext : extensions) {
        fileFilter = FileFilterUtils.andFileFilter(fileFilter,
                FileFilterUtils.notFileFilter(FileFilterUtils.suffixFileFilter(ext.substring(1))));
    }

    //sdw
    fileFilter = FileFilterUtils.andFileFilter(fileFilter,
            FileFilterUtils.notFileFilter(FileFilterUtils.suffixFileFilter("sdw")));
    //aux
    fileFilter = FileFilterUtils.andFileFilter(fileFilter,
            FileFilterUtils.notFileFilter(FileFilterUtils.suffixFileFilter("aux")));
    //wld
    fileFilter = FileFilterUtils.andFileFilter(fileFilter,
            FileFilterUtils.notFileFilter(FileFilterUtils.suffixFileFilter("wld")));
    //svn
    fileFilter = FileFilterUtils.andFileFilter(fileFilter,
            FileFilterUtils.notFileFilter(FileFilterUtils.suffixFileFilter("svn")));

    final IOFileFilter finalFilter = FileFilterUtils.orFileFilter(dirFilter, fileFilter);
    return finalFilter;
}

From source file:org.jvnet.hudson.plugins.backup.utils.BackupTask.java

public static IOFileFilter createFileFilter(List<String> exclusions, IOFileFilter jobsExclusionFileFilter) {
    if (jobsExclusionFileFilter == null) {
        return FileFilterUtils.notFileFilter(new NameFileFilter(exclusions.toArray(new String[] {})));
    } else {//w w  w.ja  va2  s  .  c  om
        return FileFilterUtils.andFileFilter(
                FileFilterUtils.notFileFilter(new NameFileFilter(exclusions.toArray(new String[] {}))),
                jobsExclusionFileFilter);
    }
}

From source file:org.kuali.kfs.gl.document.service.impl.CorrectionDocumentServiceImpl.java

protected List<File> getReportsToAggregateIntoReport(String documentNumber) {
    File inputDirectory = new File(temporaryReportsDirectory);
    if (!inputDirectory.exists() || !inputDirectory.isDirectory()) {
        LOG.error(temporaryReportsDirectory + " does not exist or is not a directory.");
        throw new RuntimeException("Unable to locate temporary reports directory");
    }/*from  w  ww .  jav a2s  .  c  om*/
    String filePrefix = documentNumber + "_" + temporaryReportFilenameComponent;
    FileFilter filter = FileFilterUtils.andFileFilter(new PrefixFileFilter(filePrefix),
            new SuffixFileFilter(temporaryReportFilenameSuffix));

    // FSKD-244, KFSMI-5424 sort with filename, just in case 
    List<File> fileList = Arrays.asList(inputDirectory.listFiles(filter));

    Comparator fileNameComparator = new Comparator() {
        public int compare(Object obj1, Object obj2) {
            if (obj1 == null) {
                return -1;
            }
            if (obj2 == null) {
                return 1;
            }
            File file1 = (File) obj1;
            File file2 = (File) obj2;

            return ((Comparable) file1.getName()).compareTo(file2.getName());
        }
    };

    Collections.sort(fileList, fileNameComparator);
    return fileList;
}

From source file:org.kuali.kfs.sys.batch.ReportAggregationStep.java

protected List<File> retrieveFilesToAggregate() {
    File inputDirectory = new File(inputFilePath);
    if (!inputDirectory.exists() || !inputDirectory.isDirectory()) {
        throw new RuntimeException(inputFilePath + " does not exist or is not a directory.");
    }/*from  w  w w  . java2 s .c om*/
    FileFilter filter = FileFilterUtils.andFileFilter(new PrefixFileFilter(inputFilePrefix),
            new SuffixFileFilter(inputFileSuffix));

    List<File> fileList = Arrays.asList(inputDirectory.listFiles(filter));

    Collections.sort(fileList);

    return fileList;
}

From source file:org.kuali.kfs.sys.businessobject.lookup.BatchFileLookupableHelperServiceImpl.java

@Override
public List<? extends BusinessObject> getSearchResults(Map<String, String> fieldValues) {
    List<BatchFile> results = new ArrayList<BatchFile>();

    IOFileFilter filter = FileFilterUtils.fileFileFilter();

    IOFileFilter pathBasedFilter = getPathBasedFileFilter();
    if (pathBasedFilter != null) {
        filter = FileFilterUtils.andFileFilter(filter, pathBasedFilter);
    }/*from  ww  w. j a v a 2s.  c  o  m*/

    String fileNamePattern = fieldValues.get("fileName");
    IOFileFilter fileNameBasedFilter = getFileNameBasedFilter(fileNamePattern);
    if (fileNameBasedFilter != null) {
        filter = FileFilterUtils.andFileFilter(filter, fileNameBasedFilter);
    }

    String lastModifiedDate = fieldValues.get("lastModifiedDate");
    IOFileFilter lastModifiedDateBasedFilter = getLastModifiedDateBasedFilter(lastModifiedDate);
    if (lastModifiedDateBasedFilter != null) {
        filter = FileFilterUtils.andFileFilter(filter, lastModifiedDateBasedFilter);
    }

    BatchFileFinder finder = new BatchFileFinder(results, filter);
    List<File> rootDirectories = BatchFileUtils.retrieveBatchFileLookupRootDirectories();
    finder.find(rootDirectories);

    return results;
}

From source file:org.oyrm.kobo.postproc.KoboBatchTranscriber.java

/**
 * Records are read from the xmlDir, only xml files are read in
 * @throws Exception//w  ww.j  a v a2  s  . com
 */
private void processDirectory() throws Exception {
    List<String> instances = new ArrayList<String>();
    try {
        if (records == null) {
            records = new HashMap<String, List<SurveyRecord>>();
        }

        IOFileFilter xmlFileFilter = FileFilterUtils.andFileFilter(FileFilterUtils.fileFileFilter(),
                FileFilterUtils.suffixFileFilter(".xml"));
        IOFileFilter anyDirFilter = FileFilterUtils.andFileFilter(FileFilterUtils.directoryFileFilter(),
                DirectoryFileFilter.INSTANCE);
        FileFilter myFilter = FileFilterUtils.orFileFilter(anyDirFilter, xmlFileFilter);
        SourceSyncWalker walker = new SourceSyncWalker(myFilter);

        List<File> sourceXmlList = walker.sync(xmlDir);

        Document doc;
        SurveyRecord record;

        float progressFraction = 0;
        float tprogress = 0;
        if (!sourceXmlList.isEmpty()) {
            progressFraction = (float) ((float) 50 / (float) sourceXmlList.size());
        }

        for (File xml : sourceXmlList) {
            doc = DomUtils.createDocument(xml);
            logger.finer(doc.toString());
            if (doc.getDocumentElement() == null)
                continue;
            logger.finer("doc.getDocumentElement()=" + doc.getDocumentElement().toString());
            if (doc.getDocumentElement().getNodeName() == null)
                continue;
            logger.finer("doc.getDocumentElement().getNodeName()="
                    + doc.getDocumentElement().getNodeName().toString());
            record = DomUtils.documentToSurveyRecord(doc);
            if (record == null)
                continue;

            logger.finer("DomUtils.documentToSurveyRecord(doc)=" + record.toString());
            if (!records.containsKey(record.getInstance()))
                records.put(record.getInstance(), new ArrayList<SurveyRecord>());
            records.get(record.getInstance()).add(record);
            logger.fine("instances = " + instances.toString());
            tprogress = tprogress + progressFraction;
            setProgress(new Float(tprogress).intValue());
        }
    } catch (FileNotFoundException feex) {
        logger.warning("" + feex.getMessage());
        throw feex;
    } catch (IOException ioex) {
        logger.warning("" + ioex.getMessage());
        throw ioex;
    } catch (SAXException saxex) {
        logger.warning("" + saxex.getMessage());
        throw saxex;
    }
    logger.fine(records.toString());
}

From source file:org.oyrm.kobo.postproc.KoboSurveyDeviceSynchronizer.java

/**
 * Read the storage directory and source directory and sync new files
 * /*w  ww. j a  v a  2s. co  m*/
 * @throws Exception
 */
private void processDirectory() throws Exception {
    logger.entering(getClass().getName(), "processDirectory");
    try {
        if (!storedir.exists()) {
            throw new IOException("Storage Directory, " + storedir.getAbsolutePath() + ", Does Not Exist");
        }
        if (!readdir.exists()) {
            throw new IOException("Source Directory, " + readdir.getAbsolutePath() + ", Does Not Exist");
        }

        IOFileFilter xmlFileFilter = null;
        try {
            xmlFileFilter = FileFilterUtils.andFileFilter(FileFilterUtils.fileFileFilter(),
                    FileFilterUtils.suffixFileFilter(".xml"));
        } catch (Exception exp) {
            System.out.println(exp.getMessage());
        }
        IOFileFilter anyDirFilter = FileFilterUtils.andFileFilter(FileFilterUtils.directoryFileFilter(),
                DirectoryFileFilter.INSTANCE);
        FileFilter myFilter = FileFilterUtils.orFileFilter(anyDirFilter, xmlFileFilter);
        SourceSyncWalker walker = new SourceSyncWalker(myFilter);

        List<File> sourceXmlList = walker.sync(readdir);
        logger.finer("sourceXmlList contains " + sourceXmlList.size() + " source files");

        List<File> destXmlList = walker.sync(storedir);
        logger.finer("destXmlList: contains " + destXmlList.size() + " possible matches");

        List<File> filesToSync = compareFileLists(sourceXmlList, destXmlList);

        logger.fine("Syncing " + filesToSync.size() + " files");

        copyFiles(filesToSync);
    } catch (IOException ioex) {
        logger.warning(ioex.toString());
        throw ioex;
    } catch (Exception e) {
        logger.warning(e.toString());
        throw e;
    }
    logger.exiting(getClass().getName(), "processDirectory");
}

From source file:org.pentaho.supportutility.config.retriever.FileExtensionUtil.java

/**
 * Get the Server Xmls from server/*from  w  w  w.j  a  v a2 s . c  om*/
 * 
 * @param biPath
 * @param dstPath
 * @return
 */
@SuppressWarnings("deprecation")
public static boolean getServerXmlFile(String biPath, String dstPath) {

    Boolean result = false;
    File srcDir = new File(biPath);
    File dstDir = new File(dstPath);
    IOFileFilter SuffixFilter = FileFilterUtils.suffixFileFilter(SupportUtilConstant.DOT_XML);
    IOFileFilter applySuffixFilter = FileFilterUtils.andFileFilter(FileFileFilter.FILE, SuffixFilter);
    IOFileFilter finalFilter = FileFilterUtils.orFileFilter(applySuffixFilter, DirectoryFileFilter.DIRECTORY);
    try {
        FileUtils.copyDirectory(srcDir, dstDir, finalFilter, false);
        if (deleteEmptyDir(dstDir)) {
            result = true;
        }
    } catch (IOException e) {
        e.printStackTrace();
    }
    return result;
}