Skip to content

Commit 6ea5855

Browse files
committed
Config options for channel archival tools.
1 parent f55b5ab commit 6ea5855

File tree

3 files changed

+23
-2
lines changed

3 files changed

+23
-2
lines changed

src/commander/java/com/mcmoddev/mmdbot/commander/TheCommander.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -454,7 +454,9 @@ record SlashCommandRegistration(Object fieldValue, RegisterSlashCommand annotati
454454
.create(getToken(), INTENTS)
455455
.addEventListeners(listenerConsumer((ReadyEvent event) -> {
456456
startupTime = Instant.now();
457-
Events.MISC_BUS.addListener((final TaskScheduler.CollectTasksEvent ct) -> OldChannelsHelper.registerListeners(ct, event.getJDA()));
457+
if (generalConfig.features().areOldChannelChecksEnabled()) {
458+
Events.MISC_BUS.addListener((final TaskScheduler.CollectTasksEvent ct) -> OldChannelsHelper.registerListeners(ct, event.getJDA()));
459+
}
458460
}), CustomPingsListener.LISTENER.get())
459461
.disableCache(CacheFlag.CLIENT_STATUS)
460462
.disableCache(CacheFlag.ONLINE_STATUS)

src/commander/java/com/mcmoddev/mmdbot/commander/config/Configuration.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -202,6 +202,24 @@ public List<SnowflakeValue> blockbench() {
202202
@ConfigSerializable
203203
public static final class Features {
204204

205+
@Required
206+
@Setting("old_channel_checks_enabled")
207+
@Comment("If old channel checks should be enabled.")
208+
private boolean oldChannelChecksEnabled = true;
209+
210+
public boolean areOldChannelChecksEnabled() {
211+
return oldChannelChecksEnabled;
212+
}
213+
214+
@Required
215+
@Setting("old_channel_check_time")
216+
@Comment("How long in days should a channel go unused until it's reported/retired.")
217+
private long oldChannelReportTime = 60;
218+
219+
public long getOldChannelReportTime() {
220+
return oldChannelReportTime;
221+
}
222+
205223
@Required
206224
@Setting("referencing_enabled")
207225
@Comment("If message referencing should be enabled.")

src/commander/java/com/mcmoddev/mmdbot/commander/util/oldchannels/OldChannelsHelper.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
*/
2121
package com.mcmoddev.mmdbot.commander.util.oldchannels;
2222

23+
import com.mcmoddev.mmdbot.commander.TheCommander;
2324
import com.mcmoddev.mmdbot.core.util.TaskScheduler;
2425
import it.unimi.dsi.fastutil.longs.Long2LongMap;
2526
import it.unimi.dsi.fastutil.longs.Long2LongOpenHashMap;
@@ -95,6 +96,6 @@ public static void registerListeners(TaskScheduler.CollectTasksEvent event, JDA
9596
event.addTask(new ChannelMessageChecker(jda), 0, 1, TimeUnit.DAYS);
9697
jda.getGuilds().forEach(guild -> event.addTask(new ComChannelsArchiver(guild.getIdLong(), jda),
9798
10 /* 10 minutes of initial delay, so we can make sure channels have been "scanned" */,
98-
60 * 24 /* daily */, TimeUnit.MINUTES));
99+
TheCommander.getInstance().getGeneralConfig().features().getOldChannelReportTime() * 24 /* daily */, TimeUnit.MINUTES));
99100
}
100101
}

0 commit comments

Comments
 (0)