Example usage for java.io FilenameFilter FilenameFilter

List of usage examples for java.io FilenameFilter FilenameFilter

Introduction

In this page you can find the example usage for java.io FilenameFilter FilenameFilter.

Prototype

FilenameFilter

Source Link

Usage

From source file:com.grantingersoll.intell.index.Indexer.java

public static void main(String[] args) throws Exception {
    DefaultOptionBuilder obuilder = new DefaultOptionBuilder();
    ArgumentBuilder abuilder = new ArgumentBuilder();
    GroupBuilder gbuilder = new GroupBuilder();

    Option wikipediaFileOpt = obuilder.withLongName("wikiFile").withRequired(true)
            .withArgument(abuilder.withName("wikiFile").withMinimum(1).withMaximum(1).create())
            .withDescription(/*  w w  w. java2 s  .  c  om*/
                    "The path to the wikipedia dump file.  Maybe a directory containing wikipedia dump files."
                            + "  If a directory is specified, only .xml files are used.")
            .withShortName("w").create();

    Option numDocsOpt = obuilder.withLongName("numDocs").withRequired(false)
            .withArgument(abuilder.withName("numDocs").withMinimum(1).withMaximum(1).create())
            .withDescription("The number of docs to index").withShortName("n").create();

    Option solrURLOpt = obuilder.withLongName("solrURL").withRequired(false)
            .withArgument(abuilder.withName("solrURL").withMinimum(1).withMaximum(1).create())
            .withDescription("The URL where Solr lives").withShortName("s").create();

    Option solrBatchOpt = obuilder.withLongName("batch").withRequired(false)
            .withArgument(abuilder.withName("batch").withMinimum(1).withMaximum(1).create())
            .withDescription("The number of docs to include in each indexing batch").withShortName("b")
            .create();

    Group group = gbuilder.withName("Options").withOption(wikipediaFileOpt).withOption(numDocsOpt)
            .withOption(solrURLOpt).withOption(solrBatchOpt).create();

    Parser parser = new Parser();
    parser.setGroup(group);
    CommandLine cmdLine = parser.parse(args);

    File file;
    file = new File(cmdLine.getValue(wikipediaFileOpt).toString());
    File[] dumpFiles;
    if (file.isDirectory()) {
        dumpFiles = file.listFiles(new FilenameFilter() {
            public boolean accept(File file, String s) {
                return s.endsWith(".xml");
            }
        });
    } else {
        dumpFiles = new File[] { file };
    }

    int numDocs = Integer.MAX_VALUE;
    if (cmdLine.hasOption(numDocsOpt)) {
        numDocs = Integer.parseInt(cmdLine.getValue(numDocsOpt).toString());
    }
    String url = DEFAULT_SOLR_URL;
    if (cmdLine.hasOption(solrURLOpt)) {
        url = cmdLine.getValue(solrURLOpt).toString();
    }
    int batch = 100;
    if (cmdLine.hasOption(solrBatchOpt)) {
        batch = Integer.parseInt(cmdLine.getValue(solrBatchOpt).toString());
    }
    Indexer indexer = new Indexer(new CommonsHttpSolrServer(url));
    int total = 0;
    for (int i = 0; i < dumpFiles.length && total < numDocs; i++) {
        File dumpFile = dumpFiles[i];
        log.info("Indexing: " + file + " Num files to index: " + (numDocs - total));
        long start = System.currentTimeMillis();
        int totalFile = indexer.index(dumpFile, numDocs - total, batch);
        long finish = System.currentTimeMillis();
        if (log.isInfoEnabled()) {
            log.info("Indexing " + dumpFile + " took " + (finish - start) + " ms");
        }
        total += totalFile;
        log.info("Done Indexing: " + file + ". Indexed " + totalFile + " docs for that file and " + total
                + " overall.");

    }
    log.info("Indexed " + total + " docs overall.");
}

From source file:com.tamingtext.qa.WikipediaIndexer.java

