Skip to content

Commit ba722ba

Browse files
committed
Fix example
1 parent f98b3b7 commit ba722ba

File tree

4 files changed

+43
-13
lines changed

4 files changed

+43
-13
lines changed

annotations/src/main/java/com/javadiscord/jdi/core/processor/loader/SlashCommandLoader.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ private void loadInteractionListeners() {
3838
clazz, method, method.getAnnotation(SlashCommand.class).name()
3939
);
4040
} else {
41-
LOGGER.error("{} failed validation", method.getName());
41+
throw new RuntimeException(method.getName() + " failed validation");
4242
}
4343
}
4444
}

core/src/main/java/com/javadiscord/jdi/core/interaction/SlashCommandEvent.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
import com.javadiscord.jdi.core.models.guild.Interaction;
1616
import com.javadiscord.jdi.core.models.guild.InteractionData;
1717
import com.javadiscord.jdi.core.models.guild.InteractionType;
18+
import com.javadiscord.jdi.core.models.guild.ResolvedData;
1819
import com.javadiscord.jdi.core.models.message.embed.Embed;
1920
import com.javadiscord.jdi.core.models.user.User;
2021
import com.javadiscord.jdi.internal.api.DiscordResponseFuture;
@@ -133,6 +134,10 @@ public InteractionData interactionData() {
133134
return interaction.data();
134135
}
135136

137+
public ResolvedData resolvedData() {
138+
return interactionData().resolved();
139+
}
140+
136141
public Optional<ApplicationCommandOption> option(String name) {
137142
InteractionData interactionData = interaction.data();
138143
ApplicationCommandOption[] options = interactionData.options();
@@ -147,4 +152,8 @@ public Optional<ApplicationCommandOption> option(String name) {
147152
public ApplicationCommandOption[] options() {
148153
return interaction.data().options();
149154
}
155+
156+
public Interaction interaction() {
157+
return interaction;
158+
}
150159
}

example/lj-discord-bot/src/main/java/com/javadiscord/bot/Main.java

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,15 @@
11
package com.javadiscord.bot;
22

33
import com.javadiscord.bot.utils.chatgpt.ChatGPT;
4+
import com.javadiscord.bot.utils.docker.DockerCommandRunner;
5+
import com.javadiscord.bot.utils.docker.DockerSessions;
46
import com.javadiscord.bot.utils.jshell.JShellService;
57
import com.javadiscord.jdi.core.Discord;
68
import com.javadiscord.jdi.core.annotations.Component;
79

10+
import com.github.dockerjava.api.DockerClient;
11+
import com.github.dockerjava.core.DockerClientBuilder;
12+
813
public class Main {
914
public static void main(String[] args) {
1015
Discord discord = new Discord(System.getenv("BOT_TOKEN"));
@@ -20,4 +25,22 @@ public static ChatGPT chatGpt() {
2025
public static JShellService jShellService() {
2126
return new JShellService();
2227
}
28+
29+
private static DockerClient dockerClient =
30+
DockerClientBuilder.getInstance("tcp://localhost:2375").build();
31+
32+
@Component
33+
public static DockerClient dockerClient() {
34+
return dockerClient;
35+
}
36+
37+
@Component
38+
public static DockerCommandRunner dockerCommandRunner() {
39+
return new DockerCommandRunner(dockerClient);
40+
}
41+
42+
@Component
43+
public static DockerSessions dockerSessions() {
44+
return new DockerSessions(dockerClient);
45+
}
2346
}

example/lj-discord-bot/src/main/java/com/javadiscord/bot/commands/slash/LinuxCommand.java

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import com.javadiscord.bot.utils.docker.*;
1313
import com.javadiscord.jdi.core.CommandOptionType;
1414
import com.javadiscord.jdi.core.annotations.CommandOption;
15+
import com.javadiscord.jdi.core.annotations.Inject;
1516
import com.javadiscord.jdi.core.annotations.SlashCommand;
1617
import com.javadiscord.jdi.core.interaction.SlashCommandEvent;
1718
import com.javadiscord.jdi.core.models.application.ApplicationCommandOption;
@@ -29,19 +30,16 @@ public class LinuxCommand {
2930
private static final ScheduledExecutorService EXECUTOR_SERVICE =
3031
Executors.newSingleThreadScheduledExecutor();
3132

32-
private final DockerClient dockerClient;
33-
public final DockerSessions dockerSessions;
34-
private final DockerCommandRunner commandRunner;
33+
@Inject
34+
private DockerClient dockerClient;
3535

36-
public LinuxCommand(
37-
DockerClient dockerClient,
38-
DockerSessions dockerSessions,
39-
DockerCommandRunner commandRunner
40-
) {
41-
this.dockerClient = dockerClient;
42-
this.dockerSessions = dockerSessions;
43-
this.commandRunner = commandRunner;
36+
@Inject
37+
private DockerSessions dockerSessions;
4438

39+
@Inject
40+
private DockerCommandRunner commandRunner;
41+
42+
public LinuxCommand() {
4543
Runtime.getRuntime()
4644
.addShutdownHook(
4745
new Thread(
@@ -97,7 +95,7 @@ private void handleLinuxCommand(SlashCommandEvent event, String command, User me
9795

9896
Embed embed =
9997
new Embed.Builder()
100-
.author(new EmbedAuthor(member.asMention(), null, null, null))
98+
.author(new EmbedAuthor(member.displayName(), null, null, null))
10199
.description(shortenOutput(reply))
102100
.color(Color.RED)
103101
.build();

0 commit comments

Comments
 (0)