类com.google.common.io.PatternFilenameFilter源码实例Demo

下面列出了怎么用com.google.common.io.PatternFilenameFilter的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: myrrix-recommender   文件: LoadRunner.java
/**
 * @param client recommender to load
 * @param dataDirectory a directory containing data files from which user and item IDs should be read
 * @param steps number of load steps to run
 */
public LoadRunner(MyrrixRecommender client, File dataDirectory, int steps) throws IOException {
  Preconditions.checkNotNull(client);
  Preconditions.checkNotNull(dataDirectory);
  Preconditions.checkArgument(steps > 0);  
  
  log.info("Reading IDs...");    
  FastIDSet userIDsSet = new FastIDSet();
  FastIDSet itemIDsSet = new FastIDSet();
  Splitter comma = Splitter.on(',');
  for (File f : dataDirectory.listFiles(new PatternFilenameFilter(".+\\.csv(\\.(zip|gz))?"))) {
    for (CharSequence line : new FileLineIterable(f)) {
      Iterator<String> it = comma.split(line).iterator();
      userIDsSet.add(Long.parseLong(it.next()));
      itemIDsSet.add(Long.parseLong(it.next()));
    }
  }
  
  this.client = client;    
  this.uniqueUserIDs = userIDsSet.toArray();
  this.uniqueItemIDs = itemIDsSet.toArray();
  this.steps = steps;
}
 
源代码2 项目: Quicksql   文件: QuidemTest.java
protected static Collection<Object[]> data(String first) {
  // inUrl = "file:/home/fred/calcite/core/target/test-classes/sql/agg.iq"
  final URL inUrl = JdbcTest.class.getResource("/" + n2u(first));
  final File firstFile = Sources.of(inUrl).file();
  final int commonPrefixLength = firstFile.getAbsolutePath().length() - first.length();
  final File dir = firstFile.getParentFile();
  final List<String> paths = new ArrayList<>();
  final FilenameFilter filter = new PatternFilenameFilter(".*\\.iq$");
  for (File f : Util.first(dir.listFiles(filter), new File[0])) {
    paths.add(f.getAbsolutePath().substring(commonPrefixLength));
  }
  return Lists.transform(paths, path -> new Object[] {path});
}
 
@TestFactory
public Stream<DynamicTest> parse() {
  File[] testFiles = testcaseRoot.listFiles(new PatternFilenameFilter("^struct\\d+\\.json$"));

  return Arrays.stream(testFiles)
      .map(f -> dynamicTest(f.getName(), () -> {
        Struct struct = ObjectMapperFactory.INSTANCE.readValue(f, Struct.class);
        assertNotNull(struct);

      }));
}
 
public AbstractSourceConnectorConfig(ConfigDef definition, Map<?, ?> originals, boolean bufferedInputStream) {
  super(definition, originals);
  this.bufferedInputStream = bufferedInputStream;
  this.inputPath = ConfigUtils.getAbsoluteFile(this, INPUT_PATH_CONFIG);
  this.cleanupPolicy = ConfigUtils.getEnum(CleanupPolicy.class, this, CLEANUP_POLICY_CONF);

  if (finishedPathRequired()) {
    this.finishedPath = ConfigUtils.getAbsoluteFile(this, FINISHED_PATH_CONFIG);
  } else {
    this.finishedPath = null;
  }

  this.errorPath = ConfigUtils.getAbsoluteFile(this, ERROR_PATH_CONFIG);
  this.haltOnError = this.getBoolean(HALT_ON_ERROR_CONF);
  this.minimumFileAgeMS = this.getLong(FILE_MINIMUM_AGE_MS_CONF);
  this.batchSize = this.getInt(BATCH_SIZE_CONF);
  this.topic = this.getString(TOPIC_CONF);
  this.emptyPollWaitMs = this.getLong(EMPTY_POLL_WAIT_MS_CONF);
  this.processingFileExtension = this.getString(PROCESSING_FILE_EXTENSION_CONF);
  this.timestampMode = ConfigUtils.getEnum(TimestampMode.class, this, TIMESTAMP_MODE_CONF);
  final String inputPatternText = this.getString(INPUT_FILE_PATTERN_CONF);
  final Pattern inputPattern = Pattern.compile(inputPatternText);
  this.inputFilenameFilter = new PatternFilenameFilter(inputPattern);
  this.fileSortAttributes = ConfigUtils.getEnums(FileAttribute.class, this, FILE_SORT_ATTRIBUTES_CONF);
  this.taskIndex = getInt(TASK_INDEX_CONF);
  this.taskCount = getInt(TASK_COUNT_CONF);
  this.taskPartitioner = ConfigUtils.getEnum(TaskPartitioner.class, this, TASK_PARTITIONER_CONF);

  if (bufferedInputStream) {
    this.fileBufferSizeBytes = getInt(FILE_BUFFER_SIZE_CONF);
  } else {
    this.fileBufferSizeBytes = 0;
  }
  this.metadataLocation = ConfigUtils.getEnum(MetadataLocation.class, this, METADATA_LOCATION_CONF);
  this.metadataField = this.getString(METADATA_FIELD_CONF);
}
 
