Skip to content
This repository was archived by the owner on Jun 12, 2023. It is now read-only.

Commit 502a406

Browse files
committed
feat(inject): change the way of injecting the dependencies of the configuration files and also the message manager making it more comfortable and more flexible.
refactor(identation): apply code style from editorconfig rules
1 parent cea85f0 commit 502a406

File tree

1 file changed

+41
-52
lines changed

1 file changed

+41
-52
lines changed
Lines changed: 41 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,13 @@
11
package me.jonakls.miniannouncer.module;
22

3-
import me.clip.placeholderapi.PlaceholderAPI;
43
import me.jonakls.miniannouncer.BukkitConfiguration;
5-
import me.jonakls.miniannouncer.MiniAnnouncer;
4+
import me.jonakls.miniannouncer.MiniAnnouncerPlugin;
65
import me.jonakls.miniannouncer.announce.AnnounceService;
76
import me.jonakls.miniannouncer.announce.AnnouncementManager;
87
import me.jonakls.miniannouncer.message.MessageHandler;
9-
import me.jonakls.miniannouncer.message.MessageInterceptor;
108
import me.jonakls.miniannouncer.module.submodules.CommandModule;
119
import me.jonakls.miniannouncer.service.CommandService;
1210
import me.jonakls.miniannouncer.service.Service;
13-
import org.bukkit.Bukkit;
14-
import org.bukkit.entity.Player;
1511
import org.slf4j.Logger;
1612
import team.unnamed.inject.AbstractModule;
1713
import team.unnamed.inject.Provides;
@@ -20,51 +16,44 @@
2016

2117
public class PluginModule extends AbstractModule {
2218

23-
private final MiniAnnouncer plugin;
24-
25-
public PluginModule(MiniAnnouncer plugin) {
26-
this.plugin = plugin;
27-
}
28-
29-
@Singleton
30-
@Provides
31-
public Logger logger(MiniAnnouncer plugin) {
32-
return plugin.getSLF4JLogger();
33-
}
34-
35-
@Override
36-
protected void configure() {
37-
bind(MiniAnnouncer.class).toInstance(plugin);
38-
39-
BukkitConfiguration config = new BukkitConfiguration(plugin, "config");
40-
bind(BukkitConfiguration.class)
41-
.toInstance(config);
42-
43-
MessageHandler messageHandler = new MessageHandler(config);
44-
45-
if (Bukkit.getServer().getPluginManager().getPlugin("PlaceholderAPI") != null) {
46-
47-
messageHandler.addInterceptor((sender, message) -> {
48-
if (sender instanceof Player) {
49-
return PlaceholderAPI.setPlaceholders((Player) sender, message);
50-
}
51-
return message;
52-
});
53-
}
54-
55-
messageHandler.addInterceptor(MessageInterceptor.CHAT_COLOR_INTERCEPTOR);
56-
57-
bind(MessageHandler.class)
58-
.toInstance(messageHandler);
59-
60-
multibind(Service.class)
61-
.asSet()
62-
.to(AnnounceService.class)
63-
.to(CommandService.class)
64-
.singleton();
65-
66-
bind(AnnouncementManager.class).singleton();
67-
68-
install(new CommandModule(plugin));
69-
}
19+
private final MiniAnnouncerPlugin plugin;
20+
21+
public PluginModule(MiniAnnouncerPlugin plugin) {
22+
this.plugin = plugin;
23+
}
24+
25+
@Singleton
26+
@Provides
27+
public Logger logger(MiniAnnouncerPlugin plugin) {
28+
return plugin.getSLF4JLogger();
29+
}
30+
31+
@Singleton
32+
@Provides
33+
public BukkitConfiguration configurationProvides(MiniAnnouncerPlugin plugin) {
34+
return BukkitConfiguration.of(plugin, "config");
35+
}
36+
37+
@Singleton
38+
@Provides
39+
public MessageHandler messageHandlerProvides(BukkitConfiguration config) {
40+
return MessageHandler.create(config);
41+
}
42+
43+
@Override
44+
protected void configure() {
45+
super.bind(MiniAnnouncerPlugin.class)
46+
.toInstance(plugin);
47+
48+
super.multibind(Service.class)
49+
.asSet()
50+
.to(AnnounceService.class)
51+
.to(CommandService.class)
52+
.singleton();
53+
54+
super.bind(AnnouncementManager.class)
55+
.singleton();
56+
57+
super.install(new CommandModule(plugin));
58+
}
7059
}

0 commit comments

Comments
 (0)