public static void main(String[] args) throws Exception {
    DefaultOptionBuilder obuilder = new DefaultOptionBuilder();
    ArgumentBuilder abuilder = new ArgumentBuilder();
    GroupBuilder gbuilder = new GroupBuilder();

    Option wikipediaFileOpt = obuilder.withLongName("wikiFile").withRequired(true)
            .withArgument(abuilder.withName("wikiFile").withMinimum(1).withMaximum(1).create())
            .withDescription(//from  w ww.j av  a2  s .  co m
                    "The path to the wikipedia dump file.  Maybe a directory containing wikipedia dump files."
                            + "  If a directory is specified, only .xml files are used.")
            .withShortName("w").create();

    Option numDocsOpt = obuilder.withLongName("numDocs").withRequired(false)
            .withArgument(abuilder.withName("numDocs").withMinimum(1).withMaximum(1).create())
            .withDescription("The number of docs to index").withShortName("n").create();

    Option solrURLOpt = obuilder.withLongName("solrURL").withRequired(false)
            .withArgument(abuilder.withName("solrURL").withMinimum(1).withMaximum(1).create())
            .withDescription("The URL where Solr lives").withShortName("s").create();

    Option solrBatchOpt = obuilder.withLongName("batch").withRequired(false)
            .withArgument(abuilder.withName("batch").withMinimum(1).withMaximum(1).create())
            .withDescription("The number of docs to include in each indexing batch").withShortName("b")
            .create();

    Group group = gbuilder.withName("Options").withOption(wikipediaFileOpt).withOption(numDocsOpt)
            .withOption(solrURLOpt).withOption(solrBatchOpt).create();

    Parser parser = new Parser();
    parser.setGroup(group);
    CommandLine cmdLine = parser.parse(args);

    File file;
    file = new File(cmdLine.getValue(wikipediaFileOpt).toString());
    File[] dumpFiles;
    if (file.isDirectory()) {
        dumpFiles = file.listFiles(new FilenameFilter() {
            public boolean accept(File file, String s) {
                return s.endsWith(".xml");
            }
        });
    } else {
        dumpFiles = new File[] { file };
    }

    int numDocs = Integer.MAX_VALUE;
    if (cmdLine.hasOption(numDocsOpt)) {
        numDocs = Integer.parseInt(cmdLine.getValue(numDocsOpt).toString());
    }
    String url = DEFAULT_SOLR_URL;
    if (cmdLine.hasOption(solrURLOpt)) {
        url = cmdLine.getValue(solrURLOpt).toString();
    }
    int batch = 100;
    if (cmdLine.hasOption(solrBatchOpt)) {
        batch = Integer.parseInt(cmdLine.getValue(solrBatchOpt).toString());
    }
    WikipediaIndexer indexer = new WikipediaIndexer(new CommonsHttpSolrServer(url));
    int total = 0;
    for (int i = 0; i < dumpFiles.length && total < numDocs; i++) {
        File dumpFile = dumpFiles[i];
        log.info("Indexing: " + file + " Num files to index: " + (numDocs - total));
        long start = System.currentTimeMillis();
        int totalFile = indexer.index(dumpFile, numDocs - total, batch);
        long finish = System.currentTimeMillis();
        if (log.isInfoEnabled()) {
            log.info("Indexing " + dumpFile + " took " + (finish - start) + " ms");
        }
        total += totalFile;
        log.info("Done Indexing: " + file + ". Indexed " + totalFile + " docs for that file and " + total
                + " overall.");

    }
    log.info("Indexed " + total + " docs overall.");
}

From source file:com.tamingtext.qa.WikipediaWexIndexer.java

