Class PermissionAPI


  • public class PermissionAPI
    extends java.lang.Object
    • Field Detail

      • LOGGER

        private static final org.apache.logging.log4j.Logger LOGGER
    • Constructor Detail

      • PermissionAPI

        public PermissionAPI()
    • Method Detail

      • setPermissionHandler

        public static void setPermissionHandler​(IPermissionHandler handler)
        Only use this in PreInit state!
      • registerNode

        public static java.lang.String registerNode​(java.lang.String node,
                                                    DefaultPermissionLevel level,
                                                    java.lang.String desc)
        Only use this after PreInit state!
        Parameters:
        node - Permission node, best if it's lowercase and contains '.' (e.g. "modid.subgroup.permission_id")
        level - Default permission level for this node. If not isn't registered, it's level is going to be 'NONE'
        desc - Optional description of the node
      • hasPermission

        public static boolean hasPermission​(com.mojang.authlib.GameProfile profile,
                                            java.lang.String node,
                                            @Nullable
                                            IContext context)
        Parameters:
        profile - GameProfile of the player who is requesting permission. The player doesn't have to be online
        node - Permission node. See registerNode(String, DefaultPermissionLevel, String)
        context - Context for this permission. Highly recommended to not be null. See IContext
        Returns:
        true, if player has permission, false if he does not.
        See Also:
        DefaultPermissionHandler