Package net.canarymod.permissionsystem

Source Code of net.canarymod.permissionsystem.PermissionManager

package net.canarymod.permissionsystem;

import net.canarymod.api.entity.living.humanoid.Player;
import net.canarymod.backbone.BackbonePermissions;
import net.canarymod.user.Group;

/**
* This handles the loading of permission providers for groups and players
*
* @author Chris (damagefilter)
*/
public class PermissionManager {
    BackbonePermissions backbone;

    public PermissionManager() {
        backbone = new BackbonePermissions();
    }

    /**
     * Load the permission set for the group with the given name.
     *
     * @param name
     * @param worldname
     *         The Fully qualified name of the world to load permissions for
     *
     * @return {@link PermissionProvider}
     */
    public PermissionProvider getGroupsProvider(String name, String worldname) {
        return backbone.loadGroupPermissions(name, worldname);
    }

    /**
     * Load the permission set for the group with the given name.
     *
     * @param name
     * @param worldname
     *         The Fully qualified name of the world to load permissions for
     *
     * @return {@link PermissionProvider}
     */
    public PermissionProvider getPlayerProvider(String name, String worldname) {
        return backbone.loadPlayerPermissions(name, worldname);
    }

    public void savePermissionsFromGroup(Group g) {
        backbone.saveGroupPermissions(g);
    }

    public void savePermissionsFromPlayer(Player p) {
        backbone.saveUserPermissions(p);
    }

    public void removePermissions(String path, String world) {
        backbone.removePermission(path, world);
    }

    public void removePlayerPermission(String path, Player player) {
        backbone.removePermission(path, player.getName(), player.getWorld().getFqName(), true);
        removePlayerPermission(path, player.getName(), player.getWorld().getFqName());
        player.getPermissionProvider().reload();
    }

    public void removeGroupPermission(String path, Group group) {
        backbone.removePermission(path, group.getName(), group.getWorldName(), false);
        group.getPermissionProvider().reload();

    }

    public int addPermission(String path, boolean value, String owner, String type, String world) {
        return backbone.addPermission(path, value, owner, type, world);
    }

    public void removePlayerPermission(String path, String player, String world) {
        backbone.removePermission(path, player, world, true);
    }

}
TOP

Related Classes of net.canarymod.permissionsystem.PermissionManager

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.