mirror of
https://github.com/cryptomator/cryptomator.git
synced 2025-03-03 16:14:10 +00:00
Refactored UnlockWorkflow
Replaced protected state methods (scheduled, etc.) with lambdas in the constructor Replaced try-multi-catch with if-instanceof in onFailed-lambda
This commit is contained in:
parent
022ba81f2f
commit
253abd4930
@ -73,6 +73,20 @@ public class UnlockWorkflow extends Task<Boolean> {
|
||||
this.successScene = successScene;
|
||||
this.invalidMountPointScene = invalidMountPointScene;
|
||||
this.errorComponent = errorComponent;
|
||||
|
||||
setOnScheduled(event -> vault.setState(VaultState.PROCESSING));
|
||||
setOnSucceeded(event -> vault.setState(VaultState.UNLOCKED));
|
||||
setOnCancelled(event -> vault.setState(VaultState.LOCKED));
|
||||
|
||||
setOnFailed(event -> {
|
||||
vault.setState(VaultState.LOCKED);
|
||||
Throwable throwable = event.getSource().getException();
|
||||
if (throwable instanceof InvalidMountPointException) {
|
||||
handleInvalidMountPoint((InvalidMountPointException) throwable);
|
||||
} else {
|
||||
handleGenericError(throwable);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -85,12 +99,6 @@ public class UnlockWorkflow extends Task<Boolean> {
|
||||
cancel(false); // set Tasks state to cancelled
|
||||
return false;
|
||||
}
|
||||
} catch (InvalidMountPointException e) {
|
||||
handleInvalidMountPoint(e);
|
||||
throw e; // rethrow to trigger correct exception handling in Task
|
||||
} catch (Exception e) {
|
||||
handleGenericError(e);
|
||||
throw e; // rethrow to trigger correct exception handling in Task
|
||||
} finally {
|
||||
wipePassword(password.get());
|
||||
wipePassword(savedPassword.orElse(null));
|
||||
@ -216,25 +224,4 @@ public class UnlockWorkflow extends Task<Boolean> {
|
||||
Arrays.fill(pw, ' ');
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void scheduled() {
|
||||
vault.setState(VaultState.PROCESSING);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void succeeded() {
|
||||
vault.setState(VaultState.UNLOCKED);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void failed() {
|
||||
vault.setState(VaultState.LOCKED);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void cancelled() {
|
||||
vault.setState(VaultState.LOCKED);
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user