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

View file

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