public static void main(String[] args) throws Exception {
    DefaultOptionBuilder obuilder = new DefaultOptionBuilder();
    ArgumentBuilder abuilder = new ArgumentBuilder();
    GroupBuilder gbuilder = new GroupBuilder();

    Option wikipediaFileOpt = obuilder.withLongName("wikiFile").withRequired(true)
            .withArgument(abuilder.withName("wikiFile").withMinimum(1).withMaximum(1).create())
            .withDescription("The path to the wikipedia dump file. "
                    + "May be a directory containing wikipedia dump files. "
                    + "If a directory is specified, files starting with the prefix "
                    + "freebase-segment- are used.")
            .withShortName("w").create();

    Option numDocsOpt = obuilder.withLongName("numDocs").withRequired(false)
            .withArgument(abuilder.withName("numDocs").withMinimum(1).withMaximum(1).create())
            .withDescription("The number of docs to index").withShortName("n").create();

    Option solrURLOpt = obuilder.withLongName("solrURL").withRequired(false)
            .withArgument(abuilder.withName("solrURL").withMinimum(1).withMaximum(1).create())
            .withDescription("The URL where Solr lives").withShortName("s").create();

    Option solrBatchOpt = obuilder.withLongName("batch").withRequired(false)
            .withArgument(abuilder.withName("batch").withMinimum(1).withMaximum(1).create())
            .withDescription("The number of docs to include in each indexing batch").withShortName("b")
            .create();//from   w  ww.j a  v a  2 s . c  om

    Option helpOpt = obuilder.withLongName("help").withDescription("Print out help").withShortName("h")
            .create();

    Group group = gbuilder.withName("Options").withOption(wikipediaFileOpt).withOption(numDocsOpt)
            .withOption(solrURLOpt).withOption(solrBatchOpt).withOption(helpOpt).create();

    Parser parser = new Parser();
    parser.setGroup(group);

    try {
        CommandLine cmdLine = parser.parse(args);

        if (cmdLine.hasOption(helpOpt)) {
            CommandLineUtil.printHelp(group);
            return;
        }

        File file;
        file = new File(cmdLine.getValue(wikipediaFileOpt).toString());
        File[] dumpFiles;
        if (file.isDirectory()) {
            dumpFiles = file.listFiles(new FilenameFilter() {
                public boolean accept(File file, String s) {
                    return s.startsWith("freebase-segment-");
                }
            });
        } else {
            dumpFiles = new File[] { file };
        }

        int numDocs = Integer.MAX_VALUE;
        if (cmdLine.hasOption(numDocsOpt)) {
            numDocs = Integer.parseInt(cmdLine.getValue(numDocsOpt).toString());
        }
        String url = DEFAULT_SOLR_URL;
        if (cmdLine.hasOption(solrURLOpt)) {
            url = cmdLine.getValue(solrURLOpt).toString();
        }
        int batch = 100;
        if (cmdLine.hasOption(solrBatchOpt)) {
            batch = Integer.parseInt(cmdLine.getValue(solrBatchOpt).toString());
        }
        WikipediaWexIndexer indexer = new WikipediaWexIndexer(new CommonsHttpSolrServer(url));
        int total = 0;
        for (int i = 0; i < dumpFiles.length && total < numDocs; i++) {
            File dumpFile = dumpFiles[i];
            log.info("Indexing: " + file + " Num files to index: " + (numDocs - total));
            long start = System.currentTimeMillis();
            int totalFile = indexer.index(dumpFile, numDocs - total, batch);
            long finish = System.currentTimeMillis();
            if (log.isInfoEnabled()) {
                log.info("Indexing " + dumpFile + " took " + (finish - start) + " ms");
            }
            total += totalFile;
            log.info("Done Indexing: " + file + ". Indexed " + totalFile + " docs for that file and " + total
                    + " overall.");

        }
        log.info("Indexed " + total + " docs overall.");
    } catch (OptionException e) {
        log.error("Exception", e);
        CommandLineUtil.printHelp(group);
        return;
    }
}

From source file:FileLister.java

/**
 * A main() method so FileLister can be run standalone. Parse command line
 * arguments and create the FileLister object. If an extension is specified,
 * create a FilenameFilter for it. If no directory is specified, use the
 * current directory.//w  w w  .  j a v a 2s  .  co m
 */
