Skip to content
This repository was archived by the owner on Feb 9, 2022. It is now read-only.

Commit c9db684

Browse files
ExplvExplv
authored andcommitted
Fixing command execution on Linux
1 parent 1a9326c commit c9db684

File tree

11 files changed

+42
-38
lines changed

11 files changed

+42
-38
lines changed

osbot_manager/src/bot_parameters/account/OSBotAccount.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ public OSBotAccount(final String username, final String password) {
1212
}
1313

1414
@Override
15-
public final String toParameterString() {
16-
return String.format("-login \"%s:%s\"", getUsername(), getPassword());
15+
public final String[] toParameter() {
16+
return new String[]{ "-login", String.format("%s:%s", getUsername(), getPassword()) };
1717
}
1818

1919
@Override

osbot_manager/src/bot_parameters/account/RunescapeAccount.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,8 @@ private void readObject(ObjectInputStream stream) throws ClassNotFoundException,
6161
}
6262

6363
@Override
64-
public final String toParameterString() {
65-
return String.format("-bot \"%s:%s:%d\"", getUsername(), getPassword(), pin.get());
64+
public final String[] toParameter() {
65+
return new String[] { "-bot", String.format("%s:%s:%d", getUsername(), getPassword(), pin.get()) };
6666
}
6767

6868
@Override

osbot_manager/src/bot_parameters/bot/Bot.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ private void readObject(ObjectInputStream stream) throws ClassNotFoundException,
3030
}
3131

3232
@Override
33-
public String toParameterString() {
34-
return "java -jar \"" + osbotPath + "\"";
33+
public String[] toParameter() {
34+
return new String[] { "java", "-jar", osbotPath };
3535
}
3636
}

osbot_manager/src/bot_parameters/configuration/Configuration.java

Lines changed: 19 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -270,30 +270,32 @@ private void readObject(ObjectInputStream stream) throws ClassNotFoundException,
270270
}
271271

