0

регистрация событий чата

This commit is contained in:
2019-08-26 17:10:07 +03:00
parent 3e2c06b4a1
commit dde16101f7
3 changed files with 77 additions and 3 deletions

View File

@@ -1,11 +1,44 @@
package ru.dmitriymx.minecraft.globalchat;
import org.bukkit.Bukkit;
import org.bukkit.plugin.java.JavaPlugin;
import ru.dmitriymx.minecraft.globalchat.mq.KafkaService;
public class MainPlugin extends JavaPlugin {
private KafkaService service;
private Thread mqThread;
@Override
public void onEnable() {
getLogger().info("hello?");
initKafkaService();
getServer().getPluginManager().registerEvents(new ChatListener(service), this);
}
@Override
public void onDisable() {
mqThread.interrupt();
}
private void initKafkaService() {
//FIXME перенести в конфигурацию
service = new KafkaService("127.0.0.1:9092", "global-chat", 1000);
mqThread = new Thread(() -> {
while (!Thread.currentThread().isInterrupted()) {
service.get().forEach(messageData -> {
//FIXME формат сообщений должен браться из конфига
Bukkit.getServer().broadcastMessage(String.format(
"%s: %s",
messageData.getPlayerName(),
messageData.getMessage()
));
});
}
service.shutdown();
service = null;
}, "Kafka service listener");
mqThread.start();
}
}