Class GroupManager<V extends Group>

java.lang.Object
org.kingdoms.data.managers.BaseDataManager
All Implemented Interfaces:
Closeable, AutoCloseable, org.kingdoms.constants.namespace.Namespaced
Direct Known Subclasses:
KingdomManager, NationManager

public abstract class GroupManager<V extends Group> extends KeyedDataManager<UUID,V>
  • Field Details

    • names

      protected final Map<org.kingdoms.utils.internal.string.QuantumString,UUID> names
    • topUpdateTask

      protected org.kingdoms.scheduler.DelayedRepeatingTask topUpdateTask
    • instantTopUpdate

      protected boolean instantTopUpdate
  • Constructor Details

  • Method Details

    • configureTopData

      public abstract void configureTopData()
    • createUpdateTask

      protected void createUpdateTask(KingdomsConfig updateIntervalConfig)
    • updateTop

      public void updateTop()
    • getTopData

      @Nullable public abstract @Nullable GroupTopData<V> getTopData(String name)
    • getTopData

      public abstract Map<String,? extends GroupTopData<V>> getTopData()
    • isInstantTopUpdate

      public boolean isInstantTopUpdate()
    • getNames

      @NotNull public @Unmodifiable @NotNull Map<org.kingdoms.utils.internal.string.QuantumString,UUID> getNames()
    • toQuantumName

      protected abstract org.kingdoms.utils.internal.string.QuantumString toQuantumName(String name)
    • getData

      public V getData(String name)
    • unload

      public void unload(@NonNull V data)
      Overrides:
      unload in class KeyedDataManager<UUID,V extends Group>
    • rename

      public void rename(V group, String rename)
    • onLoad

      protected V onLoad(V value)
      Description copied from class: DataManager
      Can't override KeyedDataManager.cache(KeyedKingdomsObject, boolean) because this is also used inside the cache loader which automatically loads it after retrieving the data.
      Overrides:
      onLoad in class DataManager<V extends Group>
    • onDisable

      public void onDisable()
      Overrides:
      onDisable in class DataManager<V extends Group>