protected Future isValidOfType()

in src/main/java/org/apache/cassandra/sidecar/utils/BaseFileSystem.java [116:135]


    protected Future<String> isValidOfType(String filename, Predicate<FileProps> predicate)
    {
        return fs.exists(filename)
                 .compose(exists -> {
                     if (!exists)
                     {
                         String errMsg = "File '" + filename + "' does not exist";
                         return Future.failedFuture(new NoSuchFileException(errMsg));
                     }
                     return fs.props(filename)
                              .compose(fileProps -> {
                                  if (fileProps == null || !predicate.test(fileProps))
                                  {
                                      String errMsg = "File '" + filename + "' does not exist";
                                      return Future.failedFuture(new NoSuchFileException(errMsg));
                                  }
                                  return Future.succeededFuture(filename);
                              });
                 });
    }