fix: revert registrar records to individual params (Guice compat)

This commit is contained in:
loki5512344 2026-08-06 20:07:43 +02:00
parent aa8adeb3d8
commit df92b6cb68
Signed by: boba
GPG key ID: 253067914055423B
2 changed files with 49 additions and 42 deletions

View file

@ -26,38 +26,37 @@ import creator.loki.feature.role.command.EditRoleCommand;
import creator.loki.feature.role.command.MyRolesCommand;
public class ModerationCommandRegistrar implements CommandRegistrar {
public record Repositories(
WarningRepository warningRepository,
ConfigRepository configRepository,
ModerationCaseRepository moderationCaseRepository,
ActiveMuteRepository activeMuteRepository,
GuildConfigRepository guildConfigRepository) {}
private final CustomRoleManager roleManager;
private final Repositories repositories;
private final WarningRepository warningRepository;
private final ConfigRepository configRepository;
private final ModerationCaseRepository moderationCaseRepository;
private final ActiveMuteRepository activeMuteRepository;
private final MuteScheduler muteScheduler;
private final MuteRoleService muteRoleService;
private final GuildConfigRepository guildConfigRepository;
@Inject
public ModerationCommandRegistrar(
CustomRoleManager roleManager,
Repositories repositories,
WarningRepository warningRepository,
ConfigRepository configRepository,
ModerationCaseRepository moderationCaseRepository,
ActiveMuteRepository activeMuteRepository,
MuteScheduler muteScheduler,
MuteRoleService muteRoleService) {
MuteRoleService muteRoleService,
GuildConfigRepository guildConfigRepository) {
this.roleManager = roleManager;
this.repositories = repositories;
this.warningRepository = warningRepository;
this.configRepository = configRepository;
this.moderationCaseRepository = moderationCaseRepository;
this.activeMuteRepository = activeMuteRepository;
this.muteScheduler = muteScheduler;
this.muteRoleService = muteRoleService;
this.guildConfigRepository = guildConfigRepository;
}
@Override
public void register(final CommandRegistry registry) {
var warningRepository = repositories.warningRepository();
var configRepository = repositories.configRepository();
var moderationCaseRepository = repositories.moderationCaseRepository();
var activeMuteRepository = repositories.activeMuteRepository();
var guildConfigRepository = repositories.guildConfigRepository();
registry.register(PunishCommand.ban());
registry.register(PunishCommand.kick());
registry.register(

View file

@ -28,51 +28,59 @@ import creator.loki.feature.voice.service.VoiceChannelManager;
import creator.loki.feature.voice.service.VoiceSetupPrefixCommand;
public class UtilityCommandRegistrar implements CommandRegistrar {
public record CoreServices(
private final CommandRegistry commandRegistry;
private final BotConfig config;
private final MetricsCollector metrics;
private final ConfigRepository configRepository;
private final VoiceChannelManager voiceChannelManager;
private final CounterManager counterManager;
private final RatingsRepository ratingsRepository;
private final ReputationRepository reputationRepository;
private final CooldownManager cooldownManager;
private final ServerStatsService serverStatsService;
@Inject
public UtilityCommandRegistrar(
CommandRegistry commandRegistry,
BotConfig config,
MetricsCollector metrics,
ConfigRepository configRepository,
VoiceChannelManager voiceChannelManager,
CounterManager counterManager) {}
public record RepoServices(
CounterManager counterManager,
RatingsRepository ratingsRepository,
ReputationRepository reputationRepository,
CooldownManager cooldownManager,
CounterStatsRepository counterStatsRepository) {}
private final CoreServices core;
private final RepoServices repos;
private final ServerStatsService serverStatsService;
@Inject
public UtilityCommandRegistrar(final CoreServices core, final RepoServices repos) {
this.core = core;
this.repos = repos;
this.serverStatsService = new ServerStatsService(repos.counterStatsRepository());
final CounterStatsRepository counterStatsRepository) {
this.commandRegistry = commandRegistry;
this.config = config;
this.metrics = metrics;
this.configRepository = configRepository;
this.voiceChannelManager = voiceChannelManager;
this.counterManager = counterManager;
this.ratingsRepository = ratingsRepository;
this.reputationRepository = reputationRepository;
this.cooldownManager = cooldownManager;
this.serverStatsService = new ServerStatsService(counterStatsRepository);
}
@Override
public void register(final CommandRegistry registry) {
registry.register(new PingCommand());
registry.register(new HelpCommand(core.commandRegistry(), core.config()));
registry.register(new HelpCommand(commandRegistry, config));
registry.register(new InfoCommand());
registry.register(new MetricsCommand(core.metrics(), core.config()));
registry.register(new MetricsCommand(metrics, config));
registry.register(new AvatarCommand());
registry.register(new ServerStatsCommand(serverStatsService));
registry.register(new PollCommand());
registry.register(new TimerCommand());
registry.register(
new VoiceSetupPrefixCommand(core.voiceChannelManager(), core.configRepository()));
registry.register(
new CounterSetupPrefixCommand(core.counterManager(), core.configRepository()));
registry.register(new VoiceSetupPrefixCommand(voiceChannelManager, configRepository));
registry.register(new CounterSetupPrefixCommand(counterManager, configRepository));
registry.register(new GenerateRatingsCommand(repos.ratingsRepository(), core.config()));
registry.register(new GenerateRatingsCommand(ratingsRepository, config));
registry.register(new RepCommand(repos.reputationRepository(), repos.cooldownManager()));
registry.register(new MinusRepCommand(repos.reputationRepository(), repos.cooldownManager()));
registry.register(new RepTopCommand(repos.reputationRepository()));
registry.register(new RepCommand(reputationRepository, cooldownManager));
registry.register(new MinusRepCommand(reputationRepository, cooldownManager));
registry.register(new RepTopCommand(reputationRepository));
}
}