[AB-xxx] adding sticky roles module

This commit is contained in:
Sheldan
2024-02-12 22:52:29 +01:00
parent 94a18559d3
commit 59575e0b49
45 changed files with 1317 additions and 19 deletions

View File

@@ -24,7 +24,6 @@ import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
import java.util.function.Predicate;
import java.util.stream.Collectors;
@Service
public class CommandManager implements CommandRegistry {
@@ -54,7 +53,7 @@ public class CommandManager implements CommandRegistry {
@Override
public Optional<Command> findCommandByParameters(String name, UnParsedCommandParameter unParsedCommandParameter, Long serverId) {
Optional<Command> commandOptional = commands.stream().filter(getCommandByNameAndParameterPredicate(name, unParsedCommandParameter, serverId)).findFirst();
if(!commandOptional.isPresent()) {
if(commandOptional.isEmpty()) {
commandOptional = getCommandViaAliasAndParameter(name, unParsedCommandParameter, serverId);
}
return commandOptional;
@@ -139,7 +138,7 @@ public class CommandManager implements CommandRegistry {
.getDependentFeatures()
.stream()
.map(s -> featureConfigService.getFeatureEnum(s))
.collect(Collectors.toList());
.toList();
boolean required = false;
for (FeatureDefinition featureDefinition : featureDefinitions) {
if(featureFlagService.getFeatureFlagValue(featureDefinition, serverId)) {

View File

@@ -46,6 +46,7 @@ public class AsyncLeaveListenerBean extends ListenerAdapter {
.build();
return MemberLeaveModel
.builder()
.member(event.getMember())
.leavingUser(serverUser)
.user(event.getUser())
.build();

View File

@@ -10,7 +10,7 @@ public class FeatureNotFoundException extends AbstractoRunTimeException implemen
private final FeatureNotFoundExceptionModel model;
public FeatureNotFoundException(String feature, List<String> availableFeatures) {
super("Feature not found.");
super(String.format("Feature %s not found.", feature));
this.model = FeatureNotFoundExceptionModel
.builder()
.featureName(feature)

View File

@@ -5,6 +5,7 @@ import dev.sheldan.abstracto.core.models.ServerUser;
import lombok.Builder;
import lombok.Getter;
import lombok.Setter;
import net.dv8tion.jda.api.entities.Member;
import net.dv8tion.jda.api.entities.User;
@Getter
@@ -13,6 +14,7 @@ import net.dv8tion.jda.api.entities.User;
public class MemberLeaveModel implements FeatureAwareListenerModel {
private ServerUser leavingUser;
private User user;
private Member member;
@Override
public Long getServerId() {
return leavingUser.getServerId();