Skip to content

Commit 82e0457

Browse files
authored
Create Poll and Voice API (#82)
* Poll API * Voice API
1 parent c657c38 commit 82e0457

File tree

5 files changed

+63
-2
lines changed

5 files changed

+63
-2
lines changed

src/main/java/com/javadiscord/jdi/internal/api/auto_moderation/GetAutoModerationRulesRequest.java renamed to src/main/java/com/javadiscord/jdi/internal/api/auto_moderation/ListAutoModerationRulesRequest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import com.javadiscord.jdi.internal.api.DiscordRequest;
44
import com.javadiscord.jdi.internal.api.DiscordRequestBuilder;
55

6-
public record GetAutoModerationRulesRequest(long guildId) implements DiscordRequest {
6+
public record ListAutoModerationRulesRequest(long guildId) implements DiscordRequest {
77
@Override
88
public DiscordRequestBuilder create() {
99
return new DiscordRequestBuilder()

src/main/java/com/javadiscord/jdi/internal/api/guild_scheduled_event/GetScheduledEventsRequest.java renamed to src/main/java/com/javadiscord/jdi/internal/api/guild_scheduled_event/ListScheduledEventsRequest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
import com.javadiscord.jdi.internal.api.DiscordRequest;
88
import com.javadiscord.jdi.internal.api.DiscordRequestBuilder;
99

10-
public record GetScheduledEventsRequest(long guildId, Optional<Boolean> withUserCount)
10+
public record ListScheduledEventsRequest(long guildId, Optional<Boolean> withUserCount)
1111
implements DiscordRequest {
1212
@Override
1313
public DiscordRequestBuilder create() {
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
package com.javadiscord.jdi.internal.api.poll;
2+
3+
import com.javadiscord.jdi.internal.api.DiscordRequest;
4+
import com.javadiscord.jdi.internal.api.DiscordRequestBuilder;
5+
6+
public record EndPollRequest(long channelId, long messageId) implements DiscordRequest {
7+
8+
@Override
9+
public DiscordRequestBuilder create() {
10+
return new DiscordRequestBuilder()
11+
.path("/channels/%s/polls/%s/expire".formatted(channelId, messageId))
12+
.post();
13+
}
14+
}
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
package com.javadiscord.jdi.internal.api.poll;
2+
3+
import java.util.Optional;
4+
5+
import com.javadiscord.jdi.internal.api.DiscordRequest;
6+
import com.javadiscord.jdi.internal.api.DiscordRequestBuilder;
7+
8+
public record GetAnswerVotersRequest(
9+
long channelId,
10+
long messageId,
11+
long answerId,
12+
Optional<Long> after,
13+
Optional<Integer> limit
14+
) implements DiscordRequest {
15+
16+
public GetAnswerVotersRequest {
17+
if (limit.isPresent() && (limit.get() > 100 || limit.get() < 0)) {
18+
throw new IllegalArgumentException("limit must be between 1-100");
19+
}
20+
}
21+
22+
@Override
23+
public DiscordRequestBuilder create() {
24+
DiscordRequestBuilder builder = new DiscordRequestBuilder()
25+
.path("/channels/%s/polls/%s/answers/%s".formatted(channelId, messageId, answerId))
26+
.get();
27+
28+
after.ifPresent(val -> builder.queryParam("after", val));
29+
limit.ifPresent(val -> builder.queryParam("limit", val));
30+
31+
return builder;
32+
}
33+
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
package com.javadiscord.jdi.internal.api.voice;
2+
3+
import com.javadiscord.jdi.internal.api.DiscordRequest;
4+
import com.javadiscord.jdi.internal.api.DiscordRequestBuilder;
5+
6+
public record ListVoiceRegionsRequest() implements DiscordRequest {
7+
8+
@Override
9+
public DiscordRequestBuilder create() {
10+
return new DiscordRequestBuilder()
11+
.path("/voice/regions")
12+
.get();
13+
}
14+
}

0 commit comments

Comments
 (0)