diff --git a/main/commons/src/main/java/org/cryptomator/common/vaults/Vault.java b/main/commons/src/main/java/org/cryptomator/common/vaults/Vault.java index 93df3aa7f..ee14e2f0e 100644 --- a/main/commons/src/main/java/org/cryptomator/common/vaults/Vault.java +++ b/main/commons/src/main/java/org/cryptomator/common/vaults/Vault.java @@ -38,6 +38,8 @@ import javafx.beans.property.BooleanProperty; import javafx.beans.property.ObjectProperty; import javafx.beans.property.SimpleBooleanProperty; import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.util.EnumSet; @@ -68,14 +70,13 @@ public class Vault { private final BooleanBinding needsMigration; private final BooleanBinding unknownError; private final StringBinding accessPoint; - private final Optional unverifiedVaultConfig; private final BooleanBinding accessPointPresent; private final BooleanProperty showingStats; private volatile Volume volume; @Inject - Vault(VaultSettings vaultSettings, Provider volumeProvider, @DefaultMountFlags StringBinding defaultMountFlags, AtomicReference cryptoFileSystem, ObjectProperty state, @Named("lastKnownException") ObjectProperty lastKnownException, VaultStats stats, Optional unverifiedVaultConfig) { + Vault(VaultSettings vaultSettings, Provider volumeProvider, @DefaultMountFlags StringBinding defaultMountFlags, AtomicReference cryptoFileSystem, ObjectProperty state, @Named("lastKnownException") ObjectProperty lastKnownException, VaultStats stats) { this.vaultSettings = vaultSettings; this.volumeProvider = volumeProvider; this.defaultMountFlags = defaultMountFlags; @@ -83,7 +84,6 @@ public class Vault { this.state = state; this.lastKnownException = lastKnownException; this.stats = stats; - this.unverifiedVaultConfig = unverifiedVaultConfig; this.displayName = Bindings.createStringBinding(this::getDisplayName, vaultSettings.displayName()); this.displayablePath = Bindings.createStringBinding(this::getDisplayablePath, vaultSettings.path()); this.locked = Bindings.createBooleanBinding(this::isLocked, state); @@ -304,7 +304,13 @@ public class Vault { } public Optional getUnverifiedVaultConfig() { - return unverifiedVaultConfig; + Path configPath = getPath().resolve(org.cryptomator.common.Constants.VAULTCONFIG_FILENAME); + try { + String token = Files.readString(configPath, StandardCharsets.US_ASCII); + return Optional.of(VaultConfig.decode(token)); + } catch (IOException e) { + return Optional.empty(); + } } public Observable[] observables() { diff --git a/main/commons/src/main/java/org/cryptomator/common/vaults/VaultModule.java b/main/commons/src/main/java/org/cryptomator/common/vaults/VaultModule.java index 4bc592691..b5c0ca533 100644 --- a/main/commons/src/main/java/org/cryptomator/common/vaults/VaultModule.java +++ b/main/commons/src/main/java/org/cryptomator/common/vaults/VaultModule.java @@ -57,20 +57,6 @@ public class VaultModule { return new SimpleObjectProperty<>(initialErrorCause); } - @Provides - @PerVault - Optional provideUnverifiedVaultConfig(VaultSettings settings) { - Path vaultRoot = settings.path().get(); - Path configPath = vaultRoot.resolve(Constants.VAULTCONFIG_FILENAME); - try { - String token = Files.readString(configPath, StandardCharsets.US_ASCII); - return Optional.of(VaultConfig.decode(token)); - } catch (IOException e) { - return Optional.empty(); - } - } - - @Provides public Volume provideVolume(Settings settings, WebDavVolume webDavVolume, FuseVolume fuseVolume, DokanyVolume dokanyVolume) { VolumeImpl preferredImpl = settings.preferredVolumeImpl().get();