public void diagnose() {
Objects.requireNonNull(fileName(), "the filename should not be null, " +
"you have misconfigured this service, fatal error");
final Path path =
IO.path(fileName());
puts("in diagnose");
puts("Filename :", path.toAbsolutePath());
puts("File exists? :", Files.exists(path));
puts("File writeable? :", Files.isWritable(path));
puts("Output dir :", outputDir.toAbsolutePath());
puts("Output dir exists? :", Files.exists(outputDir));
puts("Output dir writeable? :", Files.isWritable(outputDir));
if (!Files.isWritable(outputDir) || !Files.exists(outputDir)) {
error.set(true);
}
try {
FileStore fileStore = Files.getFileStore(path.getParent());
puts("Total space :", str(fileStore.getTotalSpace()));
puts("Use-able space :", str(fileStore.getUsableSpace()));
puts("Free Space :", str(fileStore.getUnallocatedSpace()));
puts("type :", fileStore.type());
puts("name :", fileStore.name());
puts("read-only :", fileStore.isReadOnly());
} catch (IOException e) {
e.printStackTrace();
}
}