Skip to content

Commit c579d01

Browse files
authored
Move HttpClient and improve switch statement (#102)
Move `HttpClient` and improve switch statement
1 parent b98967b commit c579d01

File tree

1 file changed

+13
-19
lines changed

1 file changed

+13
-19
lines changed

api/src/main/java/com/javadiscord/jdi/internal/api/DiscordRequestDispatcher.java

+13-19
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,15 @@ public class DiscordRequestDispatcher implements Runnable {
1919
: "https://discord.com/api";
2020

2121
private static final Logger LOGGER = LogManager.getLogger();
22+
private final HttpClient httpClient;
2223
private final BlockingQueue<DiscordRequestBuilder> queue;
2324
private final String botToken;
2425
private int numberOfRequestsSent;
2526
private long timeSinceLastRequest;
2627

2728
public DiscordRequestDispatcher(String botToken) {
2829
this.botToken = botToken;
30+
this.httpClient = HttpClient.newBuilder().build();
2931
this.queue = new LinkedBlockingQueue<>();
3032
this.numberOfRequestsSent = 0;
3133
this.timeSinceLastRequest = 0;
@@ -61,7 +63,7 @@ public void run() {
6163
}
6264

6365
private void sendRequest(DiscordRequestBuilder discordRequestBuilder) {
64-
try (HttpClient httpClient = HttpClient.newBuilder().build()) {
66+
try {
6567
HttpRequest.Builder requestBuilder =
6668
HttpRequest.newBuilder()
6769
.uri(
@@ -83,24 +85,16 @@ private void sendRequest(DiscordRequestBuilder discordRequestBuilder) {
8385
}
8486

8587
switch (discordRequestBuilder.getMethod()) {
86-
case HttpMethod.GET:
87-
requestBuilder.GET();
88-
break;
89-
case HttpMethod.POST:
90-
requestBuilder.POST(discordRequestBuilder.getBody());
91-
break;
92-
case HttpMethod.DELETE:
93-
requestBuilder.DELETE();
94-
break;
95-
case HttpMethod.PUT:
96-
requestBuilder.PUT(discordRequestBuilder.getBody());
97-
break;
98-
case HttpMethod.PATCH:
99-
requestBuilder.method(HttpMethod.PATCH.name(), discordRequestBuilder.getBody());
100-
break;
101-
default:
102-
throw new IllegalArgumentException(
103-
"Unsupported HTTP method: " + discordRequestBuilder.getMethod());
88+
case HttpMethod.GET -> requestBuilder.GET();
89+
case HttpMethod.POST -> requestBuilder.POST(discordRequestBuilder.getBody());
90+
case HttpMethod.DELETE -> requestBuilder.DELETE();
91+
case HttpMethod.PUT -> requestBuilder.PUT(discordRequestBuilder.getBody());
92+
case HttpMethod.PATCH ->
93+
requestBuilder.method(
94+
HttpMethod.PATCH.name(), discordRequestBuilder.getBody());
95+
default ->
96+
throw new IllegalArgumentException(
97+
"Unsupported HTTP method: " + discordRequestBuilder.getMethod());
10498
}
10599

106100
HttpRequest httpRequest = requestBuilder.build();

0 commit comments

Comments
 (0)