Class PeriodicNotificationManager
java.lang.Object
net.neoforged.neoforge.resource.ContextAwareReloadListener
net.minecraft.server.packs.resources.SimplePreparableReloadListener<Map<String, List<PeriodicNotificationManager.Notification>>>
net.minecraft.client.PeriodicNotificationManager
- All Implemented Interfaces:
AutoCloseable, PreparableReloadListener
public class PeriodicNotificationManager
extends SimplePreparableReloadListener<Map<String, List<PeriodicNotificationManager.Notification>>>
implements AutoCloseable
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final recordprivate static classNested classes/interfaces inherited from interface PreparableReloadListener
PreparableReloadListener.PreparationBarrier, PreparableReloadListener.SharedState, PreparableReloadListener.StateKey<T> -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final com.mojang.serialization.Codec<Map<String, List<PeriodicNotificationManager.Notification>>> private static final org.slf4j.Loggerprivate final Identifierprivate @Nullable PeriodicNotificationManager.NotificationTaskprivate final it.unimi.dsi.fastutil.objects.Object2BooleanFunction<String> private @Nullable Timer -
Constructor Summary
ConstructorsConstructorDescriptionPeriodicNotificationManager(Identifier notifications, it.unimi.dsi.fastutil.objects.Object2BooleanFunction<String> selector) -
Method Summary
Modifier and TypeMethodDescriptionprotected voidapply(Map<String, List<PeriodicNotificationManager.Notification>> preparations, ResourceManager manager, ProfilerFiller profiler) private longcalculateInitialDelay(List<PeriodicNotificationManager.Notification> notifications) private longcalculateOptimalPeriod(List<PeriodicNotificationManager.Notification> notifications, long initialDelay) voidclose()protected Map<String, List<PeriodicNotificationManager.Notification>> prepare(ResourceManager manager, ProfilerFiller profiler) Performs any reloading that can be done off-thread, such as file IOprivate voidMethods inherited from class SimplePreparableReloadListener
reloadMethods inherited from class ContextAwareReloadListener
getContext, getRegistryLookup, injectContext, makeConditionalOps, makeConditionalOpsMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface PreparableReloadListener
getName, prepareSharedState
-
Field Details
-
CODEC
private static final com.mojang.serialization.Codec<Map<String, List<PeriodicNotificationManager.Notification>>> CODEC -
LOGGER
private static final org.slf4j.Logger LOGGER -
notifications
-
selector
-
timer
-
notificationTask
-
-
Constructor Details
-
PeriodicNotificationManager
public PeriodicNotificationManager(Identifier notifications, it.unimi.dsi.fastutil.objects.Object2BooleanFunction<String> selector)
-
-
Method Details
-
prepare
protected Map<String, List<PeriodicNotificationManager.Notification>> prepare(ResourceManager manager, ProfilerFiller profiler) Description copied from class:SimplePreparableReloadListenerPerforms any reloading that can be done off-thread, such as file IO- Specified by:
preparein classSimplePreparableReloadListener<Map<String, List<PeriodicNotificationManager.Notification>>>
-
apply
protected void apply(Map<String, List<PeriodicNotificationManager.Notification>> preparations, ResourceManager manager, ProfilerFiller profiler) - Specified by:
applyin classSimplePreparableReloadListener<Map<String, List<PeriodicNotificationManager.Notification>>>
-
close
public void close()- Specified by:
closein interfaceAutoCloseable
-
stopTimer
private void stopTimer() -
calculateOptimalPeriod
private long calculateOptimalPeriod(List<PeriodicNotificationManager.Notification> notifications, long initialDelay) -
calculateInitialDelay
-