Interface PermissionProcessor

All Known Implementing Classes:
AbstractOverrideWildcardProcessor, AbstractPermissionProcessor, AbstractSourceBasedProcessor, DirectProcessor, RegexProcessor, SpongeWildcardProcessor, WildcardProcessor

public interface PermissionProcessor
A processor within a PermissionCalculator.

Processors should not implement any sort of caching. This is handled in the parent calculator.

  • Method Summary

    Modifier and Type
    Method
    Description
    hasPermission(TristateResult prev, String permission)
    Returns the permission value determined by this calculator.
    default void
    Called after the parent calculator has been invalidated
    default void
    Called after a change has been made to the source map
    default void
    setSource(Map<String,net.luckperms.api.node.Node> sourceMap)
    Sets the source permissions which should be used by this processor
  • Method Details

    • hasPermission

      TristateResult hasPermission(TristateResult prev, String permission)
      Returns the permission value determined by this calculator.
      Parameters:
      prev - the result of the previous calculator in the chain
      permission - the permission
      Returns:
      a tristate
    • setSource

      default void setSource(Map<String,net.luckperms.api.node.Node> sourceMap)
      Sets the source permissions which should be used by this processor
      Parameters:
      sourceMap - the source map
    • refresh

      default void refresh()
      Called after a change has been made to the source map
    • invalidate

      default void invalidate()
      Called after the parent calculator has been invalidated