@Test
public void recordingTestThatShouldBeRecordedAndRetained() {
    File target = vncRecordingDirectory.getRoot();
    try (
        // recordAll {
        // To do this, simply add extra parameters to the rule constructor:
        BrowserWebDriverContainer chrome = new BrowserWebDriverContainer()
            .withCapabilities(new ChromeOptions())
            .withRecordingMode(RECORD_ALL, target)
            // }
            .withRecordingFileFactory(new DefaultRecordingFileFactory())
    ) {
        chrome.start();

        doSimpleExplore(chrome);
        chrome.afterTest(new TestDescription() {
            @Override
            public String getTestId() {
                return getFilesystemFriendlyName();
            }

            @Override
            public String getFilesystemFriendlyName() {
                return "ChromeThatRecordsAllTests-recordingTestThatShouldBeRecordedAndRetained";
            }
        }, Optional.empty());

        String[] files = vncRecordingDirectory.getRoot().list(new PatternFilenameFilter("PASSED-.*\\.flv"));
        assertEquals("Recorded file not found", 1, files.length);
    }
}
 
@Test
public void recordingTestThatShouldBeRecordedAndRetained() {
    File target = vncRecordingDirectory.getRoot();
    try (
        // recordFailing {
        // or if you only want videos for test failures:
        BrowserWebDriverContainer chrome = new BrowserWebDriverContainer()
            .withCapabilities(new ChromeOptions())
            .withRecordingMode(RECORD_FAILING, target)
            // }
            .withRecordingFileFactory(new DefaultRecordingFileFactory())
    ) {
        chrome.start();

        doSimpleExplore(chrome);
        chrome.afterTest(new TestDescription() {
            @Override
            public String getTestId() {
                return getFilesystemFriendlyName();
            }

            @Override
            public String getFilesystemFriendlyName() {
                return "ChromeThatRecordsFailingTests-recordingTestThatShouldBeRecordedAndRetained";
            }
        }, Optional.of(new RuntimeException("Force writing of video file.")));

        String[] files = vncRecordingDirectory.getRoot().list(new PatternFilenameFilter("FAILED-.*\\.flv"));
        assertEquals("Recorded file not found", 1, files.length);
    }

}
 
源代码7 项目: calcite   文件: QuidemTest.java
protected static Collection<Object[]> data(String first) {
  // inUrl = "file:/home/fred/calcite/core/target/test-classes/sql/agg.iq"
  final URL inUrl = JdbcTest.class.getResource("/" + n2u(first));
  final File firstFile = Sources.of(inUrl).file();
  final int commonPrefixLength = firstFile.getAbsolutePath().length() - first.length();
  final File dir = firstFile.getParentFile();
  final List<String> paths = new ArrayList<>();
  final FilenameFilter filter = new PatternFilenameFilter(".*\\.iq$");
  for (File f : Util.first(dir.listFiles(filter), new File[0])) {
    paths.add(f.getAbsolutePath().substring(commonPrefixLength));
  }
  return Lists.transform(paths, path -> new Object[] {path});
}
 
源代码8 项目: timbuctoo   文件: DataPerfectLoader.java
private File getStructureFile(File dirWithDb) throws InvalidFileException {
  //Look for the STR file
  File[] dbfiles = dirWithDb.listFiles(new PatternFilenameFilter(Pattern.compile(".*\\.STR")));
  if (dbfiles == null || dbfiles.length != 1) {
    throw new InvalidFileException("I expected one .STR file in the zip");
  }
  return dbfiles[0];
}
 
