Class UserPermissions

    • Constructor Detail

      • UserPermissions

        public UserPermissions()
        Create a new empty object.
      • UserPermissions

        public UserPermissions​(ItemKey itemKey)
                        throws InvalidDataException
        Create a new object, and initialise it with the permissions from a ItemKey.
        Parameters:
        itemKey - The item key from which we take the current permissions
        Throws:
        InvalidDataException - If the item key is null
    • Method Detail

      • merge

        public void merge​(ItemKey itemKey)
        Merge the permissions for all users from the given item key with the permissions in this object. If the item key contains permissions for a user that already has permissions in this object the permissions are combined (added) to create a new permission.
        Parameters:
        itemKey - An item key (if null, this method simply returns)
        Since:
        2.16
      • setPermissions

        public void setPermissions​(User user,
                                   Set<Permission> permissions)
                            throws InvalidDataException
        Grant permissions to a user. Use an empty Set or null to remove all permissions for the user.
        Parameters:
        user - The User
        permissions - The permissions to grant
        Throws:
        InvalidDataException - If the user is null
        See Also:
        Permission
      • getOriginalPermissions

        public Set<Permission> getOriginalPermissions​(User user)
        Get the original permissions for a user if this object was created with the UserPermissions(ItemKey) constructor.
        Parameters:
        user - The User for which we want to get the permission
        Returns:
        An Set containing the original permissions, or an empty set
        Throws:
        InvalidDataException - If the user is null
        Since:
        2.6
        See Also:
        getPermissions(User)
      • hasChanged

        public boolean hasChanged​(User user)
        Check if the current permissions for the user has been changed from the original permissions. This method will return false if the getPermissions(User) returns a set with the same permissions getOriginalPermissions(User).
        Parameters:
        user - The user to check
        Returns:
        TRUE if the permissions have changed, FALSE otherwise
        Throws:
        InvalidDataException - If the user is null
        Since:
        2.6
      • size

        public int size()
        Get the number of entries.
      • getUserPermissions

        final Map<UserData,​Integer> getUserPermissions()
        Get the internal representation of the permissions.
      • getOriginalPermissions

        final Map<UserData,​Integer> getOriginalPermissions()
        Get the internal representation of the original permissions.
        Since:
        2.6