mirror of
https://github.com/xpipe-io/xpipe.git
synced 2026-05-04 03:40:32 +00:00
Rework [stage]
This commit is contained in:
@@ -19,7 +19,6 @@ public class AppArguments {
|
||||
|
||||
List<String> rawArgs;
|
||||
List<String> resolvedArgs;
|
||||
XPipeDaemonMode modeArg;
|
||||
List<String> openArgs;
|
||||
|
||||
private static final Pattern PROPERTY_PATTERN = Pattern.compile("^-[DP](.+)=(.+)$");
|
||||
@@ -28,7 +27,7 @@ public class AppArguments {
|
||||
var rawArgs = Arrays.asList(args);
|
||||
var resolvedArgs = Arrays.asList(parseProperties(args));
|
||||
var command = LauncherCommand.resolveLauncher(resolvedArgs.toArray(String[]::new));
|
||||
return new AppArguments(rawArgs, resolvedArgs, command.mode, command.inputs);
|
||||
return new AppArguments(rawArgs, resolvedArgs, command.inputs);
|
||||
}
|
||||
|
||||
private static String[] parseProperties(String[] args) {
|
||||
@@ -60,13 +59,6 @@ public class AppArguments {
|
||||
@CommandLine.Parameters(paramLabel = "<input>")
|
||||
final List<String> inputs = List.of();
|
||||
|
||||
@CommandLine.Option(
|
||||
names = {"--mode"},
|
||||
description = "The mode to launch the daemon in or switch too",
|
||||
paramLabel = "<mode id>",
|
||||
converter = ModeConverter.class)
|
||||
XPipeDaemonMode mode;
|
||||
|
||||
public static LauncherCommand resolveLauncher(String[] args) {
|
||||
var cmd = new CommandLine(new LauncherCommand());
|
||||
cmd.setExecutionExceptionHandler((ex, commandLine, parseResult) -> {
|
||||
|
||||
@@ -194,7 +194,6 @@ public class AppProperties {
|
||||
.tag("raw", arguments.getRawArgs())
|
||||
.tag("resolved", arguments.getResolvedArgs())
|
||||
.tag("resolvedCommand", arguments.getOpenArgs())
|
||||
.tag("resolvedMode", arguments.getModeArg())
|
||||
.handle();
|
||||
|
||||
for (var e : System.getProperties().entrySet()) {
|
||||
|
||||
@@ -63,8 +63,7 @@ public class AppRestart {
|
||||
var dataDir = AppProperties.get().getDataDir();
|
||||
var exec = createBackgroundLaunchCommand(
|
||||
List.of(
|
||||
"--mode",
|
||||
"gui",
|
||||
"-Dio.xpipe.app.mode=gui",
|
||||
"-Dio.xpipe.app.acceptEula=true",
|
||||
"-Dio.xpipe.app.dataDir=\"" + dataDir + "\"",
|
||||
"-Dio.xpipe.app.restarted=true"),
|
||||
@@ -80,8 +79,7 @@ public class AppRestart {
|
||||
var dataDir = AppProperties.get().getDataDir();
|
||||
var exec = createTerminalLaunchCommand(
|
||||
List.of(
|
||||
"--mode",
|
||||
"gui",
|
||||
"-Dio.xpipe.app.mode=gui",
|
||||
"-Dio.xpipe.app.acceptEula=true",
|
||||
"-Dio.xpipe.app.dataDir=\"" + dataDir + "\"",
|
||||
"-Dio.xpipe.app.restarted=true"),
|
||||
|
||||
@@ -136,14 +136,6 @@ public abstract class OperationMode {
|
||||
return XPipeDaemonMode.GUI;
|
||||
}
|
||||
|
||||
var arg = AppProperties.get().getArguments().getModeArg();
|
||||
if (arg != null) {
|
||||
event.tag("mode", arg.getDisplayName())
|
||||
.tag("reason", "modeArgPassed")
|
||||
.handle();
|
||||
return arg;
|
||||
}
|
||||
|
||||
var prop = AppProperties.get().getExplicitMode();
|
||||
if (prop != null) {
|
||||
event.tag("mode", prop.getDisplayName())
|
||||
|
||||
@@ -16,6 +16,6 @@ public class LocalExtensionTest extends ExtensionTest {
|
||||
}
|
||||
|
||||
var mode = OsType.getLocal().equals(OsType.WINDOWS) ? "tray" : "background";
|
||||
OperationMode.init(new String[] {"--mode", mode});
|
||||
OperationMode.init(new String[] {"-Dio.xpipe.app.mode=" + mode});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -33,7 +33,7 @@ public class XPipeInstallation {
|
||||
public static String createExternalAsyncLaunchCommand(
|
||||
String installationBase, XPipeDaemonMode mode, String arguments, boolean restart) {
|
||||
var suffix = (arguments != null ? " " + arguments : "");
|
||||
var modeOption = mode != null ? " --mode " + mode.getDisplayName() : "";
|
||||
var modeOption = mode != null ? " -Dio.xpipe.app.mode=" + mode.getDisplayName() : "";
|
||||
if (OsType.getLocal().equals(OsType.LINUX)) {
|
||||
return "nohup \"" + installationBase + "/bin/xpiped\"" + modeOption + suffix + "</dev/null >/dev/null 2>&1 & disown";
|
||||
} else if (OsType.getLocal().equals(OsType.MACOS)) {
|
||||
@@ -51,7 +51,7 @@ public class XPipeInstallation {
|
||||
|
||||
public static String createExternalLaunchCommand(String command, String arguments, XPipeDaemonMode mode) {
|
||||
var suffix = (arguments != null ? " " + arguments : "");
|
||||
var modeOption = mode != null ? " --mode " + mode.getDisplayName() : null;
|
||||
var modeOption = mode != null ? " -Dio.xpipe.app.mode=" + mode.getDisplayName() : "";
|
||||
return "\"" + command + "\"" + modeOption + suffix;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user