private static Multimap<Long,RecommendedItem> readAndCopyDataFiles(File dataDir, File tempDir) throws IOException {
  Multimap<Long,RecommendedItem> data = ArrayListMultimap.create();
  for (File dataFile : dataDir.listFiles(new PatternFilenameFilter(".+\\.csv(\\.(zip|gz))?"))) {
    log.info("Reading {}", dataFile);
    int count = 0;
    for (CharSequence line : new FileLineIterable(dataFile)) {
      Iterator<String> parts = COMMA_TAB_SPLIT.split(line).iterator();
      long userID = Long.parseLong(parts.next());
      long itemID = Long.parseLong(parts.next());
      if (parts.hasNext()) {
        String token = parts.next().trim();
        if (!token.isEmpty()) {
          data.put(userID, new GenericRecommendedItem(itemID, LangUtils.parseFloat(token)));
        }
        // Ignore remove lines
      } else {
        data.put(userID, new GenericRecommendedItem(itemID, 1.0f));
      }
      if (++count % 1000000 == 0) {
        log.info("Finished {} lines", count);
      }
    }

    Files.copy(dataFile, new File(tempDir, dataFile.getName()));
  }
  return data;
}
 
源代码10 项目: EasySRL   文件: TaggerEmbeddings.java
public TaggerEmbeddings(final File modelFolder, final double beta, final int maxTagsPerWord,
		final CutoffsDictionaryInterface cutoffs) throws IOException {
	super(cutoffs, beta, loadCategories(new File(modelFolder, "categories")), maxTagsPerWord);
	try {
		final FilenameFilter embeddingsFileFilter = new PatternFilenameFilter("embeddings.*");

		// If we're using POS tags or lexical features, load l.
		this.posFeatures = loadSparseFeatures(new File(modelFolder + "/postags"));
		this.lexicalFeatures = loadSparseFeatures(new File(modelFolder + "/frequentwords"));

		// Load word embeddings.
		embeddingsFeatures = loadEmbeddings(true, modelFolder.listFiles(embeddingsFileFilter));

		// Load embeddings for capitalization and suffix features.
		discreteFeatures = new HashMap<>();
		discreteFeatures.putAll(loadEmbeddings(false, new File(modelFolder, "capitals")));
		discreteFeatures.putAll(loadEmbeddings(false, new File(modelFolder, "suffix")));
		totalFeatures = (embeddingsFeatures.get(unknownLower).length + discreteFeatures.get(unknownSuffix).length
				+ discreteFeatures.get(capsLower).length + posFeatures.size() + lexicalFeatures.size())
				* (2 * contextWindow + 1);

		// Load the list of categories used by the model.
		categoryToIndex = new HashMap<>();
		for (int i = 0; i < lexicalCategories.size(); i++) {
			categoryToIndex.put(lexicalCategories.get(i), i);
		}

		// Load the weight matrix used by the classifier.
		weightMatrix = new DenseMatrix(lexicalCategories.size(), totalFeatures);
		loadMatrix(weightMatrix, new File(modelFolder, "classifier"));

		weightMatrixRows = new ArrayList<>(lexicalCategories.size());
		for (int i = 0; i < lexicalCategories.size(); i++) {
			final Vector row = new DenseVector(totalFeatures);
			for (int j = 0; j < totalFeatures; j++) {
				row.set(j, weightMatrix.get(i, j));
			}
			weightMatrixRows.add(row);
		}

		bias = new DenseVector(lexicalCategories.size());

		loadVector(bias, new File(modelFolder, "bias"));

	} catch (final Exception e) {
		throw new RuntimeException(e);
	}
}
 
