Skip to content

Commit 5a75a3c

Browse files
authored
GH-668 Use multification to send notifications. (#668)
* Use multification to send notifications. * Refresh snapshots.
1 parent 4810850 commit 5a75a3c

File tree

67 files changed

+329
-1857
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

67 files changed

+329
-1857
lines changed

buildSrc/src/main/kotlin/Versions.kt

+3-1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ object Versions {
33
const val SPIGOT_API = "1.19.4-R0.1-SNAPSHOT"
44
const val PAPER_API = "1.19.4-R0.1-SNAPSHOT"
55

6+
const val MULTIFICATION = "1.0.1-SNAPSHOT"
7+
68
const val JETBRAINS_ANNOTATIONS = "24.1.0"
79
const val PLACEHOLDER_API = "2.11.5"
810
const val LOMBOK = "1.18.30"
@@ -43,4 +45,4 @@ object Versions {
4345
const val JUNIT_JUPITER_ENGINE = "5.10.2"
4446
const val MOCKITO_CORE = "5.10.0"
4547

46-
}
48+
}

eternalcore-core/build.gradle.kts

+3
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,9 @@ dependencies {
2424

2525
//GitCheck
2626
implementation("com.eternalcode:gitcheck:${Versions.GIT_CHECK}")
27+
28+
implementation("com.eternalcode:multification-core:${Versions.MULTIFICATION}")
29+
implementation("com.eternalcode:multification-cdn:${Versions.MULTIFICATION}")
2730
}
2831

2932
eternalShadow {

eternalcore-core/src/main/java/com/eternalcode/core/bridge/litecommand/argument/AbstractViewerArgument.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import com.eternalcode.core.translation.Translation;
44
import com.eternalcode.core.translation.TranslationManager;
55
import com.eternalcode.core.viewer.Viewer;
6-
import com.eternalcode.core.viewer.ViewerProvider;
6+
import com.eternalcode.core.viewer.ViewerService;
77
import dev.rollczi.litecommands.argument.Argument;
88
import dev.rollczi.litecommands.argument.parser.ParseResult;
99
import dev.rollczi.litecommands.argument.resolver.ArgumentResolver;
@@ -12,17 +12,17 @@
1212

1313
public abstract class AbstractViewerArgument<T> extends ArgumentResolver<CommandSender, T> {
1414

15-
protected final ViewerProvider viewerProvider;
15+
protected final ViewerService viewerService;
1616
protected final TranslationManager translationManager;
1717

18-
protected AbstractViewerArgument(ViewerProvider viewerProvider, TranslationManager translationManager) {
19-
this.viewerProvider = viewerProvider;
18+
protected AbstractViewerArgument(ViewerService viewerService, TranslationManager translationManager) {
19+
this.viewerService = viewerService;
2020
this.translationManager = translationManager;
2121
}
2222

2323
@Override
2424
protected ParseResult<T> parse(Invocation<CommandSender> invocation, Argument<T> context, String argument) {
25-
Viewer viewer = this.viewerProvider.any(invocation.sender());
25+
Viewer viewer = this.viewerService.any(invocation.sender());
2626
Translation translation = this.translationManager.getMessages(viewer.getLanguage());
2727

2828
return this.parse(invocation, argument, translation);

eternalcore-core/src/main/java/com/eternalcode/core/bridge/litecommand/argument/DurationArgument.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import com.eternalcode.core.translation.Translation;
66
import com.eternalcode.core.translation.TranslationManager;
77
import com.eternalcode.core.util.DurationUtil;
8-
import com.eternalcode.core.viewer.ViewerProvider;
8+
import com.eternalcode.core.viewer.ViewerService;
99
import dev.rollczi.litecommands.argument.Argument;
1010
import dev.rollczi.litecommands.argument.parser.ParseResult;
1111
import dev.rollczi.litecommands.invocation.Invocation;
@@ -33,8 +33,8 @@ class DurationArgument extends AbstractViewerArgument<Duration> {
3333
);
3434

3535
@Inject
36-
DurationArgument(ViewerProvider viewerProvider, TranslationManager translationManager) {
37-
super(viewerProvider, translationManager);
36+
DurationArgument(ViewerService viewerService, TranslationManager translationManager) {
37+
super(viewerService, translationManager);
3838
}
3939

4040
@Override

eternalcore-core/src/main/java/com/eternalcode/core/bridge/litecommand/argument/EnchantmentArgument.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
import com.eternalcode.core.injector.annotations.lite.LiteArgument;
55
import com.eternalcode.core.translation.Translation;
66
import com.eternalcode.core.translation.TranslationManager;
7-
import com.eternalcode.core.viewer.ViewerProvider;
7+
import com.eternalcode.core.viewer.ViewerService;
88
import dev.rollczi.litecommands.argument.Argument;
99
import dev.rollczi.litecommands.argument.parser.ParseResult;
1010
import dev.rollczi.litecommands.invocation.Invocation;
@@ -20,8 +20,8 @@
2020
class EnchantmentArgument extends AbstractViewerArgument<Enchantment> {
2121

2222
@Inject
23-
EnchantmentArgument(ViewerProvider viewerProvider, TranslationManager translationManager) {
24-
super(viewerProvider, translationManager);
23+
EnchantmentArgument(ViewerService viewerService, TranslationManager translationManager) {
24+
super(viewerService, translationManager);
2525
}
2626

2727
@Override

eternalcore-core/src/main/java/com/eternalcode/core/bridge/litecommand/argument/GameModeArgument.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import com.eternalcode.core.injector.annotations.lite.LiteArgument;
66
import com.eternalcode.core.translation.Translation;
77
import com.eternalcode.core.translation.TranslationManager;
8-
import com.eternalcode.core.viewer.ViewerProvider;
8+
import com.eternalcode.core.viewer.ViewerService;
99
import dev.rollczi.litecommands.argument.Argument;
1010
import dev.rollczi.litecommands.argument.parser.ParseResult;
1111
import dev.rollczi.litecommands.invocation.Invocation;
@@ -23,8 +23,8 @@ class GameModeArgument extends AbstractViewerArgument<GameMode> {
2323
private final GameModeArgumentSettings gameModeArgumentSettings;
2424

2525
@Inject
26-
GameModeArgument(ViewerProvider viewerProvider, TranslationManager translationManager, GameModeArgumentSettings gameModeArgumentSettings) {
27-
super(viewerProvider, translationManager);
26+
GameModeArgument(ViewerService viewerService, TranslationManager translationManager, GameModeArgumentSettings gameModeArgumentSettings) {
27+
super(viewerService, translationManager);
2828
this.gameModeArgumentSettings = gameModeArgumentSettings;
2929
}
3030

eternalcore-core/src/main/java/com/eternalcode/core/bridge/litecommand/argument/NoticeTypeArgument.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import com.eternalcode.core.notice.NoticeTextType;
66
import com.eternalcode.core.translation.Translation;
77
import com.eternalcode.core.translation.TranslationManager;
8-
import com.eternalcode.core.viewer.ViewerProvider;
8+
import com.eternalcode.core.viewer.ViewerService;
99
import dev.rollczi.litecommands.argument.Argument;
1010
import dev.rollczi.litecommands.argument.parser.ParseResult;
1111
import dev.rollczi.litecommands.invocation.Invocation;
@@ -19,8 +19,8 @@
1919
class NoticeTypeArgument extends AbstractViewerArgument<NoticeTextType> {
2020

2121
@Inject
22-
NoticeTypeArgument(ViewerProvider viewerProvider, TranslationManager translationManager) {
23-
super(viewerProvider, translationManager);
22+
NoticeTypeArgument(ViewerService viewerService, TranslationManager translationManager) {
23+
super(viewerService, translationManager);
2424
}
2525

2626
@Override

eternalcore-core/src/main/java/com/eternalcode/core/bridge/litecommand/argument/PlayerArgument.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
import com.eternalcode.core.injector.annotations.lite.LiteArgument;
55
import com.eternalcode.core.translation.Translation;
66
import com.eternalcode.core.translation.TranslationManager;
7-
import com.eternalcode.core.viewer.ViewerProvider;
7+
import com.eternalcode.core.viewer.ViewerService;
88
import dev.rollczi.litecommands.argument.Argument;
99
import dev.rollczi.litecommands.argument.parser.ParseResult;
1010
import dev.rollczi.litecommands.invocation.Invocation;
@@ -21,8 +21,8 @@ public class PlayerArgument extends AbstractViewerArgument<Player> {
2121
private final Server server;
2222

2323
@Inject
24-
public PlayerArgument(ViewerProvider viewerProvider, TranslationManager translationManager, Server server) {
25-
super(viewerProvider, translationManager);
24+
public PlayerArgument(ViewerService viewerService, TranslationManager translationManager, Server server) {
25+
super(viewerService, translationManager);
2626
this.server = server;
2727
}
2828

eternalcore-core/src/main/java/com/eternalcode/core/bridge/litecommand/argument/UserArgument.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import com.eternalcode.core.translation.TranslationManager;
77
import com.eternalcode.core.user.User;
88
import com.eternalcode.core.user.UserManager;
9-
import com.eternalcode.core.viewer.ViewerProvider;
9+
import com.eternalcode.core.viewer.ViewerService;
1010
import dev.rollczi.litecommands.argument.Argument;
1111
import dev.rollczi.litecommands.argument.parser.ParseResult;
1212
import dev.rollczi.litecommands.invocation.Invocation;
@@ -23,8 +23,8 @@ class UserArgument extends AbstractViewerArgument<User> {
2323
private final UserManager userManager;
2424

2525
@Inject
26-
UserArgument(ViewerProvider viewerProvider, TranslationManager translationManager, Server server, UserManager userManager) {
27-
super(viewerProvider, translationManager);
26+
UserArgument(ViewerService viewerService, TranslationManager translationManager, Server server, UserManager userManager) {
27+
super(viewerService, translationManager);
2828
this.server = server;
2929
this.userManager = userManager;
3030
}

eternalcore-core/src/main/java/com/eternalcode/core/bridge/litecommand/contextual/PlayerContextual.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import com.eternalcode.core.injector.annotations.Inject;
44
import com.eternalcode.core.injector.annotations.lite.LiteContextual;
5-
import com.eternalcode.core.notice.Notice;
5+
import com.eternalcode.multification.notice.Notice;
66
import com.eternalcode.core.translation.Translation;
77
import com.eternalcode.core.translation.TranslationManager;
88
import dev.rollczi.litecommands.context.ContextProvider;

eternalcore-core/src/main/java/com/eternalcode/core/bridge/litecommand/contextual/UserContextual.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import com.eternalcode.core.injector.annotations.Inject;
44
import com.eternalcode.core.injector.annotations.lite.LiteContextual;
5-
import com.eternalcode.core.notice.Notice;
5+
import com.eternalcode.multification.notice.Notice;
66
import com.eternalcode.core.translation.Translation;
77
import com.eternalcode.core.translation.TranslationManager;
88
import com.eternalcode.core.user.User;

eternalcore-core/src/main/java/com/eternalcode/core/bridge/litecommand/contextual/ViewerContextual.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import com.eternalcode.core.injector.annotations.Inject;
44
import com.eternalcode.core.injector.annotations.lite.LiteContextual;
5-
import com.eternalcode.core.viewer.ViewerProvider;
5+
import com.eternalcode.core.viewer.ViewerService;
66
import com.eternalcode.core.viewer.Viewer;
77
import dev.rollczi.litecommands.context.ContextProvider;
88
import dev.rollczi.litecommands.context.ContextResult;
@@ -12,16 +12,16 @@
1212
@LiteContextual(Viewer.class)
1313
class ViewerContextual implements ContextProvider<CommandSender, Viewer> {
1414

15-
private final ViewerProvider bukkitViewerProvider;
15+
private final ViewerService bukkitViewerService;
1616

1717
@Inject
18-
ViewerContextual(ViewerProvider bukkitViewerProvider) {
19-
this.bukkitViewerProvider = bukkitViewerProvider;
18+
ViewerContextual(ViewerService bukkitViewerService) {
19+
this.bukkitViewerService = bukkitViewerService;
2020
}
2121

2222
@Override
2323
public ContextResult<Viewer> provide(Invocation<CommandSender> invocation) {
24-
return ContextResult.ok(() -> this.bukkitViewerProvider.any(invocation.sender()));
24+
return ContextResult.ok(() -> this.bukkitViewerService.any(invocation.sender()));
2525
}
2626

2727
}

eternalcore-core/src/main/java/com/eternalcode/core/bridge/litecommand/handler/InvalidUsageHandlerImpl.java

+6-6
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
import com.eternalcode.core.injector.annotations.lite.LiteHandler;
55
import com.eternalcode.core.notice.NoticeService;
66
import com.eternalcode.core.placeholder.Placeholders;
7-
import com.eternalcode.core.viewer.ViewerProvider;
7+
import com.eternalcode.core.viewer.ViewerService;
88
import com.eternalcode.core.viewer.Viewer;
99
import dev.rollczi.litecommands.handler.result.ResultHandlerChain;
1010
import dev.rollczi.litecommands.invalidusage.InvalidUsage;
@@ -18,25 +18,25 @@ public class InvalidUsageHandlerImpl implements InvalidUsageHandler<CommandSende
1818

1919
private static final Placeholders<String> SCHEME = Placeholders.of("{USAGE}", scheme -> scheme);
2020

21-
private final ViewerProvider viewerProvider;
21+
private final ViewerService viewerService;
2222
private final NoticeService noticeService;
2323

2424
@Inject
25-
public InvalidUsageHandlerImpl(ViewerProvider viewerProvider, NoticeService noticeService) {
26-
this.viewerProvider = viewerProvider;
25+
public InvalidUsageHandlerImpl(ViewerService viewerService, NoticeService noticeService) {
26+
this.viewerService = viewerService;
2727
this.noticeService = noticeService;
2828
}
2929

3030
@Override
3131
public void handle(Invocation<CommandSender> invocation, InvalidUsage<CommandSender> result, ResultHandlerChain<CommandSender> chain) {
32-
Viewer viewer = this.viewerProvider.any(invocation.sender());
32+
Viewer viewer = this.viewerService.any(invocation.sender());
3333
Schematic schematic = result.getSchematic();
3434

3535
if (schematic.isOnlyFirst()) {
3636
this.noticeService.create()
3737
.viewer(viewer)
3838
.notice(translation -> translation.argument().usageMessage())
39-
.placeholder(SCHEME, schematic.first())
39+
.placeholders(SCHEME, schematic.first())
4040
.send();
4141
return;
4242
}

eternalcore-core/src/main/java/com/eternalcode/core/bridge/litecommand/handler/NoticeBroadcastHandler.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package com.eternalcode.core.bridge.litecommand.handler;
22

33
import com.eternalcode.core.injector.annotations.lite.LiteHandler;
4-
import com.eternalcode.core.notice.NoticeBroadcast;
4+
import com.eternalcode.multification.notice.NoticeBroadcast;
55
import dev.rollczi.litecommands.handler.result.ResultHandler;
66
import dev.rollczi.litecommands.handler.result.ResultHandlerChain;
77
import dev.rollczi.litecommands.invocation.Invocation;

eternalcore-core/src/main/java/com/eternalcode/core/bridge/litecommand/handler/NoticeHandler.java

+7-7
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33
import com.eternalcode.core.injector.annotations.Inject;
44
import com.eternalcode.core.injector.annotations.lite.LiteHandler;
55
import com.eternalcode.core.notice.NoticeService;
6-
import com.eternalcode.core.notice.Notice;
7-
import com.eternalcode.core.viewer.ViewerProvider;
6+
import com.eternalcode.multification.notice.Notice;
7+
import com.eternalcode.core.viewer.ViewerService;
88
import com.eternalcode.core.viewer.Viewer;
99
import dev.rollczi.litecommands.handler.result.ResultHandler;
1010
import dev.rollczi.litecommands.handler.result.ResultHandlerChain;
@@ -14,22 +14,22 @@
1414
@LiteHandler(Notice.class)
1515
public class NoticeHandler implements ResultHandler<CommandSender, Notice> {
1616

17-
private final ViewerProvider viewerProvider;
17+
private final ViewerService viewerService;
1818
private final NoticeService noticeService;
1919

2020
@Inject
21-
public NoticeHandler(ViewerProvider viewerProvider, NoticeService noticeService) {
22-
this.viewerProvider = viewerProvider;
21+
public NoticeHandler(ViewerService viewerService, NoticeService noticeService) {
22+
this.viewerService = viewerService;
2323
this.noticeService = noticeService;
2424
}
2525

2626
@Override
2727
public void handle(Invocation<CommandSender> invocation, Notice result, ResultHandlerChain<CommandSender> chain) {
28-
Viewer viewer = this.viewerProvider.any(invocation.sender());
28+
Viewer viewer = this.viewerService.any(invocation.sender());
2929

3030
this.noticeService.create()
3131
.viewer(viewer)
32-
.staticNotice(result)
32+
.notice(result)
3333
.send();
3434
}
3535

eternalcore-core/src/main/java/com/eternalcode/core/bridge/litecommand/handler/PermissionMessage.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import com.eternalcode.core.injector.annotations.Inject;
44
import com.eternalcode.core.injector.annotations.lite.LiteHandler;
55
import com.eternalcode.core.notice.NoticeService;
6-
import com.eternalcode.core.viewer.ViewerProvider;
6+
import com.eternalcode.core.viewer.ViewerService;
77
import com.eternalcode.core.viewer.Viewer;
88
import dev.rollczi.litecommands.handler.result.ResultHandlerChain;
99
import dev.rollczi.litecommands.invocation.Invocation;
@@ -14,18 +14,18 @@
1414
@LiteHandler(MissingPermissions.class)
1515
public class PermissionMessage implements MissingPermissionsHandler<CommandSender> {
1616

17-
private final ViewerProvider viewerProvider;
17+
private final ViewerService viewerService;
1818
private final NoticeService noticeService;
1919

2020
@Inject
21-
public PermissionMessage(ViewerProvider viewerProvider, NoticeService noticeService) {
22-
this.viewerProvider = viewerProvider;
21+
public PermissionMessage(ViewerService viewerService, NoticeService noticeService) {
22+
this.viewerService = viewerService;
2323
this.noticeService = noticeService;
2424
}
2525

2626
@Override
2727
public void handle(Invocation<CommandSender> invocation, MissingPermissions missingPermissions, ResultHandlerChain<CommandSender> chain) {
28-
Viewer viewer = this.viewerProvider.any(invocation.sender());
28+
Viewer viewer = this.viewerService.any(invocation.sender());
2929
String permissions = missingPermissions.asJoinedText();
3030

3131
this.noticeService.create()

eternalcore-core/src/main/java/com/eternalcode/core/configuration/ConfigurationManager.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@
77
import com.eternalcode.core.injector.annotations.Inject;
88
import com.eternalcode.core.injector.annotations.component.Service;
99
import com.eternalcode.core.feature.language.Language;
10-
import com.eternalcode.core.notice.Notice;
11-
import com.eternalcode.core.notice.NoticeComposer;
1210
import com.eternalcode.core.shared.Position;
11+
import com.eternalcode.multification.cdn.MultificationNoticeCdnComposer;
12+
import com.eternalcode.multification.notice.Notice;
1313
import net.dzikoysk.cdn.Cdn;
1414
import net.dzikoysk.cdn.CdnFactory;
1515
import net.dzikoysk.cdn.reflect.Visibility;
@@ -31,7 +31,7 @@ public class ConfigurationManager {
3131
.withComposer(Duration.class, new DurationComposer())
3232
.withComposer(Language.class, new LanguageComposer())
3333
.withComposer(Position.class, new PositionComposer())
34-
.withComposer(Notice.class, new NoticeComposer())
34+
.withComposer(Notice.class, new MultificationNoticeCdnComposer())
3535
.withComposer(Material.class, new MaterialComposer())
3636
.withMemberResolver(Visibility.PACKAGE_PRIVATE)
3737
.build();

eternalcore-core/src/main/java/com/eternalcode/core/feature/adminchat/AdminChatCommand.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
import com.eternalcode.core.event.EventCaller;
55
import com.eternalcode.core.feature.adminchat.event.AdminChatEvent;
66
import com.eternalcode.core.injector.annotations.Inject;
7-
import com.eternalcode.core.notice.NoticeBroadcast;
87
import com.eternalcode.core.notice.NoticeService;
8+
import com.eternalcode.multification.notice.NoticeBroadcast;
99
import dev.rollczi.litecommands.annotations.context.Context;
1010
import dev.rollczi.litecommands.annotations.join.Join;
1111
import dev.rollczi.litecommands.annotations.execute.Execute;

eternalcore-core/src/main/java/com/eternalcode/core/feature/automessage/AutoMessageService.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
import com.eternalcode.core.configuration.implementation.PluginConfiguration;
55
import com.eternalcode.core.injector.annotations.Inject;
66
import com.eternalcode.core.injector.annotations.component.Service;
7-
import com.eternalcode.core.notice.Notice;
7+
import com.eternalcode.multification.notice.Notice;
88
import com.eternalcode.core.notice.NoticeService;
99
import com.eternalcode.core.scheduler.Scheduler;
1010
import com.eternalcode.core.translation.Translation;

0 commit comments

Comments
 (0)