Check whether File#listFiles() returns null.

The docs say this can happen for a directory if there's an I/O error.
This commit is contained in:
akwizgran
2016-09-27 15:52:57 +01:00
parent eb6189150f
commit 53d0b8b21e
6 changed files with 32 additions and 10 deletions

View File

@@ -42,14 +42,17 @@ public class AppModule {
this.application = application;
uiCallback = new UiCallback() {
@Override
public int showChoice(String[] options, String... message) {
throw new UnsupportedOperationException();
}
@Override
public boolean showConfirmationMessage(String... message) {
throw new UnsupportedOperationException();
}
@Override
public void showMessage(String... message) {
throw new UnsupportedOperationException();
}
@@ -75,24 +78,29 @@ public class AppModule {
private volatile SecretKey key = null;
@Override
public boolean databaseExists() {
if (!dir.isDirectory()) return false;
File[] files = dir.listFiles();
return files != null && files.length > 0;
}
@Override
public File getDatabaseDirectory() {
return dir;
}
@Override
public void setEncryptionKey(SecretKey key) {
this.key = key;
}
@Override
public SecretKey getEncryptionKey() {
return key;
}
@Override
public long getMaxSize() {
return Long.MAX_VALUE;
}