Klasse LimitProfileRegistry

java.lang.Object
de.delinkedde.areashopreborn.configuration.LimitProfileRegistry

public final class LimitProfileRegistry extends Object
Loads and selects immutable permission-based limit profiles from limits.yml.
  • Konstruktordetails

    • LimitProfileRegistry

      public LimitProfileRegistry(org.bukkit.plugin.java.JavaPlugin plugin)
      Loads the bundled or existing limits file.
      Parameter:
      plugin - owning plugin
  • Methodendetails

    • reload

      public void reload()
      Reloads and validates all profiles atomically.
    • resolve

      public LimitProfile resolve(Predicate<String> permissionCheck)
      Selects the highest-priority permitted profile, falling back to the default.
      Parameter:
      permissionCheck - predicate testing one permission node
      Gibt zurück:
      selected immutable profile
    • resolve

      public LimitProfile resolve(Predicate<String> permissionCheck, Collection<String> groupNames)
      Resolves player and group precedence deterministically. Explicit permission profiles override all group rules. Otherwise, the highest-priority configured rule for an assigned group overrides the default profile.
      Parameter:
      permissionCheck - predicate testing player permission nodes
      groupNames - normalized assigned region-group names
      Gibt zurück:
      effective immutable profile
    • profiles

      public List<LimitProfile> profiles()
      Returns all profiles in deterministic selection order.
      Gibt zurück:
      immutable profile list
    • groupOverrides

      public List<GroupLimitOverride> groupOverrides()
      Returns group overrides in deterministic selection order.
      Gibt zurück:
      immutable group-rule list