From 3845fd825693b7bd54cb204112b96b4a4136f1d4 Mon Sep 17 00:00:00 2001 From: Mark Wolters Date: Fri, 5 Apr 2024 13:53:33 -0400 Subject: [PATCH] fixed issue returning dirs --- .../io/nosqlbench/nb/api/nbio/ResolverForNBIOCache.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/nb-api/src/main/java/io/nosqlbench/nb/api/nbio/ResolverForNBIOCache.java b/nb-api/src/main/java/io/nosqlbench/nb/api/nbio/ResolverForNBIOCache.java index b4147e20e..370319902 100644 --- a/nb-api/src/main/java/io/nosqlbench/nb/api/nbio/ResolverForNBIOCache.java +++ b/nb-api/src/main/java/io/nosqlbench/nb/api/nbio/ResolverForNBIOCache.java @@ -25,6 +25,7 @@ import java.io.IOException; import java.io.InputStream; import java.net.URI; import java.net.URL; +import java.nio.file.FileSystem; import java.nio.file.Files; import java.nio.file.Path; import java.security.MessageDigest; @@ -129,7 +130,7 @@ public class ResolverForNBIOCache implements ContentResolver { logger.warn(() -> "Remote checksum file " + remoteChecksumFileStr + " does not exist"); return cachePath; } else { - Path checksumPath = Path.of(cachePath.toString().substring(0, cachePath.toString().indexOf('.')) + ".sha256"); + Path checksumPath = Path.of(cachePath.toString().substring(0, cachePath.toString().lastIndexOf('.')) + ".sha256"); Files.writeString(checksumPath, localChecksumStr); logger.debug(() -> "Generated local checksum and saved to cache at " + checksumPath); String remoteChecksum = new String(checksum.getInputStream().readAllBytes()); @@ -181,7 +182,7 @@ public class ResolverForNBIOCache implements ContentResolver { * 5. If checksums match return the local file * 6. If checksums do not match remove the local file and go to "File is not in cache" operations */ - Path checksumPath = Path.of(cachePath.toString().substring(0, cachePath.toString().indexOf('.')) + ".sha256"); + Path checksumPath = Path.of(cachePath.toString().substring(0, cachePath.toString().lastIndexOf('.')) + ".sha256"); if (!Files.isReadable(checksumPath)) { try { Files.writeString(checksumPath, generateSHA256Checksum(cachePath.toString())); @@ -260,8 +261,8 @@ public class ResolverForNBIOCache implements ContentResolver { public List resolveDirectory(URI uri) { List dirs = new ArrayList<>(); - Path path = resolvePath(uri); - if (path!=null && Files.isDirectory(path)) { + Path path = Path.of(cache + uri.getPath()); + if (Files.isDirectory(path)) { dirs.add(path); } return dirs;