Commit Graph
205 Commits
Author SHA1 Message Date
JaniruTEC 4110057fa1 Refactored multiple classes
Refactored UnlockWorkflow, CustomMountPointChooser, DokanyVolume and UnlockInvalidMountPointController

Changed UnlockWorkflow#handleGenericError() to accept Throwables

Added check for parent to CustomMountPointChooser (when using FUSE on Win)

Removed legacy constant from DokanyVolume

Added asserts to UnlockInvalidMountPointController and UnlockWorkflow
2020-08-16 18:40:11 +02:00
JaniruTEC 430da2b78d Implemented MPC-System in FuseVolume and DokanyVolume, did refactoring
Implemented MPC-System in FuseVolume and DokanyVolume
Removed methods from FuseVol and DokanyVol
Renamed methods
Added chooser logic instead

Added imports for VolumeException to multiple classes
Added support for throwing and handling of InvalidMountPointException from Volume up to UnlockWorkflow (changed method signatures, added try-catchs, etc.)
2020-08-12 23:42:38 +02:00
JaniruTEC 51047dcbce Added additional debug messages 2020-08-12 23:42:38 +02:00
JaniruTEC 708bcaa630 Updated CustomMountPointChooser to use MPR instead of OS-Checks
Updated CustomMountPointChooser to use MountPointRequirements instead of OS-Checks.