272272
@Override
273-
public final String toParameterString() {
274-
String parameterString = runescapeAccount.get().toParameterString();
273+
public final String[] toParameter() {
274+
275+
List<String> parameter = new ArrayList<>();
276+
277+
Collections.addAll(parameter, runescapeAccount.get().toParameter());
278+
275279
if (proxy.get() != null) {
276-
parameterString += " " + proxy.get().toParameterString();
280+
Collections.addAll(parameter, proxy.get().toParameter());
277281
}
278282

279283
if (memoryAllocation.get() != -1) {
280-
parameterString += " -mem " + memoryAllocation.get();
284+
Collections.addAll(parameter, "-mem", String.valueOf(memoryAllocation.get()));
281285
}
282286

283287
if (collectData.get()) {
284-
parameterString += " -data 1";
288+
Collections.addAll(parameter, "-data", "1");
285289
}
286290

287291
if (debugMode.get() && debugPort.get() != -1) {
288-
parameterString += " -debug " + debugPort.get();
292+
Collections.addAll(parameter, "-debug", String.valueOf(debugPort.get()));
289293
} else {
290-
Optional<Integer> availablePort = getAvailablePort();
291-
if (availablePort.isPresent()) {
292-
parameterString += " -debug " + availablePort.get();
293-
}
294+
getAvailablePort().ifPresent(integer -> Collections.addAll(parameter, "-debug", String.valueOf(integer)));
294295
}
295296

296297
List<String> allowParams = new ArrayList<>();
298+
297299
if (lowResourceMode.get()) {
298300
allowParams.add("lowresource");
299301
}
@@ -314,7 +316,7 @@ public final String toParameterString() {
314316
}
315317

316318
if (!allowParams.isEmpty()) {
317-
parameterString += " -allow " + String.join(",", allowParams);
319+
Collections.addAll(parameter, "-allow", String.join(",", allowParams));
318320
}
319321

320322
int worldVal;
@@ -325,10 +327,10 @@ public final String toParameterString() {
325327
}
326328

327329
if (worldVal != -1) {
328-
parameterString += " -world " + worldVal;
330+
Collections.addAll(parameter, "-world", String.valueOf(worldVal));
329331
}
330332

331-
return parameterString;
333+
return parameter.toArray(new String[parameter.size()]);
332334
}
333335

334336
private Optional<Integer> getAvailablePort() {
@@ -451,10 +453,10 @@ public List<List<String>> getCommands(final Bot bot, final OSBotAccount osBotAcc
451453
for (final Script script : scripts.get()) {
452454
List<String> command = new ArrayList<>();
453455

454-
Collections.addAll(command, bot.toParameterString().split(" "));
455-
Collections.addAll(command, osBotAccount.toParameterString().split(" "));
456-
Collections.addAll(command, this.toParameterString().split(" "));
457-
Collections.addAll(command, script.toParameterString().split(" "));
456+
Collections.addAll(command, bot.toParameter());
457+
Collections.addAll(command, osBotAccount.toParameter());
458+
Collections.addAll(command, this.toParameter());
459+
Collections.addAll(command, script.toParameter());
458460

459461
commands.add(command);
460462
}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
package bot_parameters.interfaces;
22

33
public interface BotParameter {
4-
String toParameterString();
4+
String[] toParameter();
55
}

osbot_manager/src/bot_parameters/proxy/Proxy.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,8 @@ private void readObject(ObjectInputStream stream) throws ClassNotFoundException,
4747
}
4848

4949
@Override
50-
public String toParameterString() {
51-
return String.format("-proxy %s:%d", ipAddress.get(), port.get());
50+
public String[] toParameter() {
51+
return new String[] { "-proxy", String.format("%s:%d", ipAddress.get(), port.get()) };
5252
}
5353

5454
@Override

osbot_manager/src/bot_parameters/proxy/SecuredProxy.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,8 +50,8 @@ private void readObject(ObjectInputStream stream) throws ClassNotFoundException,
5050
}
5151

5252
@Override
53-
public final String toParameterString() {
54-
return String.format("-proxy %s:%d:%s:%s", getIpAddress(), getPort(), username, password);
53+
public final String[] toParameter() {
54+
return new String[] { "-proxy", String.format("%s:%d:%s:%s", getIpAddress(), getPort(), username, password) };
5555
}
5656

5757
@Override

osbot_manager/src/bot_parameters/script/Script.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,11 @@ public final void setParameters(final String parameters) {
4646
public void setIsLocal(final boolean isLocal) { this.isLocal.set(isLocal); }
4747

4848
@Override
49-
public final String toParameterString() {
50-
if (isLocal.get()) return String.format("-script \"\\\"%s\\\":%s\"", scriptIdentifier.get(), parameters.get());
51-
else return String.format("-script \"%s:%s\"", scriptIdentifier.get(), parameters.get());
49+
public final String[] toParameter() {
50+
if (isLocal.get()) {
51+
return new String[] { "-script", String.format("\\\"%s\\\":%s", scriptIdentifier.get(), parameters.get()) };
52+
}
53+
return new String[] { "-script", String.format("%s:%s", scriptIdentifier.get(), parameters.get()) };
5254
}
5355

5456
private void writeObject(ObjectOutputStream stream) throws IOException {

osbot_manager/src/main/ExplvOSBotManager.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,11 +50,11 @@ private void showUpdateDialog() {
5050
label.setFont(new Font("Arial", 20));
5151
grid.add(label, 0, 0);
5252

53-
Hyperlink threadLink = new Hyperlink("Click here to update");
54-
threadLink.setFont(new Font("Arial", 15));
55-
threadLink.setPadding(new Insets(0, 0, 0, 0));
56-
threadLink.setOnAction(e -> getHostServices().showDocument("http://osbot.org/forum/topic/100554-explvs-osbot-manager/"));
57-
grid.add(threadLink, 0, 1);
53+
Hyperlink updateLink = new Hyperlink("Update");
54+
updateLink.setFont(new Font("Arial", 15));
55+
updateLink.setPadding(new Insets(0, 0, 0, 0));
56+
updateLink.setOnAction(e -> getHostServices().showDocument("https://github.com/Explv/osbot_manager/releases"));
57+
grid.add(updateLink, 0, 1);
5858

5959
dialog.showAndWait();
6060
}

osbot_manager/src/main/Version.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
public class Version {
1010

11-
private final static float currentVersion = 7.8f;
11+
private final static float currentVersion = 7.9f;
1212

1313
public static boolean isLatestVersion() {
1414
try {

0 commit comments

Comments
 (0)