Skip to content

Bump net.dv8tion:JDA from 5.2.1 to 5.5.1 #1236

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 3 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion application/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ dependencies {
implementation project(':utils')
implementation project(':formatter')

implementation 'net.dv8tion:JDA:5.2.1'
implementation 'net.dv8tion:JDA:5.5.1'

implementation 'org.apache.logging.log4j:log4j-core:2.24.3'
runtimeOnly 'org.apache.logging.log4j:log4j-slf4j18-impl:2.18.0'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
import net.dv8tion.jda.api.events.interaction.component.ButtonInteractionEvent;
import net.dv8tion.jda.api.events.interaction.component.EntitySelectInteractionEvent;
import net.dv8tion.jda.api.events.interaction.component.StringSelectInteractionEvent;
import net.dv8tion.jda.api.interactions.InteractionContextType;
import net.dv8tion.jda.api.interactions.commands.Command;
import net.dv8tion.jda.api.interactions.commands.build.CommandData;
import org.jetbrains.annotations.Contract;
Expand All @@ -15,6 +16,7 @@

import java.util.List;
import java.util.Objects;
import java.util.Set;

/**
* Adapter implementation of a {@link BotCommand}. The minimal setup only requires implementation of
Expand Down Expand Up @@ -51,7 +53,14 @@ public abstract class BotCommandAdapter implements BotCommand {
* @param visibility the visibility of the command
*/
protected BotCommandAdapter(CommandData data, CommandVisibility visibility) {
this.data = data.setGuildOnly(visibility == CommandVisibility.GUILD);
this.data = data;

Set<InteractionContextType> contexts = switch (visibility) {
case GUILD -> Set.of(InteractionContextType.GUILD);
case GLOBAL -> InteractionContextType.ALL;
};

data.setContexts(contexts);
this.visibility = Objects.requireNonNull(visibility, "The visibility shouldn't be null");

name = data.getName();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,9 +31,9 @@
import net.dv8tion.jda.api.requests.SequentialRestRateLimiter;
import net.dv8tion.jda.api.requests.restaction.CacheRestAction;
import net.dv8tion.jda.api.requests.restaction.interactions.ReplyCallbackAction;
import net.dv8tion.jda.api.utils.AttachmentProxy;
import net.dv8tion.jda.api.utils.ConcurrentSessionController;
import net.dv8tion.jda.api.utils.FileUpload;
import net.dv8tion.jda.api.utils.NamedAttachmentProxy;
import net.dv8tion.jda.api.utils.cache.CacheFlag;
import net.dv8tion.jda.api.utils.messages.MessageCreateData;
import net.dv8tion.jda.api.utils.messages.MessageEditData;
Expand Down Expand Up @@ -770,7 +770,7 @@ public Message clientMessageToReceivedMessageMock(MessageCreateData clientMessag
private Message.Attachment clientAttachmentToReceivedAttachmentMock(
FileUpload clientAttachment) {
Message.Attachment receivedAttachment = mock(Message.Attachment.class);
AttachmentProxy attachmentProxy = mock(AttachmentProxy.class);
NamedAttachmentProxy attachmentProxy = mock(NamedAttachmentProxy.class);

when(receivedAttachment.getJDA()).thenReturn(jda);
when(receivedAttachment.getFileName()).thenReturn(clientAttachment.getName());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,19 @@
import net.dv8tion.jda.api.entities.Member;
import net.dv8tion.jda.api.entities.User;
import net.dv8tion.jda.api.events.interaction.command.SlashCommandInteractionEvent;
import net.dv8tion.jda.api.interactions.IntegrationOwners;
import net.dv8tion.jda.api.interactions.InteractionContextType;
import net.dv8tion.jda.api.interactions.commands.OptionType;
import net.dv8tion.jda.api.interactions.commands.build.OptionData;
import net.dv8tion.jda.api.interactions.commands.build.SubcommandData;
import net.dv8tion.jda.api.utils.data.DataObject;
import net.dv8tion.jda.internal.JDAImpl;
import net.dv8tion.jda.internal.interactions.IntegrationOwnersImpl;
import net.dv8tion.jda.internal.interactions.command.SlashCommandInteractionImpl;

import org.togetherjava.tjbot.features.SlashCommand;
import org.togetherjava.tjbot.jda.payloads.PayloadChannel;
import org.togetherjava.tjbot.jda.payloads.PayloadGuild;
import org.togetherjava.tjbot.jda.payloads.PayloadMember;
import org.togetherjava.tjbot.jda.payloads.PayloadUser;
import org.togetherjava.tjbot.jda.payloads.slashcommand.PayloadSlashCommand;
Expand All @@ -28,6 +32,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.function.Supplier;
import java.util.function.UnaryOperator;
import java.util.stream.Collectors;
Expand Down Expand Up @@ -278,6 +283,8 @@ private PayloadSlashCommand createEvent() {
"1099511627775", List.of(), false, false, false, null, false, user);
PayloadChannel channel = new PayloadChannel(channelId, 1);

PayloadGuild guild = new PayloadGuild(Long.parseLong(guildId), "en-US", Set.of());

List<PayloadSlashCommandOption> options;
if (subcommand == null) {
options = extractOptionsOrNull(nameToOption);
Expand All @@ -288,8 +295,11 @@ private PayloadSlashCommand createEvent() {
PayloadSlashCommandData data = new PayloadSlashCommandData(command.getName(), "1", 1,
options, extractResolvedOrNull(nameToOption));

IntegrationOwners owners = new IntegrationOwnersImpl(DataObject.empty());

return new PayloadSlashCommand(guildId, "897425767397466123", 2, 1, applicationId, token,
member, channel, data);
member, channel, guild, data, Long.parseLong(channelId),
InteractionContextType.PRIVATE_CHANNEL, owners);
}

@Nullable
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
package org.togetherjava.tjbot.jda.payloads;

import com.fasterxml.jackson.annotation.JsonProperty;

import java.util.Set;

public class PayloadGuild {

private long id;
@JsonProperty("preferred_locale")
private String preferredLocale;
private Set<String> features;

public PayloadGuild(long id, String preferredLocale, Set<String> features) {
this.id = id;
this.preferredLocale = preferredLocale;
this.features = features;
}

public long getId() {
return id;
}

public void setId(long id) {
this.id = id;
}

public String getPreferredLocale() {
return preferredLocale;
}

public void setPreferredLocale(String preferredLocale) {
this.preferredLocale = preferredLocale;
}

public Set<String> getFeatures() {
return features;
}

public void setFeatures(Set<String> features) {
this.features = features;
}

}
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
package org.togetherjava.tjbot.jda.payloads.slashcommand;

import com.fasterxml.jackson.annotation.JsonProperty;
import net.dv8tion.jda.api.interactions.IntegrationOwners;
import net.dv8tion.jda.api.interactions.InteractionContextType;

import org.togetherjava.tjbot.jda.payloads.PayloadChannel;
import org.togetherjava.tjbot.jda.payloads.PayloadGuild;
import org.togetherjava.tjbot.jda.payloads.PayloadMember;

public final class PayloadSlashCommand {
Expand All @@ -16,11 +19,18 @@ public final class PayloadSlashCommand {
private String token;
private PayloadMember member;
private PayloadChannel channel;
private PayloadGuild guild;
private PayloadSlashCommandData data;
@JsonProperty("channel_id")
private long channelId;
private InteractionContextType context;
@JsonProperty("authorizing_integration_owners")
private IntegrationOwners integrationOwners;

public PayloadSlashCommand(String guildId, String id, int type, int version,
String applicationId, String token, PayloadMember member, PayloadChannel channel,
PayloadSlashCommandData data) {
PayloadGuild guild, PayloadSlashCommandData data, long channelId,
InteractionContextType context, IntegrationOwners integrationOwners) {
this.guildId = guildId;
this.id = id;
this.type = type;
Expand All @@ -29,7 +39,11 @@ public PayloadSlashCommand(String guildId, String id, int type, int version,
this.token = token;
this.member = member;
this.channel = channel;
this.guild = guild;
this.data = data;
this.channelId = channelId;
this.context = context;
this.integrationOwners = integrationOwners;
}

public String getGuildId() {
Expand Down Expand Up @@ -96,6 +110,14 @@ public void setChannel(PayloadChannel channel) {
this.channel = channel;
}

public PayloadGuild getGuild() {
return guild;
}

public void setGuild(PayloadGuild guild) {
this.guild = guild;
}

public PayloadSlashCommandData getData() {
return data;
}
Expand All @@ -104,4 +126,28 @@ public void setData(PayloadSlashCommandData data) {
this.data = data;
}

public long getChannelId() {
return channelId;
}

public void setChannelId(long channelId) {
this.channelId = channelId;
}

public InteractionContextType getContext() {
return context;
}

public void setContext(InteractionContextType context) {
this.context = context;
}

public IntegrationOwners getIntegrationOwners() {
return integrationOwners;
}

public void setIntegrationOwners(IntegrationOwners integrationOwners) {
this.integrationOwners = integrationOwners;
}

}
Loading