fixed some code smells

This commit is contained in:
Sheldan
2020-04-27 20:23:02 +02:00
parent e08086b6a9
commit 8e7bc7d98f
91 changed files with 251 additions and 268 deletions

View File

@@ -50,7 +50,7 @@ public class LeaderBoardCommand extends AbstractConditionableCommand {
public CommandResult execute(CommandContext commandContext) {
List<Object> parameters = commandContext.getParameters().getParameters();
// parameter is optional, in case its not present, we default to the 0th page
Integer page = parameters.size() > 0 ? (Integer) parameters.get(0) : 0;
Integer page = !parameters.isEmpty() ? (Integer) parameters.get(0) : 0;
LeaderBoard leaderBoard = userExperienceService.findLeaderBoardData(commandContext.getUserInitiatedContext().getServer(), page);
LeaderBoardModel leaderBoardModel = (LeaderBoardModel) ContextConverter.fromCommandContext(commandContext, LeaderBoardModel.class);
leaderBoardModel.setUserExperiences(converter.fromLeaderBoard(leaderBoard));

View File

@@ -8,6 +8,7 @@ import dev.sheldan.abstracto.core.command.execution.CommandContext;
import dev.sheldan.abstracto.core.command.execution.CommandResult;
import dev.sheldan.abstracto.core.command.execution.ContextConverter;
import dev.sheldan.abstracto.core.config.FeatureEnum;
import dev.sheldan.abstracto.core.service.ChannelService;
import dev.sheldan.abstracto.experience.config.features.ExperienceFeature;
import dev.sheldan.abstracto.experience.converter.LeaderBoardModelConverter;
import dev.sheldan.abstracto.experience.models.LeaderBoardEntry;
@@ -39,6 +40,10 @@ public class Rank extends AbstractConditionableCommand {
@Autowired
private ExperienceLevelService experienceLevelService;
@Autowired
protected ChannelService channelService;
@Override
public CommandResult execute(CommandContext commandContext) {
RankModel rankModel = (RankModel) ContextConverter.fromCommandContext(commandContext, RankModel.class);

View File

@@ -176,25 +176,19 @@ public class AUserExperienceServiceBean implements AUserExperienceService {
Member member = botService.getMemberInServer(user.getServerReference(), user.getUserReference());
boolean currentlyHasNoExperienceRole = userExperience.getCurrentExperienceRole() == null;
if(role == null) {
if(!currentlyHasNoExperienceRole){
if(botService.isUserInGuild(userExperience.getUser())) {
roleService.removeRoleFromUser(user, userExperience.getCurrentExperienceRole().getRole());
}
if(!currentlyHasNoExperienceRole && botService.isUserInGuild(userExperience.getUser())){
roleService.removeRoleFromUser(user, userExperience.getCurrentExperienceRole().getRole());
}
userExperience.setCurrentExperienceRole(null);
return;
}
boolean userHasRoleAlready = roleService.memberHasRole(member, role.getRole());
if(!userHasRoleAlready) {
if(currentlyHasNoExperienceRole || !role.getRole().getId().equals(userExperience.getCurrentExperienceRole().getRole().getId())) {
log.info("User {} in server {} gets a new role {}", user.getUserReference().getId(), user.getServerReference().getId(), role.getRole().getId());
if(!currentlyHasNoExperienceRole) {
if(botService.isUserInGuild(userExperience.getUser())) {
roleService.removeRoleFromUser(user, userExperience.getCurrentExperienceRole().getRole());
}
}
roleService.addRoleToUser(user, role.getRole());
if(!userHasRoleAlready && (currentlyHasNoExperienceRole || !role.getRole().getId().equals(userExperience.getCurrentExperienceRole().getRole().getId()))) {
log.info("User {} in server {} gets a new role {}", user.getUserReference().getId(), user.getServerReference().getId(), role.getRole().getId());
if(!currentlyHasNoExperienceRole && botService.isUserInGuild(userExperience.getUser())) {
roleService.removeRoleFromUser(user, userExperience.getCurrentExperienceRole().getRole());
}
roleService.addRoleToUser(user, role.getRole());
}
userExperience.setCurrentExperienceRole(role);
}
@@ -226,9 +220,7 @@ public class AUserExperienceServiceBean implements AUserExperienceService {
List<AUserExperience> aUserExperiences = userExperienceManagementService.loadAllUsers(server);
log.info("Found {} users to synchronize", aUserExperiences.size());
List<AExperienceRole> roles = experienceRoleManagementService.getExperienceRolesForServer(server);
executeActionOnUserExperiencesWithFeedBack(aUserExperiences, channel, (AUserExperience experience) -> {
updateUserRole(experience, roles);
});
executeActionOnUserExperiencesWithFeedBack(aUserExperiences, channel, (AUserExperience experience) -> updateUserRole(experience, roles));
}
@Override

View File

@@ -55,14 +55,13 @@ public class ExperienceRoleServiceBean implements ExperienceRoleService {
public void unsetRole(ARole role, AServer server, AChannel feedbackChannel) {
AExperienceRole roleInServer = experienceRoleManagementService.getRoleInServer(role, server);
if(roleInServer != null) {
if(roleInServer.getUsers().size() > 0) {
if(!roleInServer.getUsers().isEmpty()) {
log.info("Recalculating the roles for {} users, because their current role was removed from experience tracking.", roleInServer.getUsers().size());
List<AExperienceRole> roles = experienceRoleManagementService.getExperienceRolesForServer(server);
roles.removeIf(role1 -> role1.getId().equals(roleInServer.getId()));
userExperienceService.executeActionOnUserExperiencesWithFeedBack(roleInServer.getUsers(), feedbackChannel, (AUserExperience ex) -> {
userExperienceService.updateUserRole(ex, roles);
});
userExperienceService.executeActionOnUserExperiencesWithFeedBack(roleInServer.getUsers(), feedbackChannel,
(AUserExperience ex) -> userExperienceService.updateUserRole(ex, roles));
}
experienceRoleManagementService.unsetRole(roleInServer);
}
@@ -76,7 +75,7 @@ public class ExperienceRoleServiceBean implements ExperienceRoleService {
*/
@Override
public AExperienceRole calculateRole(AUserExperience userExperience, List<AExperienceRole> roles) {
if(roles.size() == 0) {
if(roles.isEmpty()) {
return null;
}
AExperienceRole lastRole = null;

View File

@@ -27,9 +27,7 @@ public class ExperienceRoleManagementServiceBean implements ExperienceRoleManage
public void removeAllRoleAssignmentsForLevelInServer(AExperienceLevel level, AServer server) {
log.trace("Removing all role assignments for level {}.", level.getLevel());
List<AExperienceRole> existingExperienceRoles = experienceRoleRepository.findByLevelAndRoleServer(level, server);
existingExperienceRoles.forEach(existingRole -> {
experienceRoleRepository.delete(existingRole);
});
existingExperienceRoles.forEach(existingRole -> experienceRoleRepository.delete(existingRole));
}
@Override