Class ElectionsManager

java.lang.Object
org.kingdoms.managers.abstraction.ProlongedTask
org.kingdoms.managers.daily.elections.ElectionsManager
All Implemented Interfaces:
org.kingdoms.locale.provider.MessageContextProvider
Direct Known Subclasses:
KingdomsElectionsManager, NationsElectionsManager

public abstract class ElectionsManager extends ProlongedTask
  • Field Details

    • candidates

      protected final Map<UUID,org.kingdoms.managers.daily.elections.ElectionCandidate> candidates
    • votes

      protected final Map<UUID,UUID> votes
  • Constructor Details

    • ElectionsManager

      protected ElectionsManager(String name)
  • Method Details

    • getOption

      public KeyedConfigAccessor getOption(String name)
    • getCandidate

      @Nullable public @Nullable org.kingdoms.managers.daily.elections.ElectionCandidate getCandidate(UUID id)
    • registerCandidate

      public void registerCandidate(UUID id, String statement)
    • getCandidates

      public Map<UUID,org.kingdoms.managers.daily.elections.ElectionCandidate> getCandidates()
    • getVotes

      public Map<UUID,UUID> getVotes()
    • getVote

      public UUID getVote(org.bukkit.entity.Player voter)
    • vote

      public void vote(org.bukkit.entity.Player voter, UUID candidateId)
      Parameters:
      voter - the player who's voting.
      candidateId - the player who the voter is voting for.
    • isAcceptingVotes

      public boolean isAcceptingVotes()
    • isEnabledFor

      public static boolean isEnabledFor(Group group)
    • isEnabled

      public boolean isEnabled()
    • areKicksDisallowed

      public boolean areKicksDisallowed()
    • remind

      public void remind(String formattedTime)
      Specified by:
      remind in class ProlongedTask
    • run

      public void run()
      Specified by:
      run in class ProlongedTask
    • notifyPlayer

      public void notifyPlayer(org.bukkit.entity.Player player)
    • getJoinNotification

      protected abstract Messenger getJoinNotification()
    • getCandidateSorter

      public org.kingdoms.utils.internal.sorting.Sorter<org.kingdoms.managers.daily.elections.ElectionCandidate> getCandidateSorter()
    • getVotingAge

      public Duration getVotingAge()
    • conclude

      public void conclude()