源代码11 项目: easyccg   文件: TaggerEmbeddings.java
public TaggerEmbeddings(File modelFolder, int maxSentenceLength, double beta, int maxTagsPerWord) {
  try {
    FilenameFilter embeddingsFileFilter = new PatternFilenameFilter("embeddings.*");

    // If we're using POS tags or lexical features, load l.
    this.posFeatures = loadSparseFeatures(new File(modelFolder + "/postags"));     
    this.lexicalFeatures = loadSparseFeatures(new File(modelFolder + "/frequentwords"));     
    
    // Load word embeddings.
    embeddingsFeatures = loadEmbeddings(true, modelFolder.listFiles(embeddingsFileFilter));
    
    // Load embeddings for capitalization and suffix features.
    discreteFeatures = new HashMap<String, double[]>();
    discreteFeatures.putAll(loadEmbeddings(false, new File(modelFolder, "capitals")));
    discreteFeatures.putAll(loadEmbeddings(false, new File(modelFolder, "suffix")));
    totalFeatures = 
      (embeddingsFeatures.get(unknownLower).length + 
          discreteFeatures.get(unknownSuffix).length + 
          discreteFeatures.get(capsLower).length +
          posFeatures.size()  + lexicalFeatures.size())       * (2 * contextWindow + 1);
    
    // Load the list of categories used by the model.
    lexicalCategories = loadCategories(new File(modelFolder, "categories"));
    
    // Load the weight matrix used by the classifier.
    weightMatrix = new DenseMatrix(lexicalCategories.size(), totalFeatures);
    loadMatrix(weightMatrix, new File(modelFolder, "classifier"));

    weightMatrixRows = new ArrayList<Vector>(lexicalCategories.size());
    for (int i=0; i<lexicalCategories.size(); i++) {
      Vector row = new DenseVector(totalFeatures);
      for (int j=0; j<totalFeatures; j++) {
        row.set(j, weightMatrix.get(i, j));
      }
      weightMatrixRows.add(row);
    }

    bias = new DenseVector(lexicalCategories.size());
    this.beta = beta;
    this.maxTagsPerWord = maxTagsPerWord;

    int maxCategoryID = 0;
    for (Category c : lexicalCategories) {
      maxCategoryID = Math.max(maxCategoryID, c.getID());
    }
    
    this.tagDict = ImmutableMap.copyOf(loadTagDictionary(modelFolder));
    
    terminalFactory = new SyntaxTreeNodeFactory(maxSentenceLength, maxCategoryID);
    loadVector(bias, new File(modelFolder, "bias"));

  }
  catch (Exception e) {
    throw new RuntimeException(e);
  }
}
 
源代码12 项目: website   文件: FileService.java
public String[] unprocessedImportItemPdfFiles(ImportItem importItem) {
    File folder = new File(bulkProductDataFolder);
    return folder.list(new PatternFilenameFilter("(?i)" + Pattern.quote(importItem.getIdentifier()) + "\\.(pdf)"));
}
 
源代码13 项目: website   文件: FileService.java
public String[] unprocessedImportItemHtmlFiles(ImportItem importItem) {
    File folder = new File(bulkProductDataFolder);
    return folder.list(new PatternFilenameFilter("(?i)" + Pattern.quote(importItem.getIdentifier()) + "\\.(htm|html)"));
}
 
源代码14 项目: website   文件: FileService.java
public String[] existingImportItemFiles(ImportItem importItem) {
    File folder = new File(existingPdfFileFolder);
    return folder.list(new PatternFilenameFilter("(?i)" + Pattern.quote(importItem.getIdentifier()) + "\\.(pdf)"));
}
 
源代码15 项目: website   文件: FileService.java
public String[] unprocessedImportItemJacketImages(ImportItem importItem) {
    File folder = new File(bulkProductDataFolder);
    logger.debug("unprocessedImportItemJacketImages folder: " + folder.getAbsolutePath());
    return folder.list(new PatternFilenameFilter("(?i)" + Pattern.quote(importItem.getIdentifier()) + "\\.(jpg|png)"));
}
 
源代码16 项目: bazel   文件: ManifestMergerActionTest.java
@Test public void testMerge() throws Exception {
  String dataDir =
      Paths.get(System.getenv("TEST_WORKSPACE"), System.getenv("TEST_BINARY"))
          .resolveSibling("testing/manifestmerge")
          .toString()
          .replace("\\", "/");

  final Path mergerManifest = rlocation(dataDir + "/merger/AndroidManifest.xml");
  final Path mergeeManifestOne = rlocation(dataDir + "/mergeeOne/AndroidManifest.xml");
  final Path mergeeManifestTwo = rlocation(dataDir + "/mergeeTwo/AndroidManifest.xml");
  assertThat(mergerManifest.toFile().exists()).isTrue();
  assertThat(mergeeManifestOne.toFile().exists()).isTrue();
  assertThat(mergeeManifestTwo.toFile().exists()).isTrue();

  // The following code retrieves the path of the only AndroidManifest.xml in the expected/
  // manifests directory. Unfortunately, this test runs internally and externally and the files
  // have different names.
  final File expectedManifestDirectory =
      mergerManifest.getParent().resolveSibling("expected").toFile();
  final String[] debug =
      expectedManifestDirectory.list(new PatternFilenameFilter(".*AndroidManifest\\.xml$"));
  assertThat(debug).isNotNull();
  final File[] expectedManifestDirectoryManifests =
      expectedManifestDirectory.listFiles((File dir, String name) -> true);
  assertThat(expectedManifestDirectoryManifests).isNotNull();
  assertThat(expectedManifestDirectoryManifests).hasLength(1);
  final Path expectedManifest = expectedManifestDirectoryManifests[0].toPath();

  Files.createDirectories(working.resolve("output"));
  final Path mergedManifest = working.resolve("output/mergedManifest.xml");

  List<String> args =
      generateArgs(
          mergerManifest,
          ImmutableMap.of(mergeeManifestOne, "mergeeOne", mergeeManifestTwo, "mergeeTwo"),
          false, /* isLibrary */
          ImmutableMap.of("applicationId", "com.google.android.apps.testapp"),
          "", /* custom_package */
          mergedManifest);
  ManifestMergerAction.main(args.toArray(new String[0]));

  assertThat(
      Joiner.on(" ")
          .join(Files.readAllLines(mergedManifest, UTF_8))
          .replaceAll("\\s+", " ")
          .trim())
      .isEqualTo(
          Joiner.on(" ")
              .join(Files.readAllLines(expectedManifest, UTF_8))
              .replaceAll("\\s+", " ")
              .trim());
}
 
