fix: revert BotInitializer to original (Guice compat)
This commit is contained in:
parent
df92b6cb68
commit
c5bac60ebf
1 changed files with 31 additions and 39 deletions
|
|
@ -23,44 +23,45 @@ import org.slf4j.LoggerFactory;
|
|||
public class BotInitializer {
|
||||
private static final Logger logger = LoggerFactory.getLogger(BotInitializer.class);
|
||||
|
||||
public record BotServices(
|
||||
private final BotConfig config;
|
||||
private final PrefixCommandRegistrar registrar;
|
||||
private final ListenerAggregator listenerAggregator;
|
||||
private final MuteScheduler muteScheduler;
|
||||
private final MemberCounterListener memberCounterListener;
|
||||
private final HealthHttpServer healthHttpServer;
|
||||
private final ShutdownManager shutdownManager;
|
||||
private final LavalinkManager lavalinkManager;
|
||||
private final RadioManager radioManager;
|
||||
private final QueueRepository queueRepository;
|
||||
|
||||
@Inject
|
||||
public BotInitializer(
|
||||
BotConfig config,
|
||||
PrefixCommandRegistrar registrar,
|
||||
ListenerAggregator listenerAggregator,
|
||||
MuteScheduler muteScheduler,
|
||||
MemberCounterListener memberCounterListener) {}
|
||||
|
||||
public record Infrastructure(
|
||||
MemberCounterListener memberCounterListener,
|
||||
HealthHttpServer healthHttpServer,
|
||||
ShutdownManager shutdownManager,
|
||||
LavalinkManager lavalinkManager,
|
||||
RadioManager radioManager,
|
||||
QueueRepository queueRepository) {}
|
||||
|
||||
private final BotServices botServices;
|
||||
private final Infrastructure infra;
|
||||
|
||||
@Inject
|
||||
public BotInitializer(final BotServices botServices, final Infrastructure infra) {
|
||||
this.botServices = botServices;
|
||||
this.infra = infra;
|
||||
QueueRepository queueRepository) {
|
||||
this.config = config;
|
||||
this.registrar = registrar;
|
||||
this.listenerAggregator = listenerAggregator;
|
||||
this.muteScheduler = muteScheduler;
|
||||
this.memberCounterListener = memberCounterListener;
|
||||
this.healthHttpServer = healthHttpServer;
|
||||
this.shutdownManager = shutdownManager;
|
||||
this.lavalinkManager = lavalinkManager;
|
||||
this.radioManager = radioManager;
|
||||
this.queueRepository = queueRepository;
|
||||
}
|
||||
|
||||
public BotCluster start() {
|
||||
var config = botServices.config();
|
||||
var registrar = botServices.registrar();
|
||||
var listenerAggregator = botServices.listenerAggregator();
|
||||
var muteScheduler = botServices.muteScheduler();
|
||||
var memberCounterListener = botServices.memberCounterListener();
|
||||
var healthHttpServer = infra.healthHttpServer();
|
||||
var shutdownManager = infra.shutdownManager();
|
||||
var lavalinkManager = infra.lavalinkManager();
|
||||
var radioManager = infra.radioManager();
|
||||
var queueRepository = infra.queueRepository();
|
||||
|
||||
LoggerDecorator.startup(logger, "Инициализация main бота...");
|
||||
registrar.registerAll();
|
||||
JDA mainJda = buildMainJDA(config, listenerAggregator, lavalinkManager);
|
||||
JDA mainJda = buildMainJDA();
|
||||
muteScheduler.restorePending(mainJda);
|
||||
mainJda.getGuilds().forEach(g -> memberCounterListener.startScheduler(g));
|
||||
healthHttpServer.start();
|
||||
|
|
@ -73,13 +74,13 @@ public class BotInitializer {
|
|||
}
|
||||
});
|
||||
|
||||
JDA musicJda = createMusicJDA(config, queueRepository, lavalinkManager);
|
||||
JDA musicJda = createMusicJDA();
|
||||
JDA radioJda = null;
|
||||
if (config.getRadioToken() != null && !config.getRadioToken().isBlank()) {
|
||||
sleep(3000);
|
||||
LavalinkManager radioLavalink =
|
||||
LavalinkManagerFactory.create(config, queueRepository, config.getRadioToken());
|
||||
radioJda = createRadioJDA(config, radioLavalink, radioManager);
|
||||
radioJda = createRadioJDA(radioLavalink);
|
||||
if (radioJda != null) {
|
||||
radioManager.setRadioJda(radioJda);
|
||||
radioManager.setLavalinkManager(radioLavalink);
|
||||
|
|
@ -91,10 +92,7 @@ public class BotInitializer {
|
|||
return cluster;
|
||||
}
|
||||
|
||||
private JDA buildMainJDA(
|
||||
final BotConfig config,
|
||||
final ListenerAggregator listenerAggregator,
|
||||
final LavalinkManager lavalinkManager) {
|
||||
private JDA buildMainJDA() {
|
||||
var builder =
|
||||
JdaFactory.createBuilder(
|
||||
config.getMainToken(),
|
||||
|
|
@ -107,10 +105,7 @@ public class BotInitializer {
|
|||
return buildWithLavalink(builder, lavalinkManager);
|
||||
}
|
||||
|
||||
private JDA createMusicJDA(
|
||||
final BotConfig config,
|
||||
final QueueRepository queueRepository,
|
||||
final LavalinkManager lavalinkManager) {
|
||||
private JDA createMusicJDA() {
|
||||
if (config.getMusicToken() == null || config.getMusicToken().isBlank()) {
|
||||
return null;
|
||||
}
|
||||
|
|
@ -128,10 +123,7 @@ public class BotInitializer {
|
|||
return buildWithLavalink(builder, ml);
|
||||
}
|
||||
|
||||
private JDA createRadioJDA(
|
||||
final BotConfig config,
|
||||
final LavalinkManager radioLavalink,
|
||||
final RadioManager radioManager) {
|
||||
private JDA createRadioJDA(final LavalinkManager radioLavalink) {
|
||||
if (config.getRadioToken() == null || config.getRadioToken().isBlank()) {
|
||||
return null;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue