From 12a21bbb71fb2169450bf70861da1ba38a65ff1b Mon Sep 17 00:00:00 2001 From: JaniruTEC Date: Thu, 17 Feb 2022 02:37:25 +0100 Subject: [PATCH 1/2] Added "--version" (short: "-v") --- .../org/cryptomator/launcher/Cryptomator.java | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/cryptomator/launcher/Cryptomator.java b/src/main/java/org/cryptomator/launcher/Cryptomator.java index 5502d804a..337d1af22 100644 --- a/src/main/java/org/cryptomator/launcher/Cryptomator.java +++ b/src/main/java/org/cryptomator/launcher/Cryptomator.java @@ -20,7 +20,7 @@ import org.slf4j.LoggerFactory; import javax.inject.Inject; import javax.inject.Named; import javax.inject.Singleton; -import java.io.IOException; +import java.util.Arrays; import java.util.List; import java.util.Optional; import java.util.concurrent.CountDownLatch; @@ -54,6 +54,21 @@ public class Cryptomator { } public static void main(String[] args) { + var printVersion = Optional.ofNullable(args) // + .stream() //Streams either one element (the args-array) or zero elements + .flatMap(Arrays::stream) // + .anyMatch(arg -> "-v".equals(arg) || "--version".equals(arg)); + + if(printVersion) { + var appVer = Optional.ofNullable(System.getProperty("cryptomator.appVersion")); + var buildNumber = Optional.ofNullable(System.getProperty("cryptomator.buildNumber")); + + //Reduce noise for parsers by using System.out directly + System.out.printf("Cryptomator version %s (build %s)%n", appVer.orElse(""), buildNumber.orElse("")); + System.exit(0); + return; + } + int exitCode = CRYPTOMATOR_COMPONENT.application().run(args); LOG.info("Exit {}", exitCode); System.exit(exitCode); // end remaining non-daemon threads. From bcb2b088ba6856c4ae6aa7667a0c5fb80869171a Mon Sep 17 00:00:00 2001 From: JaniruTEC Date: Wed, 13 Apr 2022 00:46:11 +0200 Subject: [PATCH 2/2] Applied suggestions from code review --- src/main/java/org/cryptomator/launcher/Cryptomator.java | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/main/java/org/cryptomator/launcher/Cryptomator.java b/src/main/java/org/cryptomator/launcher/Cryptomator.java index 07a022d1d..3cd5ec727 100644 --- a/src/main/java/org/cryptomator/launcher/Cryptomator.java +++ b/src/main/java/org/cryptomator/launcher/Cryptomator.java @@ -58,13 +58,12 @@ public class Cryptomator { .flatMap(Arrays::stream) // .anyMatch(arg -> "-v".equals(arg) || "--version".equals(arg)); - if(printVersion) { - var appVer = Optional.ofNullable(System.getProperty("cryptomator.appVersion")); - var buildNumber = Optional.ofNullable(System.getProperty("cryptomator.buildNumber")); + if (printVersion) { + var appVer = System.getProperty("cryptomator.appVersion", "SNAPSHOT"); + var buildNumber = System.getProperty("cryptomator.buildNumber", "SNAPSHOT"); //Reduce noise for parsers by using System.out directly - System.out.printf("Cryptomator version %s (build %s)%n", appVer.orElse(""), buildNumber.orElse("")); - System.exit(0); + System.out.printf("Cryptomator version %s (build %s)%n", appVer, buildNumber); return; }