源代码17 项目: myrrix-recommender   文件: AbstractClientTest.java
@Override
@Before
public void setUp() throws Exception {
  super.setUp();

  // Clear some sys properties that may have been set per test
  for (Iterator<?> it = System.getProperties().keySet().iterator(); it.hasNext();) {
    if (it.next().toString().startsWith("model.")) {
      it.remove();
    }
  }

  File tempDir = getTestTempDir();
  File testDataDir = new File(getTestDataPath());
  Preconditions.checkState(testDataDir.exists() && testDataDir.isDirectory(),
                           "%s is not an existing directory", testDataDir.getAbsolutePath());

  log.info("Copying files to {}", tempDir);

  if (savedModelFile == null) {
    log.info("No saved model file, building model");
    File[] srcDataFiles = testDataDir.listFiles(new PatternFilenameFilter("[^.].*"));
    if (srcDataFiles != null) {
      for (File srcDataFile : srcDataFiles) {
        File destFile = new File(tempDir, srcDataFile.getName());
        Files.copy(srcDataFile, destFile);
      }
    }
  } else {
    log.info("Found saved model file {} (size {})", savedModelFile, savedModelFile.length());
    Files.copy(savedModelFile, new File(tempDir, "model.bin.gz"));
  }

  log.info("Configuring recommender...");

  RunnerConfiguration runnerConfig = new RunnerConfiguration();
  runnerConfig.setInstanceID("test");
  runnerConfig.setPort(8090); // Odd ports to avoid conflicts
  if (useSecurity()) {
    runnerConfig.setSecurePort(8453); // Odd ports to avoid conflicts
    runnerConfig.setKeystorePassword("changeit");
    runnerConfig.setKeystoreFile(new File("testdata/keystore"));
    runnerConfig.setUserName("foo");
    runnerConfig.setPassword("bar");
  }
  runnerConfig.setLocalInputDir(tempDir);

  runner = new Runner(runnerConfig);
  runner.call();

  boolean clientSecure = runnerConfig.getKeystoreFile() != null;
  int clientPort = clientSecure ? runnerConfig.getSecurePort() : runnerConfig.getPort();
  MyrrixClientConfiguration clientConfig = new MyrrixClientConfiguration();
  clientConfig.setHost("localhost");
  clientConfig.setPort(clientPort);
  clientConfig.setSecure(clientSecure);
  clientConfig.setKeystorePassword(runnerConfig.getKeystorePassword());
  clientConfig.setKeystoreFile(runnerConfig.getKeystoreFile());
  clientConfig.setUserName(runnerConfig.getUserName());
  clientConfig.setPassword(runnerConfig.getPassword());
  client = new ClientRecommender(clientConfig);

  if (callAwait()) {
    log.info("Waiting for client...");
    client.await();
    log.info("Client ready");
  }
}
 
@Test
public void find_files_by_extension_guava () {

	Pattern pattern = Pattern.compile("^.*.txt");
	
	FilenameFilter filterByExtension = new PatternFilenameFilter(pattern);
	
	File dir = new File(sourceFileURI);
	File[] files = dir.listFiles(filterByExtension);

	logger.info(Arrays.toString(files));
	
	assertTrue(files.length >= 4);
}