public static void main(String args[]) throws IOException {
    FileLister f;
    FilenameFilter filter = null; // The filter, if any
    String directory = null; // The specified dir, or the current dir

    // Loop through args array, parsing arguments
    for (int i = 0; i < args.length; i++) {
        if (args[i].equals("-e")) {
            if (++i >= args.length)
                usage();
            final String suffix = args[i]; // final for anon. class below

            // This class is a simple FilenameFilter. It defines the
            // accept() method required to determine whether a specified
            // file should be listed. A file will be listed if its name
            // ends with the specified extension, or if it is a directory.
            filter = new FilenameFilter() {
                public boolean accept(File dir, String name) {
                    if (name.endsWith(suffix))
                        return true;
                    else
                        return (new File(dir, name)).isDirectory();
                }
            };
        } else {
            if (directory != null)
                usage(); // If already specified, fail.
            else
                directory = args[i];
        }
    }

    // if no directory specified, use the current directory
    if (directory == null)
        directory = System.getProperty("user.dir");
    // Create the FileLister object, with directory and filter specified.
    f = new FileLister(directory, filter);
    // Arrange for the application to exit when the window is closed
    f.addWindowListener(new WindowAdapter() {
        public void windowClosed(WindowEvent e) {
            System.exit(0);
        }
    });
    // Finally, pop the window up up.
    f.show();
}

From source file:net.itransformers.idiscover.discoverylisteners.XmlTopologyDeviceLogger.java

public static void main(String[] args) throws IOException, JAXBException {
    String path = "devices_and_models\\lab\\undirected";
    File dir = new File(path);
    String[] files = dir.list(new FilenameFilter() {
        public boolean accept(File dir, String name) {
            return (name.endsWith(".hml"));
        }/* w ww  . j  ava 2s.c  o m*/
    });
    Map<String, String> params = new HashMap<String, String>();
    params.put("path", path);
    params.put("conf/xslt", "iDiscover\\conf\\xslt\\transformator3.xslt");
    XmlTopologyDeviceLogger logger = new XmlTopologyDeviceLogger(params, null, null);

    for (String fileName : files) {
        FileInputStream is = new FileInputStream(path + File.separator + fileName);
        DiscoveredDeviceData discoveredDeviceData;
        try {
            discoveredDeviceData = JaxbMarshalar.unmarshal(DiscoveredDeviceData.class, is);
        } finally {
            is.close();
        }
        String deviceName = fileName.substring("device-".length(), fileName.length() - ".xml".length());
        logger.handleDevice(deviceName, null, discoveredDeviceData, null);
    }

}

From source file:org.biopax.validator.BiopaxValidatorClient.java

/**
 * Checks BioPAX files using the online BioPAX Validator. 
 * //  ww  w . j  a v a 2 s.  com
 * @see <a href="http://www.biopax.org/validator">BioPAX Validator Webservice</a>
 * 
 * @param argv
 * @throws IOException
 */
