diff --git a/abstracto-application/abstracto-modules/utility/utility-impl/src/main/java/dev/sheldan/abstracto/utility/config/StarboardConfig.java b/abstracto-application/abstracto-modules/utility/utility-impl/src/main/java/dev/sheldan/abstracto/utility/config/StarboardConfig.java index 878a552a5..d5ebe6e90 100644 --- a/abstracto-application/abstracto-modules/utility/utility-impl/src/main/java/dev/sheldan/abstracto/utility/config/StarboardConfig.java +++ b/abstracto-application/abstracto-modules/utility/utility-impl/src/main/java/dev/sheldan/abstracto/utility/config/StarboardConfig.java @@ -14,5 +14,4 @@ import java.util.List; @ConfigurationProperties(prefix = "abstracto.starboard") public class StarboardConfig { private List lvl = new ArrayList<>(); - private List badge = new ArrayList<>(); } diff --git a/abstracto-application/abstracto-modules/utility/utility-impl/src/main/java/dev/sheldan/abstracto/utility/listener/embed/MessageEmbedRemovalReactionListener.java b/abstracto-application/abstracto-modules/utility/utility-impl/src/main/java/dev/sheldan/abstracto/utility/listener/embed/MessageEmbedRemovalReactionListener.java index 5416acbc6..b6f64815a 100644 --- a/abstracto-application/abstracto-modules/utility/utility-impl/src/main/java/dev/sheldan/abstracto/utility/listener/embed/MessageEmbedRemovalReactionListener.java +++ b/abstracto-application/abstracto-modules/utility/utility-impl/src/main/java/dev/sheldan/abstracto/utility/listener/embed/MessageEmbedRemovalReactionListener.java @@ -5,6 +5,7 @@ import dev.sheldan.abstracto.core.models.cache.CachedMessage; import dev.sheldan.abstracto.core.models.database.AEmote; import dev.sheldan.abstracto.core.models.database.AUserInAServer; import dev.sheldan.abstracto.core.service.Bot; +import dev.sheldan.abstracto.core.service.EmoteService; import dev.sheldan.abstracto.core.service.MessageService; import dev.sheldan.abstracto.core.service.management.EmoteManagementService; import dev.sheldan.abstracto.core.utils.EmoteUtils; @@ -37,30 +38,29 @@ public class MessageEmbedRemovalReactionListener implements ReactedAddedListener @Autowired private MessageService messageService; + @Autowired + private EmoteService emoteService; + + @Override public void executeReactionAdded(CachedMessage message, MessageReaction reaction, AUserInAServer userAdding) { Long guildId = message.getServerId(); - Optional aEmote = emoteManagementService.loadEmoteByName(REMOVAL_EMOTE, guildId); - if(aEmote.isPresent()) { - AEmote emote = aEmote.get(); - MessageReaction.ReactionEmote reactionEmote = reaction.getReactionEmote(); - Optional emoteInGuild = bot.getEmote(guildId, emote); - if(EmoteUtils.isReactionEmoteAEmote(reactionEmote, emote, emoteInGuild.orElse(null))) { - Optional embeddedMessageOptional = messageEmbedPostManagementService.findEmbeddedPostByMessageId(message.getMessageId()); - if(embeddedMessageOptional.isPresent()) { - EmbeddedMessage embeddedMessage = embeddedMessageOptional.get(); - if(embeddedMessage.getEmbeddedUser().getUserReference().getId().equals(userAdding.getUserReference().getId()) - || embeddedMessage.getEmbeddingUser().getUserReference().getId().equals(userAdding.getUserReference().getId()) - ) { - messageService.deleteMessageInChannelInServer(message.getServerId(), message.getChannelId(), message.getMessageId()).thenAccept(aVoid -> { - messageEmbedPostManagementService.deleteEmbeddedMessageTransactional(embeddedMessage); - }); - } - + AEmote aEmote = emoteService.getEmoteOrFakeEmote(REMOVAL_EMOTE, guildId); + MessageReaction.ReactionEmote reactionEmote = reaction.getReactionEmote(); + Optional emoteInGuild = bot.getEmote(guildId, aEmote); + if(EmoteUtils.isReactionEmoteAEmote(reactionEmote, aEmote, emoteInGuild.orElse(null))) { + Optional embeddedMessageOptional = messageEmbedPostManagementService.findEmbeddedPostByMessageId(message.getMessageId()); + if(embeddedMessageOptional.isPresent()) { + EmbeddedMessage embeddedMessage = embeddedMessageOptional.get(); + if(embeddedMessage.getEmbeddedUser().getUserReference().getId().equals(userAdding.getUserReference().getId()) + || embeddedMessage.getEmbeddingUser().getUserReference().getId().equals(userAdding.getUserReference().getId()) + ) { + messageService.deleteMessageInChannelInServer(message.getServerId(), message.getChannelId(), message.getMessageId()).thenAccept(aVoid -> { + messageEmbedPostManagementService.deleteEmbeddedMessageTransactional(embeddedMessage); + }); } + } - } else { - log.warn("Emote {} is not defined for guild {}. Embed link deletion not functional.", REMOVAL_EMOTE, guildId); } } diff --git a/abstracto-application/abstracto-modules/utility/utility-impl/src/main/java/dev/sheldan/abstracto/utility/listener/starboard/StarboardListener.java b/abstracto-application/abstracto-modules/utility/utility-impl/src/main/java/dev/sheldan/abstracto/utility/listener/starboard/StarboardListener.java index ae29b0785..e6b47f071 100644 --- a/abstracto-application/abstracto-modules/utility/utility-impl/src/main/java/dev/sheldan/abstracto/utility/listener/starboard/StarboardListener.java +++ b/abstracto-application/abstracto-modules/utility/utility-impl/src/main/java/dev/sheldan/abstracto/utility/listener/starboard/StarboardListener.java @@ -8,6 +8,7 @@ import dev.sheldan.abstracto.core.models.database.AEmote; import dev.sheldan.abstracto.core.models.database.AUser; import dev.sheldan.abstracto.core.models.database.AUserInAServer; import dev.sheldan.abstracto.core.service.Bot; +import dev.sheldan.abstracto.core.service.EmoteService; import dev.sheldan.abstracto.core.service.MessageCache; import dev.sheldan.abstracto.core.service.management.ConfigManagementService; import dev.sheldan.abstracto.core.service.management.EmoteManagementService; @@ -59,6 +60,9 @@ public class StarboardListener implements ReactedAddedListener, ReactedRemovedLi @Autowired private UserManagementService userManagementService; + @Autowired + private EmoteService emoteService; + @Override @Transactional public void executeReactionAdded(CachedMessage message, MessageReaction addedReaction, AUserInAServer userAdding) { @@ -66,17 +70,12 @@ public class StarboardListener implements ReactedAddedListener, ReactedRemovedLi return; } Long guildId = message.getServerId(); - Optional aEmote = emoteManagementService.loadEmoteByName(STAR_EMOTE, guildId); - if(aEmote.isPresent()) { - AEmote emote = aEmote.get(); - MessageReaction.ReactionEmote reactionEmote = addedReaction.getReactionEmote(); - Optional emoteInGuild = bot.getEmote(guildId, emote); - if(EmoteUtils.isReactionEmoteAEmote(reactionEmote, emote, emoteInGuild.orElse(null))) { - Optional reactionOptional = EmoteUtils.getReactionFromMessageByEmote(message, emote); - updateStarboardPost(message, reactionOptional.orElse(null), userAdding, true); - } - } else { - log.warn("Emote {} is not defined for guild {}. Starboard not functional.", STAR_EMOTE, guildId); + AEmote aEmote = emoteService.getEmoteOrFakeEmote(STAR_EMOTE, guildId); + MessageReaction.ReactionEmote reactionEmote = addedReaction.getReactionEmote(); + Optional emoteInGuild = bot.getEmote(guildId, aEmote); + if(EmoteUtils.isReactionEmoteAEmote(reactionEmote, aEmote, emoteInGuild.orElse(null))) { + Optional reactionOptional = EmoteUtils.getReactionFromMessageByEmote(message, aEmote); + updateStarboardPost(message, reactionOptional.orElse(null), userAdding, true); } } @@ -124,17 +123,12 @@ public class StarboardListener implements ReactedAddedListener, ReactedRemovedLi return; } Long guildId = message.getServerId(); - Optional aEmote = emoteManagementService.loadEmoteByName(STAR_EMOTE, guildId); - if(aEmote.isPresent()) { - AEmote emote = aEmote.get(); - MessageReaction.ReactionEmote reactionEmote = removedReaction.getReactionEmote(); - Optional emoteInGuild = bot.getEmote(guildId, emote); - if(EmoteUtils.isReactionEmoteAEmote(reactionEmote, emote, emoteInGuild.orElse(null))) { - Optional reactionOptional = EmoteUtils.getReactionFromMessageByEmote(message, emote); - updateStarboardPost(message, reactionOptional.orElse(null), userRemoving, false); - } - } else { - log.warn("Emote {} is not defined for guild {}. Starboard not functional.", STAR_EMOTE, guildId); + AEmote aEmote = emoteService.getEmoteOrFakeEmote(STAR_EMOTE, guildId); + MessageReaction.ReactionEmote reactionEmote = removedReaction.getReactionEmote(); + Optional emoteInGuild = bot.getEmote(guildId, aEmote); + if(EmoteUtils.isReactionEmoteAEmote(reactionEmote, aEmote, emoteInGuild.orElse(null))) { + Optional reactionOptional = EmoteUtils.getReactionFromMessageByEmote(message, aEmote); + updateStarboardPost(message, reactionOptional.orElse(null), userRemoving, false); } } diff --git a/abstracto-application/abstracto-modules/utility/utility-impl/src/main/java/dev/sheldan/abstracto/utility/service/StarboardServiceBean.java b/abstracto-application/abstracto-modules/utility/utility-impl/src/main/java/dev/sheldan/abstracto/utility/service/StarboardServiceBean.java index 8c81f6f80..aab04209a 100644 --- a/abstracto-application/abstracto-modules/utility/utility-impl/src/main/java/dev/sheldan/abstracto/utility/service/StarboardServiceBean.java +++ b/abstracto-application/abstracto-modules/utility/utility-impl/src/main/java/dev/sheldan/abstracto/utility/service/StarboardServiceBean.java @@ -106,15 +106,7 @@ public class StarboardServiceBean implements StarboardService { AChannel aChannel = AChannel.builder().id(message.getChannelId()).build(); AUser user = AUser.builder().id(message.getAuthorId()).build(); AServer server = AServer.builder().id(message.getServerId()).build(); - Optional appropriateEmoteOptional = getAppropriateEmote(message.getServerId(), starCount); - String emoteText; - if(appropriateEmoteOptional.isPresent()) { - AEmote emote = appropriateEmoteOptional.get(); - emoteText = emoteService.getEmoteAsMention(emote, message.getServerId(), "⭐"); - } else { - log.warn("No emote defined to be used for starboard post. Falling back to default."); - emoteText = "⭐"; - } + String starLevelEmote = getAppropriateEmote(message.getServerId(), starCount); return StarboardPostModel .builder() .message(message) @@ -125,7 +117,7 @@ public class StarboardServiceBean implements StarboardService { .guild(guild.orElse(null)) .user(user) .server(server) - .starLevelEmote(emoteText) + .starLevelEmote(starLevelEmote) .build(); } @@ -161,10 +153,7 @@ public class StarboardServiceBean implements StarboardService { Integer reactionCount = starboardPostReactorManagementService.getStarCount(serverId); List emotes = new ArrayList<>(); for (int i = 1; i < count + 1; i++) { - Optional starboardRankingEmote = getStarboardRankingEmote(serverId, i); - AEmote emote = starboardRankingEmote.orElse(null); - String defaultEmoji = starboardConfig.getBadge().get(i - 1); - emotes.add(emoteService.getEmoteAsMention(emote, serverId, defaultEmoji)); + emotes.add(getStarboardRankingEmote(serverId, i)); } return StarStatsModel @@ -178,17 +167,21 @@ public class StarboardServiceBean implements StarboardService { .build(); } - private Optional getStarboardRankingEmote(Long serverId, Integer position) { - return emoteManagementService.loadEmoteByName("starboardBadge" + position, serverId); + private String getStarboardRankingEmote(Long serverId, Integer position) { + return emoteService.getUsableEmoteOrDefault(serverId, buildBadgeName(position)); } - private Optional getAppropriateEmote(Long serverId, Integer starCount) { + private String buildBadgeName(Integer position) { + return "starboardBadge" + position; + } + + private String getAppropriateEmote(Long serverId, Integer starCount) { for(int i = starboardConfig.getLvl().size(); i > 0; i--) { Double starMinimum = configService.getDoubleValue("starLvl" + i, serverId); if(starCount >= starMinimum) { - return emoteManagementService.loadEmoteByName("star" + i, serverId); + return emoteService.getUsableEmoteOrDefault(serverId, "star" + i); } } - return emoteManagementService.loadEmoteByName("star0", serverId); + return emoteService.getUsableEmoteOrDefault(serverId, "star0"); } } diff --git a/abstracto-application/abstracto-modules/utility/utility-impl/src/main/java/dev/sheldan/abstracto/utility/service/SuggestionServiceBean.java b/abstracto-application/abstracto-modules/utility/utility-impl/src/main/java/dev/sheldan/abstracto/utility/service/SuggestionServiceBean.java index b74518fce..c344f6b0d 100644 --- a/abstracto-application/abstracto-modules/utility/utility-impl/src/main/java/dev/sheldan/abstracto/utility/service/SuggestionServiceBean.java +++ b/abstracto-application/abstracto-modules/utility/utility-impl/src/main/java/dev/sheldan/abstracto/utility/service/SuggestionServiceBean.java @@ -138,8 +138,6 @@ public class SuggestionServiceBean implements SuggestionService { @Override public void validateSetup(Long serverId) { - emoteService.throwIfEmoteDoesNotExist(SUGGESTION_YES_EMOTE, serverId); - emoteService.throwIfEmoteDoesNotExist(SUGGESTION_NO_EMOTE, serverId); - postTargetService.throwIfPostTargetIsNotDefined(SUGGESTION_YES_EMOTE, serverId); + postTargetService.throwIfPostTargetIsNotDefined(SUGGESTIONS_TARGET, serverId); } } diff --git a/abstracto-application/abstracto-modules/utility/utility-impl/src/main/resources/utility.properties b/abstracto-application/abstracto-modules/utility/utility-impl/src/main/resources/utility.properties index 75ebdaf27..a7efd72ac 100644 --- a/abstracto-application/abstracto-modules/utility/utility-impl/src/main/resources/utility.properties +++ b/abstracto-application/abstracto-modules/utility/utility-impl/src/main/resources/utility.properties @@ -2,13 +2,21 @@ abstracto.postTargets.utility=suggestions,starboard abstracto.emoteNames.suggestion=suggestionYes,suggestionNo abstracto.emoteNames.starboard=star,star1,star2,star3,star4,starboardBadge1,starboardBadge2,starboardBadge3 abstracto.emoteNames.embed=removeEmbed +abstracto.defaultEmotes.suggestionYes=\u2B06\uFE0F +abstracto.defaultEmotes.suggestionNo=\u2B07\uFE0F +abstracto.defaultEmotes.star=\u2B50 +abstracto.defaultEmotes.star1=\u2B50 +abstracto.defaultEmotes.star2=\uD83C\uDF1F +abstracto.defaultEmotes.star3=\uD83D\uDCAB +abstracto.defaultEmotes.star4=\uD83C\uDF20 +abstracto.defaultEmotes.starboardBadge1=\ud83e\udd47 +abstracto.defaultEmotes.starboardBadge2=\ud83e\udd48 +abstracto.defaultEmotes.starboardBadge3=\ud83e\udd49 +abstracto.defaultEmotes.removeEmbed=\uD83D\uDDD1\uFE0F abstracto.starboard.lvl[0]=5 abstracto.starboard.lvl[1]=8 abstracto.starboard.lvl[2]=13 abstracto.starboard.lvl[3]=17 -abstracto.starboard.badge[0]=\ud83e\udd47 -abstracto.starboard.badge[1]=\ud83e\udd48 -abstracto.starboard.badge[2]=\ud83e\udd49 abstracto.scheduling.jobs.reminderJob.name=reminderJob abstracto.scheduling.jobs.reminderJob.group=utility @@ -16,8 +24,8 @@ abstracto.scheduling.jobs.reminderJob.clazz=dev.sheldan.abstracto.utility.jobs.R abstracto.scheduling.jobs.reminderJob.standAlone=false abstracto.scheduling.jobs.reminderJob.active=true -abstracto.features.starboard=false -abstracto.features.reminder=false +abstracto.features.starboard=true +abstracto.features.remind=true abstracto.features.suggestion=false abstracto.features.utility=false abstracto.features.embeds=true \ No newline at end of file diff --git a/abstracto-application/core/core-impl/src/main/java/dev/sheldan/abstracto/core/DynamicKeyLoader.java b/abstracto-application/core/core-impl/src/main/java/dev/sheldan/abstracto/core/DynamicKeyLoader.java index a47a62ca2..587b73992 100644 --- a/abstracto-application/core/core-impl/src/main/java/dev/sheldan/abstracto/core/DynamicKeyLoader.java +++ b/abstracto-application/core/core-impl/src/main/java/dev/sheldan/abstracto/core/DynamicKeyLoader.java @@ -19,6 +19,7 @@ public class DynamicKeyLoader { private HashMap postTargets = new HashMap<>(); private HashMap emoteNames = new HashMap<>(); + private HashMap defaultEmotes = new HashMap<>(); public List getPostTargetsAsList() { return getHashMapAsList(postTargets); diff --git a/abstracto-application/core/core-impl/src/main/java/dev/sheldan/abstracto/core/service/EmoteServiceBean.java b/abstracto-application/core/core-impl/src/main/java/dev/sheldan/abstracto/core/service/EmoteServiceBean.java index b82da84f0..2528e9c63 100644 --- a/abstracto-application/core/core-impl/src/main/java/dev/sheldan/abstracto/core/service/EmoteServiceBean.java +++ b/abstracto-application/core/core-impl/src/main/java/dev/sheldan/abstracto/core/service/EmoteServiceBean.java @@ -1,5 +1,6 @@ package dev.sheldan.abstracto.core.service; +import dev.sheldan.abstracto.core.DynamicKeyLoader; import dev.sheldan.abstracto.core.exception.EmoteException; import dev.sheldan.abstracto.core.models.database.AEmote; import dev.sheldan.abstracto.core.service.management.EmoteManagementService; @@ -22,6 +23,9 @@ public class EmoteServiceBean implements EmoteService { @Autowired private EmoteManagementService emoteManagementService; + @Autowired + private DynamicKeyLoader keyLoader; + @Override public boolean isEmoteUsableByBot(Emote emote) { for (Guild guild : botService.getInstance().getGuilds()) { @@ -65,10 +69,28 @@ public class EmoteServiceBean implements EmoteService { return this.getEmoteAsMention(emote, serverId, " "); } + @Override + public String getUsableEmoteOrDefault(Long serverId, String name) { + Optional aEmote = emoteManagementService.loadEmoteByName(name, serverId); + String defaultEmote = getDefaultEmote(name); + return getEmoteAsMention(aEmote.orElse(null), serverId, defaultEmote); + } + @Override public void throwIfEmoteDoesNotExist(String emoteKey, Long serverId) { if(!emoteManagementService.loadEmoteByName(emoteKey, serverId).isPresent()) { throw new EmoteException(String.format("Emote %s not defined.", emoteKey)); } } + + @Override + public AEmote getEmoteOrFakeEmote(String emoteKey, Long serverId) { + Optional emoteOptional = emoteManagementService.loadEmoteByName(emoteKey, serverId); + return emoteOptional.orElseGet(() -> AEmote.builder().emoteKey(getDefaultEmote(emoteKey)).custom(false).name(emoteKey).build()); + } + + @Override + public String getDefaultEmote(String emoteKey) { + return keyLoader.getDefaultEmotes().get(emoteKey); + } } diff --git a/abstracto-application/core/core-impl/src/main/java/dev/sheldan/abstracto/core/service/MessageServiceBean.java b/abstracto-application/core/core-impl/src/main/java/dev/sheldan/abstracto/core/service/MessageServiceBean.java index 6d8b5c7ad..ab8177ba6 100644 --- a/abstracto-application/core/core-impl/src/main/java/dev/sheldan/abstracto/core/service/MessageServiceBean.java +++ b/abstracto-application/core/core-impl/src/main/java/dev/sheldan/abstracto/core/service/MessageServiceBean.java @@ -24,6 +24,9 @@ public class MessageServiceBean implements MessageService { @Autowired private EmoteManagementService emoteManagementService; + @Autowired + private EmoteService emoteService; + @Override public void addReactionToMessage(String emoteKey, Long serverId, Message message) { Optional guildByIdOptional = bot.getGuildById(serverId); @@ -44,9 +47,8 @@ public class MessageServiceBean implements MessageService { message.addReaction(emote.getEmoteKey()).queue(); } } else { - log.error("Cannot add reaction, emote {} not defined for server {}.", emoteKey, serverId); - throw new EmoteException(String.format("Cannot add reaction. Emote `%s` not defined in server %s. Define the emote via the setEmote command.", emoteKey, serverId)); - } + String defaultEmote = emoteService.getDefaultEmote(emoteKey); + message.addReaction(defaultEmote).queue();} } else { log.error("Cannot add reaction, guild not found {}", serverId); throw new GuildException(String.format("Cannot add reaction, guild %s not found.", serverId)); diff --git a/abstracto-application/core/core-impl/src/main/resources/commands.properties b/abstracto-application/core/core-impl/src/main/resources/commands.properties index 3b73dbade..65ef89d1e 100644 --- a/abstracto-application/core/core-impl/src/main/resources/commands.properties +++ b/abstracto-application/core/core-impl/src/main/resources/commands.properties @@ -1 +1,3 @@ -abstracto.emoteNames.postReaction=warnReaction,successReaction \ No newline at end of file +abstracto.emoteNames.postReaction=warnReaction,successReaction +abstracto.defaultEmotes.warnReaction=\u26A0\uFE0F +abstracto.defaultEmotes.successReaction=\u2705 diff --git a/abstracto-application/core/core-interface/src/main/java/dev/sheldan/abstracto/core/service/EmoteService.java b/abstracto-application/core/core-interface/src/main/java/dev/sheldan/abstracto/core/service/EmoteService.java index ac6aa35b0..0e9a052e4 100644 --- a/abstracto-application/core/core-interface/src/main/java/dev/sheldan/abstracto/core/service/EmoteService.java +++ b/abstracto-application/core/core-interface/src/main/java/dev/sheldan/abstracto/core/service/EmoteService.java @@ -7,7 +7,10 @@ import net.dv8tion.jda.api.entities.MessageReaction; public interface EmoteService { boolean isEmoteUsableByBot(Emote emote); AEmote buildAEmoteFromReaction(MessageReaction.ReactionEmote reaction); - String getEmoteAsMention(AEmote emote, Long serverId, String defaultText) ; - String getEmoteAsMention(AEmote emote, Long serverId) ; - void throwIfEmoteDoesNotExist(String emoteKey, Long serverId) ; + String getEmoteAsMention(AEmote emote, Long serverId, String defaultText); + String getEmoteAsMention(AEmote emote, Long serverId); + String getUsableEmoteOrDefault(Long serverId, String name); + void throwIfEmoteDoesNotExist(String emoteKey, Long serverId); + AEmote getEmoteOrFakeEmote(String emoteKey, Long serverId); + String getDefaultEmote(String emoteKey); } diff --git a/abstracto-application/core/core-interface/src/main/java/dev/sheldan/abstracto/core/service/management/EmoteManagementService.java b/abstracto-application/core/core-interface/src/main/java/dev/sheldan/abstracto/core/service/management/EmoteManagementService.java index c3dd28917..23223d2e0 100644 --- a/abstracto-application/core/core-interface/src/main/java/dev/sheldan/abstracto/core/service/management/EmoteManagementService.java +++ b/abstracto-application/core/core-interface/src/main/java/dev/sheldan/abstracto/core/service/management/EmoteManagementService.java @@ -1,7 +1,5 @@ package dev.sheldan.abstracto.core.service.management; -import dev.sheldan.abstracto.core.exception.ConfigurationException; -import dev.sheldan.abstracto.core.exception.EmoteException; import dev.sheldan.abstracto.core.models.database.AEmote; import dev.sheldan.abstracto.core.models.database.AServer; import net.dv8tion.jda.api.entities.Emote; diff --git a/abstracto-application/scheduling/scheduling-impl/src/main/resources/scheduling.properties b/abstracto-application/scheduling/scheduling-impl/src/main/resources/scheduling.properties index 23d2e00b4..fb968dcb4 100644 --- a/abstracto-application/scheduling/scheduling-impl/src/main/resources/scheduling.properties +++ b/abstracto-application/scheduling/scheduling-impl/src/main/resources/scheduling.properties @@ -1,5 +1,5 @@ spring.quartz.job-store-type=jdbc -spring.quartz.jdbc.initialize-schema=always +spring.quartz.jdbc.initialize-schema=never spring.quartz.properties.org.quartz.scheduler.instanceName=quartz-abstracto-app