@Override
  public Predicate<FileInfo> get() {
    long currentTimeMS = System.currentTimeMillis();
    Interval interval = Interval.between(currentTimeMS, currentTimeMS + 1);
    return FileInfo -> {
      try {
        return interval.intersect(mInterval.add(mGetter.apply(FileInfo))).isValid();
      } catch (RuntimeException e) {
        LOG.debug("Failed to filter: ", e);
        return false;
      }
    };
  }
@Test
  public void testCreateEmptyPredicate() {
    FileFilter filter = FileFilter.newBuilder().setName("").setValue("").build();
    long timestamp = System.currentTimeMillis();
    FileInfo info = new FileInfo();
    info.setLastModificationTimeMs(timestamp);
    mThrown.expect(UnsupportedOperationException.class);
    mThrown.expectMessage("Invalid filter name: ");
    FilePredicate.create(filter).get().test(info);
  }