summaryrefslogtreecommitdiff
path: root/src/main/java/io/skas/melbjvm
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/io/skas/melbjvm')
-rw-r--r--src/main/java/io/skas/melbjvm/nio2/App.java9
-rw-r--r--src/main/java/io/skas/melbjvm/nio2/Nio2MetaDataLoggingUtils.java13
2 files changed, 21 insertions, 1 deletions
diff --git a/src/main/java/io/skas/melbjvm/nio2/App.java b/src/main/java/io/skas/melbjvm/nio2/App.java
index f6b986a..597d610 100644
--- a/src/main/java/io/skas/melbjvm/nio2/App.java
+++ b/src/main/java/io/skas/melbjvm/nio2/App.java
@@ -18,10 +18,17 @@ public class App {
public static void main(String[] args) throws IOException {
- final Path path = Paths.get("/tmp", "monkeys");
+ final Path path;
+
+ if (args.length > 0) {
+ path = Paths.get(args[0]);
+ } else {
+ path = Paths.get(System.getProperty("java.io.tmpdir"));
+ }
if (Files.exists(path, LinkOption.NOFOLLOW_LINKS)) {
+ Nio2MetaDataLoggingUtils.logSupportedViews(path);
Nio2MetaDataLoggingUtils.logFileStoreAttributes(path);
Nio2MetaDataLoggingUtils.logBasicFileAttributes(path);
Nio2MetaDataLoggingUtils.logDosFileAttributes(path);
diff --git a/src/main/java/io/skas/melbjvm/nio2/Nio2MetaDataLoggingUtils.java b/src/main/java/io/skas/melbjvm/nio2/Nio2MetaDataLoggingUtils.java
index 0133574..d0a095b 100644
--- a/src/main/java/io/skas/melbjvm/nio2/Nio2MetaDataLoggingUtils.java
+++ b/src/main/java/io/skas/melbjvm/nio2/Nio2MetaDataLoggingUtils.java
@@ -5,11 +5,14 @@ import org.slf4j.LoggerFactory;
import java.io.IOException;
import java.nio.file.FileStore;
+import java.nio.file.FileSystem;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.attribute.*;
import java.util.Set;
+import static com.sun.deploy.util.StringUtils.join;
+
/**
* @author Szymon Szukalski [szymon.szukalski@gmail.com]
*/
@@ -24,6 +27,16 @@ public class Nio2MetaDataLoggingUtils {
public static final String DOS_VIEW = "dos";
public static final String POSIX_VIEW = "posix";
+ public static void logSupportedViews(Path path) {
+
+ final FileSystem fileSystem = path.getFileSystem();
+ final Set<String> supportedViews = fileSystem.supportedFileAttributeViews();
+
+ LOG.info("File Attribute Views supported by the FileSystem that created {}", path);
+ LOG.info(" {}", join(supportedViews, ", "));
+
+ }
+
public static void logBasicFileAttributes(Path path) throws IOException {
final FileStore fileStore = Files.getFileStore(path);