Refactoring - Removing unnecessary environment variable

This commit is contained in:
Martin Beyer
2020-07-13 15:21:24 +02:00
parent dcaa6e81a3
commit 526c8328f6
3 changed files with 6 additions and 12 deletions

View File

@@ -40,7 +40,6 @@ public class Environment {
LOG.debug("cryptomator.mountPointsDir: {}", System.getProperty("cryptomator.mountPointsDir"));
LOG.debug("cryptomator.minPwLength: {}", System.getProperty("cryptomator.minPwLength"));
LOG.debug("cryptomator.buildNumber: {}", System.getProperty("cryptomator.buildNumber"));
LOG.debug("cryptomator.binaryPath: {}", System.getProperty("cryptomator.binaryPath"));
}
public boolean useCustomLogbackConfig() {
@@ -75,8 +74,6 @@ public class Environment {
return getInt("cryptomator.minPwLength", DEFAULT_MIN_PW_LENGTH);
}
public Optional<Path> getBinaryPath() { return getPath("cryptomator.binaryPath"); }
private int getInt(String propertyName, int defaultValue) {
String value = System.getProperty(propertyName);
try {

View File

@@ -18,7 +18,7 @@ abstract class AutoStartModule {
return Optional.of(new AutoStartMacStrategy(macFunctions.get()));
} else if (SystemUtils.IS_OS_WINDOWS) {
Optional<String> exeName = ProcessHandle.current().info().command();
return exeName.map(x -> new AutoStartWinStrategy(x, env));
return exeName.map(AutoStartWinStrategy::new);
} else {
return Optional.empty();
}

View File

@@ -17,11 +17,9 @@ class AutoStartWinStrategy implements AutoStartStrategy {
private static final String AUTOSTART_VALUE = "Cryptomator";
private final String exePath;
private static final String WINDOWS_START_MENU_FOLDER = "\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs";
private Environment env;
public AutoStartWinStrategy(String exePath, Environment env) {
public AutoStartWinStrategy(String exePath) {
this.exePath = exePath;
this.env = env;
}
@Override
@@ -99,9 +97,8 @@ class AutoStartWinStrategy implements AutoStartStrategy {
}
private void addShortcutOfAppToAutostartFolder() throws TogglingAutoStartWithPowershellFailedException {
String startmenueDirectory = System.getProperty("user.home") + WINDOWS_START_MENU_FOLDER + "\\Cryptomator.lnk";
String cryptomator = env.getBinaryPath().get().toString();
String createShortcutCommand = "$s=(New-Object -COM WScript.Shell).CreateShortcut('" + startmenueDirectory + "');$s.TargetPath='" + cryptomator + "';$s.Save();";
String startMenuDirectory = System.getProperty("user.home") + WINDOWS_START_MENU_FOLDER + "\\Cryptomator.lnk";
String createShortcutCommand = "$s=(New-Object -COM WScript.Shell).CreateShortcut('" + startMenuDirectory + "');$s.TargetPath='" + exePath + "';$s.Save();";
ProcessBuilder shortcutAdd = new ProcessBuilder("cmd", "/c", "Start powershell " + createShortcutCommand);
try {
shortcutAdd.start();
@@ -111,8 +108,8 @@ class AutoStartWinStrategy implements AutoStartStrategy {
}
private void removeShortcutOfAppFromAutostartFolder() throws TogglingAutoStartWithPowershellFailedException {
String startmenueDirectory = System.getProperty("user.home") + WINDOWS_START_MENU_FOLDER + "\\Cryptomator.lnk";
ProcessBuilder shortcutRemove = new ProcessBuilder("cmd", "/c del \"" + startmenueDirectory + "\"");
String startMenuDirectory = System.getProperty("user.home") + WINDOWS_START_MENU_FOLDER + "\\Cryptomator.lnk";
ProcessBuilder shortcutRemove = new ProcessBuilder("cmd", "/c del \"" + startMenuDirectory + "\"");
try {
shortcutRemove.start();
} catch (IOException e) {