mirror of
https://github.com/Sheldan/abstracto.git
synced 2026-04-12 19:18:42 +00:00
[AB-137] fixing occurrences for templates in cases entities do not exist anymore
fixing feature mode retrieval to adapt to lowercase fixing disable exp role creation and retrieval removing ansible code
This commit is contained in:
@@ -55,7 +55,8 @@ public class UserNotesConverter {
|
||||
public List<NoteEntryModel> loadFullNotes(Map<ServerSpecificId, CompletableFuture<Member>> futureHashMap) {
|
||||
List<NoteEntryModel> entryModels = new ArrayList<>();
|
||||
futureHashMap.keySet().forEach(serverSpecificId -> {
|
||||
Member member = futureHashMap.get(serverSpecificId).join();
|
||||
CompletableFuture<Member> memberFuture = futureHashMap.get(serverSpecificId);
|
||||
Member member = !memberFuture.isCompletedExceptionally() ? memberFuture.join() : null;
|
||||
UserNote note = userNoteManagementService.loadNote(serverSpecificId.getServerId(), serverSpecificId.getId());
|
||||
FullUserInServer fullUser = FullUserInServer
|
||||
.builder()
|
||||
|
||||
@@ -57,25 +57,26 @@ public class WarnEntryConverter {
|
||||
public List<WarnEntry> loadFullWarnEntries(Map<ServerSpecificId, FutureMemberPair> loadedWarnInfo) {
|
||||
List<WarnEntry> entries = new ArrayList<>();
|
||||
loadedWarnInfo.keySet().forEach(warning -> {
|
||||
Warning warn = warnManagementService.findById(warning.getId(), warning.getServerId());
|
||||
FutureMemberPair memberPair = loadedWarnInfo.get(warning);
|
||||
Member warnedMember = memberPair.getSecondMember().join();
|
||||
Member warnedMember = !memberPair.getSecondMember().isCompletedExceptionally() ? memberPair.getSecondMember().join() : null;
|
||||
FullUserInServer warnedUser = FullUserInServer
|
||||
.builder()
|
||||
.member(warnedMember)
|
||||
.aUserInAServer(userInServerManagementService.loadOrCreateUser(warnedMember))
|
||||
.aUserInAServer(warn.getWarnedUser())
|
||||
.build();
|
||||
|
||||
Member warningMember = memberPair.getFirstMember().join();
|
||||
Member warningMember = !memberPair.getFirstMember().isCompletedExceptionally() ? memberPair.getFirstMember().join() : null;
|
||||
FullUserInServer warningUser = FullUserInServer
|
||||
.builder()
|
||||
.member(warningMember)
|
||||
.aUserInAServer(userInServerManagementService.loadOrCreateUser(warningMember))
|
||||
.aUserInAServer(warn.getWarningUser())
|
||||
.build();
|
||||
WarnEntry entry = WarnEntry
|
||||
.builder()
|
||||
.warnedUser(warnedUser)
|
||||
.warningUser(warningUser)
|
||||
.warning(warnManagementService.findById(warning.getId(), warning.getServerId()))
|
||||
.warning(warn)
|
||||
.build();
|
||||
entries.add(entry);
|
||||
});
|
||||
|
||||
@@ -339,11 +339,13 @@ public class MuteServiceBean implements MuteService {
|
||||
public CompletableFuture<Void> sendUnmuteLog(Long muteId, Guild guild, CompletableFuture<Member> mutingMemberFuture, CompletableFuture<Member> mutedMemberFuture) {
|
||||
Mute mute = muteManagementService.findMute(muteId, guild.getIdLong());
|
||||
AServer mutingServer = serverManagementService.loadServer(guild.getIdLong());
|
||||
Member mutingMember = !mutingMemberFuture.isCompletedExceptionally() ? mutingMemberFuture.join() : null;
|
||||
Member mutedMember = !mutedMemberFuture.isCompletedExceptionally() ? mutedMemberFuture.join() : null;
|
||||
UnMuteLog unMuteLog = UnMuteLog
|
||||
.builder()
|
||||
.mute(mute)
|
||||
.mutingUser(mutingMemberFuture.join())
|
||||
.unMutedUser(mutedMemberFuture.join())
|
||||
.mutingUser(mutingMember)
|
||||
.unMutedUser(mutedMember)
|
||||
.guild(guild)
|
||||
.build();
|
||||
CompletableFuture<Void> notificationFuture = sendUnMuteLogMessage(unMuteLog, mutingServer);
|
||||
|
||||
@@ -2,6 +2,7 @@ package dev.sheldan.abstracto.moderation.service;
|
||||
|
||||
import dev.sheldan.abstracto.core.models.FutureMemberPair;
|
||||
import dev.sheldan.abstracto.core.models.ServerSpecificId;
|
||||
import dev.sheldan.abstracto.core.models.ServerUser;
|
||||
import dev.sheldan.abstracto.core.models.database.AServer;
|
||||
import dev.sheldan.abstracto.core.models.database.AUserInAServer;
|
||||
import dev.sheldan.abstracto.core.service.*;
|
||||
@@ -187,14 +188,25 @@ public class WarnServiceBean implements WarnService {
|
||||
warningsToDecay.forEach(warning -> {
|
||||
CompletableFuture<Member> warningMember = memberService.getMemberInServerAsync(warning.getWarningUser());
|
||||
CompletableFuture<Member> warnedMember = memberService.getMemberInServerAsync(warning.getWarnedUser());
|
||||
FutureMemberPair futurePair = FutureMemberPair.builder().firstMember(warningMember).secondMember(warnedMember).build();
|
||||
FutureMemberPair futurePair = FutureMemberPair
|
||||
.builder()
|
||||
.firstMember(warningMember)
|
||||
.secondMember(warnedMember)
|
||||
.firstUser(ServerUser.fromAUserInAServer(warning.getWarningUser()))
|
||||
.secondUser(ServerUser.fromAUserInAServer(warning.getWarnedUser()))
|
||||
.build();
|
||||
warningMembers.put(warning.getWarnId(), futurePair);
|
||||
allFutures.add(warningMember);
|
||||
allFutures.add(warnedMember);
|
||||
});
|
||||
CompletableFuture<Void> sendingFuture = new CompletableFuture<>();
|
||||
FutureUtils.toSingleFutureGeneric(allFutures).handle((aVoid, throwable) -> {
|
||||
self.renderAndSendWarnDecayLogs(serverId, warningMembers).thenAccept(aVoid1 ->
|
||||
sendingFuture.complete(null)
|
||||
);
|
||||
).exceptionally(throwable1 -> {
|
||||
sendingFuture.completeExceptionally(throwable1);
|
||||
return null;
|
||||
});
|
||||
return null;
|
||||
});
|
||||
|
||||
@@ -207,16 +219,23 @@ public class WarnServiceBean implements WarnService {
|
||||
AServer server = serverManagementService.loadServer(serverId);
|
||||
List<WarnDecayWarning> warnDecayWarnings = new ArrayList<>();
|
||||
warningMembers.keySet().forEach(serverSpecificId -> {
|
||||
Warning warning = warnManagementService.findById(serverSpecificId.getId(), serverSpecificId.getServerId());
|
||||
FutureMemberPair pair = warningMembers.get(serverSpecificId);
|
||||
// TODO add ids to render in case any member left the server
|
||||
WarnDecayWarning warnDecayWarning = WarnDecayWarning
|
||||
.builder()
|
||||
.warningMember(pair.getFirstMember().join())
|
||||
.warnedMember(pair.getSecondMember().join())
|
||||
.warning(warning)
|
||||
.build();
|
||||
warnDecayWarnings.add(warnDecayWarning);
|
||||
try {
|
||||
Warning warning = warnManagementService.findById(serverSpecificId.getId(), serverSpecificId.getServerId());
|
||||
FutureMemberPair pair = warningMembers.get(serverSpecificId);
|
||||
Member warningMember = !pair.getFirstMember().isCompletedExceptionally() ? pair.getFirstMember().join() : null;
|
||||
Member warnedMember = !pair.getSecondMember().isCompletedExceptionally() ? pair.getSecondMember().join() : null;
|
||||
WarnDecayWarning warnDecayWarning = WarnDecayWarning
|
||||
.builder()
|
||||
.warningMember(warningMember)
|
||||
.warningUser(pair.getFirstUser())
|
||||
.warnedMember(warnedMember)
|
||||
.warnedUser(pair.getSecondUser())
|
||||
.warning(warning)
|
||||
.build();
|
||||
warnDecayWarnings.add(warnDecayWarning);
|
||||
} catch (Exception ex) {
|
||||
log.error("exception.", ex);
|
||||
}
|
||||
});
|
||||
WarnDecayLogModel warnDecayLogModel = WarnDecayLogModel
|
||||
.builder()
|
||||
|
||||
@@ -85,8 +85,12 @@ public class WarnEntryConverterTest {
|
||||
Warning warning2 = Mockito.mock(Warning.class);
|
||||
ServerSpecificId firstWarnId = new ServerSpecificId(SERVER_ID, WARN_ID_1);
|
||||
when(warning1.getWarnId()).thenReturn(firstWarnId);
|
||||
when(warning1.getWarningUser()).thenReturn(warningUser);
|
||||
when(warning1.getWarnedUser()).thenReturn(warnedUser);
|
||||
ServerSpecificId secondWarnId = new ServerSpecificId(SERVER_ID, WARN_ID_2);
|
||||
when(warning2.getWarnId()).thenReturn(secondWarnId);
|
||||
when(warning2.getWarningUser()).thenReturn(warningUser);
|
||||
when(warning2.getWarnedUser()).thenReturn(warnedUser);
|
||||
HashMap<ServerSpecificId, FutureMemberPair> map = new HashMap<>();
|
||||
FutureMemberPair memberPair = Mockito.mock(FutureMemberPair.class);
|
||||
when(memberPair.getFirstMember()).thenReturn(CompletableFuture.completedFuture(warningMember));
|
||||
@@ -95,8 +99,6 @@ public class WarnEntryConverterTest {
|
||||
map.put(secondWarnId, memberPair);
|
||||
when(warnManagementService.findById(WARN_ID_1, SERVER_ID)).thenReturn(warning1);
|
||||
when(warnManagementService.findById(WARN_ID_2, SERVER_ID)).thenReturn(warning2);
|
||||
when(userInServerManagementService.loadOrCreateUser(warnedMember)).thenReturn(warnedUser);
|
||||
when(userInServerManagementService.loadOrCreateUser(warningMember)).thenReturn(warningUser);
|
||||
List<WarnEntry> models = testUnit.loadFullWarnEntries(map);
|
||||
Assert.assertEquals(2, models.size());
|
||||
WarnEntry firstEntry = models.get(0);
|
||||
|
||||
@@ -2,6 +2,7 @@ package dev.sheldan.abstracto.moderation.service;
|
||||
|
||||
import dev.sheldan.abstracto.core.models.ServerSpecificId;
|
||||
import dev.sheldan.abstracto.core.models.database.AServer;
|
||||
import dev.sheldan.abstracto.core.models.database.AUser;
|
||||
import dev.sheldan.abstracto.core.models.database.AUserInAServer;
|
||||
import dev.sheldan.abstracto.core.models.property.SystemConfigProperty;
|
||||
import dev.sheldan.abstracto.core.service.*;
|
||||
@@ -103,6 +104,15 @@ public class WarnServiceBeanTest {
|
||||
@Mock
|
||||
private AUserInAServer secondWarnedUser;
|
||||
|
||||
@Mock
|
||||
private AUser firstAUser;
|
||||
|
||||
@Mock
|
||||
private AUser secondAUser;
|
||||
|
||||
@Mock
|
||||
private AUser thirdAUser;
|
||||
|
||||
@Mock
|
||||
private Warning firstWarning;
|
||||
|
||||
@@ -225,9 +235,15 @@ public class WarnServiceBeanTest {
|
||||
private void setupWarnings() {
|
||||
when(firstWarning.getWarningUser()).thenReturn(warningUser);
|
||||
when(secondWarning.getWarningUser()).thenReturn(warningUser);
|
||||
when(warningUser.getServerReference()).thenReturn(server);
|
||||
when(warningUser.getUserReference()).thenReturn(thirdAUser);
|
||||
|
||||
when(firstWarning.getWarnedUser()).thenReturn(firstWarnedUser);
|
||||
when(firstWarnedUser.getServerReference()).thenReturn(server);
|
||||
when(firstWarnedUser.getUserReference()).thenReturn(firstAUser);
|
||||
when(secondWarning.getWarnedUser()).thenReturn(secondWarnedUser);
|
||||
when(secondWarnedUser.getServerReference()).thenReturn(server);
|
||||
when(secondWarnedUser.getUserReference()).thenReturn(secondAUser);
|
||||
when(firstWarning.getWarnId()).thenReturn(new ServerSpecificId(SERVER_ID, WARN_ID));
|
||||
when(secondWarning.getWarnId()).thenReturn(new ServerSpecificId(SERVER_ID, 9L));
|
||||
when(server.getId()).thenReturn(SERVER_ID);
|
||||
|
||||
Reference in New Issue
Block a user