This led to the discovery of the bug that was fixed in 724b20c826.
2020-08-12 23:42:37 +02:00
JaniruTEC 724b20c826 Fixed possible racecondition at Vault initialization
Fixed possible racecondition at Vault initialization: VaulSettings were read before the Vault was fully initialized resulting in breakage of the code if the excact order was to be changed.
2020-08-12 21:43:24 +02:00
JaniruTEC b7f2fb0bdf Added cleanup to TemporaryMountPointChooser 2020-08-11 23:35:43 +02:00
JaniruTEC 222ffd8c53 Implemented MountPointChooserModule 2020-08-11 23:35:42 +02:00
JaniruTEC 00e0a0f79a Fixed doc for MountPointChooser 2020-08-11 23:35:42 +02:00
JaniruTEC d6bbc4383b Added implementations for MountPointChooser
Added AvailableDriveLetterChooser for automatic DriveLetter-choice
Added CustomDriveLetterChooser for a chosen DriveLetter
Added CustomMountPointChooser for a chosen directory
Added TemporaryMountPointChooser for automatic directory-choice
2020-08-11 23:03:12 +02:00
JaniruTEC b51a2602a9 Documented MountPointChooser 2020-08-11 23:03:12 +02:00
JaniruTEC c3fbddc671 Refactored PerVault, Vault and VaultSettings
Made @`PerVault public
Added import for VaultException to Vault
Added convenience method to VaultSettings
2020-08-11 22:26:15 +02:00
JaniruTEC ce262b691a Added base classes for MountPointChoosers and added module to component 2020-08-11 22:26:15 +02:00
JaniruTEC 597899d2bf Fixed random set order and updated #getAvailableDriveLetter()
Fixed bug introduced by 32a810fe1d:
The Set of existing DriveLetters was in random order because Collectors#toUnmodifiableSet is an unordered collector.

Changed #getAvailableDriveLetter() to use Stream#findFirst() instead of #findAny()
2020-08-11 02:24:44 +02:00
JaniruTEC 4f2120b729 Added support for folderbased backup-mountpoint to DokanyVol and FuseVol 2020-08-03 22:20:20 +02:00
JaniruTEC 32a810fe1d Changed FuseVolume to choose a DriveLetter instead of a folder
Changed FuseVolume to choose a DriveLetter instead of a folder if the the mountpoint is chosen by the app.
Reworked priorities when choosing
Changed DokanyVolume to use the new methods supplied by WindowsDriveLetters
2020-07-29 22:15:12 +02:00
JaniruTEC 570482521a Delegated choice of DriveLetter to WDL and made internal Set immutable
Delegated choice of DriveLetter to WindowsDriveLetters
Made internal Set ("C_TO_Z") immutable, that is returned by getAvailableDriveLetters()
Changed direct reference to C_TO_Z to use getAvailableDriveLetters() instead
2020-07-29 22:14:51 +02:00
JaniruTEC 8374599183 Modified creation of temporary mountpoint, fixed bugs, added comments
Changed FuseVolume#prepareTemporaryMountPoint to handle FUSE on Windows correctly (WinFSP requires the folder to NOT exist...)
See: https://github.com/billziss-gh/winfsp/issues/320

Added comments
Fixed bug: Message showing a malformed path
2020-07-26 23:03:36 +02:00
JaniruTEC a1b375316c Specified the messages of failed UnlockWorkflows
Specified the messages of failed UnlockWorkflows by adding the ability to distinguish between the different MountPointRequirements

Translation for all languages but German and Englisch required
2020-07-20 22:06:15 +02:00
JaniruTEC dae2814b0f Added MountPointRequirement-Enum
Added MountPointRequirement-Enum and added method getMountPointRequirement() to Volume (and all implementing classes) to query the requirment for the specific VolumeProvider.
2020-07-20 22:01:10 +02:00
JaniruTEC 341a98848d Modified check of provided mountpoint
Changed FuseVolume#checkProvidedMountPoint to handle FUSE on Windows correctly (WinFSP requires the folder to NOT exist...)
2020-07-20 22:00:35 +02:00
JaniruTEC 902e66906a Refactored method FuseVolume#prepareTemporaryMountPoint
Refactored method FuseVolume#prepareTemporaryMountPoint to be more readable (removed duplicated code)
2020-07-20 21:55:49 +02:00
JaniruTEC c59d3cd03f Removed check for OS from FuseVolume#isSupportedStatic 2020-07-20 21:23:35 +02:00
JaniruTEC 45f6caa7bd Added basic support for FUSE-Mounting on Windows 2020-07-18 19:05:18 +02:00
Armin Schrenk e5ce3cb62d closes #1254 2020-06-19 15:57:12 +02:00
Sebastian Stenzel 75f360903c recheck vault state when focusing window
fixes #1190
fixes #1110
fixes #1139
2020-05-11 08:08:15 +02:00
Sebastian Stenzel d2189d379c Using switch expressions 2020-05-11 07:47:15 +02:00
Sebastian Stenzel 86906d0049 fixes #1083 2020-05-07 16:45:24 +02:00
Sebastian Stenzel 93011dc754 cleanup 2020-05-07 16:33:05 +02:00
Tobias Hagemann 9b528a05b5 localized display name of ui themes, now actually use vaultOptions.mount.winDriveLetterOccupied localizations 2020-04-30 14:42:51 +02:00
Sebastian Stenzel 3618c4b8db Merge branch 'feature/NewMigrationFlow' into develop 2020-04-29 16:14:44 +02:00
Sebastian Stenzel bb681fa6d9 fixes #1116, at least properly handle errors if the underlying file system doesn't support migration 2020-04-29 14:59:16 +02:00
Sebastian Stenzel 5721b63135 fixes #1115 2020-04-28 10:36:35 +02:00
Sebastian Stenzel c99e0ea656 Determine path length limitations during unlock 2020-04-28 09:48:25 +02:00
Tobias Hagemann b882296c19 fixes #1123 2020-04-24 11:21:59 +02:00
Sebastian Stenzel 37fcae8f0e replaced some "old" switch statements by switch expressions 2020-04-23 14:21:41 +02:00
Sebastian Stenzel 3b690dfc6e More resilient loading of settings.json 2020-04-21 12:53:36 +02:00
Sebastian Stenzel 243c74b0cb Show stack trace in UI for vaults in error state 2020-04-21 12:38:36 +02:00
Sebastian Stenzel 3eee522897 Log cause if a vault is in error state
[ci skip]
2020-04-20 15:09:32 +02:00
Sebastian Stenzel 5b2af73c50 Merge branch 'master' into develop 2020-04-16 13:05:34 +02:00
Sebastian Stenzel 128176db1f Added posibility to add build number to "about" dialog 2020-03-26 15:09:29 +01:00
Sebastian Stenzel 84bf7f0332 Preparing 1.5.0 2020-03-12 15:26:10 +01:00
Tobias Hagemann 96a3c025ab hide access point in reveal button if it's empty 2020-03-11 14:07:40 +01:00
Sebastian Stenzel 7f8659afed did some more TODOs 2020-03-09 12:12:35 +01:00
Sebastian Stenzel fca793e403 Added "Vault Missing" screen 2020-03-06 16:05:16 +01:00
Sebastian Stenzel d2a27c782d No longer warn about this method invocation 2020-02-20 11:09:52 +01:00
Sebastian Stenzel 833bb085e6 Using disting ExecutorService and ScheduledExecutorService since the latter doesn't scale beyond its pre-defined number of core threads
fixes #1051
2020-01-15 13:07:19 +01:00
Tobias Hagemann 62cc454367 updated license public key 2020-01-09 10:35:27 +01:00
Sebastian Stenzel 67485b76af Make sure that adding a vault located at ~/foo is noop when a vault located at /home/user/foo already exists
fixes #1032
2020-01-08 16:50:08 +01:00
Sebastian Stenzel a2f3f5d254 fixes #1018, references #979 2019-12-18 14:58:36 +01:00
Sebastian Stenzel 1a4d1fffb3 shutdown logback manually 2019-12-11 13:53:32 +01:00