public static void main(String[] argv) throws IOException {
    if (argv.length == 0) {
        System.err.println("Available parameters: \n"
                + "<path> <output> [xml|html|biopax] [auto-fix] [only-errors] [maxerrors=n] [notstrict]\n"
                + "\t- validate a BioPAX file/directory (up to ~25MB in total size, -\n"
                + "\totherwise, please use the biopax-validator.jar instead)\n"
                + "\tin the directory using the online BioPAX Validator service\n"
                + "\t(generates html or xml report, or gets the processed biopax\n"
                + "\t(cannot fix all errros though) see http://www.biopax.org/validator)");
        System.exit(-1);
    }

    final String input = argv[0];
    final String output = argv[1];

    File fileOrDir = new File(input);
    if (!fileOrDir.canRead()) {
        System.err.println("Cannot read from " + input);
        System.exit(-1);
    }
    if (output == null || output.isEmpty()) {
        System.err.println("No output file specified (for the validation report).");
        System.exit(-1);
    }

    // default options
    RetFormat outf = RetFormat.HTML;
    boolean fix = false;
    Integer maxErrs = null;
    Behavior level = null; //will report both errors and warnings
    String profile = null;

    // match optional arguments
    for (int i = 2; i < argv.length; i++) {
        if ("html".equalsIgnoreCase(argv[i])) {
            outf = RetFormat.HTML;
        } else if ("xml".equalsIgnoreCase(argv[i])) {
            outf = RetFormat.XML;
        } else if ("biopax".equalsIgnoreCase(argv[i])) {
            outf = RetFormat.OWL;
        } else if ("auto-fix".equalsIgnoreCase(argv[i])) {
            fix = true;
        } else if ("only-errors".equalsIgnoreCase(argv[i])) {
            level = Behavior.ERROR;
        } else if ((argv[i]).toLowerCase().startsWith("maxerrors=")) {
            String num = argv[i].substring(10);
            maxErrs = Integer.valueOf(num);
        } else if ("notstrict".equalsIgnoreCase(argv[i])) {
            profile = "notstrict";
        }
    }

    // collect files
    Collection<File> files = new HashSet<File>();

    if (fileOrDir.isDirectory()) {
        // validate all the OWL files in the folder
        FilenameFilter filter = new FilenameFilter() {
            public boolean accept(File dir, String name) {
                return (name.endsWith(".owl"));
            }
        };

        for (String s : fileOrDir.list(filter)) {
            files.add(new File(fileOrDir.getCanonicalPath() + File.separator + s));
        }
    } else {
        files.add(fileOrDir);
    }

    // upload and validate using the default URL: http://www.biopax.org/biopax-validator/check.html        
    if (!files.isEmpty()) {
        BiopaxValidatorClient val = new BiopaxValidatorClient();
        val.validate(fix, profile, outf, level, maxErrs, null, files.toArray(new File[] {}),
                new FileOutputStream(output));
    }
}

From source file:Main.java

private static File getCachImage(final String id, File cachDir) {
    File[] list = cachDir.listFiles(new FilenameFilter() {

        @Override//from  w  ww .j  av  a 2s .c  om
        public boolean accept(File dir, String filename) {
            return filename.contains(id);
        }
    });
    if (list != null && list.length != 0) {
        return list[0];
    } else {
        return null;
    }
}

From source file:Main.java

public static boolean deleteFiles(final File directory, final String prefix) {
    for (File child : directory.listFiles(new FilenameFilter() {
        @Override/*from   w w  w  . ja  v  a2s  .  c  om*/
        public boolean accept(File dir, String name) {
            return name.startsWith(prefix);
        }
    })) {
        deleteRecursive(child);
    }
    return true;
}

From source file:Main.java

public static File findParentDirContainerFile(File file, final String fileKey) {
    if (fileKey.equals(file.getName())) {
        return file;
    }//from  w  w  w . ja  v  a2 s . c  o  m
    File[] guessFileKeys = file.listFiles(new FilenameFilter() {
        public boolean accept(File dir, String name) {
            return fileKey.equals(name);
        }
    });
    if (guessFileKeys.length > 0) {
        return file;
    }
    if (file.getParentFile() != null) {
        return findParentDir(file.getParentFile(), fileKey);
    } else {
        return file.getParentFile();
    }
}

From source file:Main.java

public static void deleteTempFiles() throws IOException {
    File file = createTempFile("test", "test");
    String folder = getDirectoryForFile(file.getAbsolutePath());
    String[] list = new File(folder).list(new FilenameFilter() {
        public boolean accept(File dir, String name) {
            return name.startsWith("ohfu-");
        }/*from  www.  j a  va 2 s  .  c  om*/
    });
    if (list != null) {
        for (String n : list) {
            new File(path(folder, n)).delete();
        }
    }
}