com.atlassian.confluence.security
Interface SpacePermissionManager

All Known Implementing Classes:
AbstractSpacePermissionManager, SpacePermissionCheckDispatcherCoordinator

public interface SpacePermissionManager


Method Summary
 void createInitialSpacePermissions(Space space, User creator)
           
 void fixPermissions()
           
 void flushCaches()
           
 List getAllPermissionsForGroup(String group)
           
 List getGlobalPermissions()
           
 List getGlobalPermissions(String permissionType)
           
 Map getGroupsForPermissionType(String permissionType, Space space)
           
 Collection getGroupsWithPermissions(Space space)
          Returns all groups wich have permissions in a space or on a global level.
 Map getUsersForPermissionType(String permissionType, Space space)
           
 Collection getUsersWithPermissions(Space space)
          Returns a collection of user objects with VIEWSPACE_PERMISSION in the space.
 boolean groupHasPermission(String permissionType, Space space, String group)
          Checks whether the given group has the given permission

If a null space is specified, this method looks up matching global permissions, otherwise space's permissions list is queried to see if the permission matches.

 boolean hasPermission(List permissionTypes, Space space, User remoteUser)
          Determines if remoteUser has the given permissions in space

If remoteUser lacks any of the given permissions, false is returned.

 boolean hasPermission(String permissionType, Space space, User remoteUser)
          Determines if remoteUser has the given permission in space
 boolean hasPermissionForSpace(User user, List permissionTypes, Space space)
           
 void removeAllPermissions(Space space)
          Removes all permissions belonging to space
 void removeAllPermissionsForGroup(String group)
           
 void removeAllUserPermissions(String username)
           
 void removePermission(SpacePermission permission)
           
 void savePermission(SpacePermission permission)
           
 

Method Detail

savePermission

public void savePermission(SpacePermission permission)

removeAllPermissions

public void removeAllPermissions(Space space)
Removes all permissions belonging to space

Parameters:
space - The space to remove the permissions for

removePermission

public void removePermission(SpacePermission permission)

hasPermission

public boolean hasPermission(String permissionType,
                             Space space,
                             User remoteUser)
Determines if remoteUser has the given permission in space

Parameters:
permissionType - The permission type to look up
space - The space the permission applies to (can be null for global permissions)
remoteUser - The user to look up (can be null for the anonymous user)
Returns:
true if remoteUser has the permission, false otherwise

hasPermission

public boolean hasPermission(List permissionTypes,
                             Space space,
                             User remoteUser)
Determines if remoteUser has the given permissions in space

If remoteUser lacks any of the given permissions, false is returned.

Parameters:
permissionTypes - A List of permission types (see SpacePermission) to check
space - The space the permissions apply to
remoteUser - The user to look up
Returns:
true if remoteUser has the permission, false otherwise

removeAllUserPermissions

public void removeAllUserPermissions(String username)

removeAllPermissionsForGroup

public void removeAllPermissionsForGroup(String group)

getAllPermissionsForGroup

public List getAllPermissionsForGroup(String group)

getGlobalPermissions

public List getGlobalPermissions()

getGlobalPermissions

public List getGlobalPermissions(String permissionType)

fixPermissions

public void fixPermissions()

flushCaches

public void flushCaches()

groupHasPermission

public boolean groupHasPermission(String permissionType,
                                  Space space,
                                  String group)
Checks whether the given group has the given permission

If a null space is specified, this method looks up matching global permissions, otherwise space's permissions list is queried to see if the permission matches.

Similarly, if permissionType is not a space permission, a matching global permission is looked up.

Parameters:
group - The group to look up the permission for
space - The space the permission applies to (can be null for global permissions)
permissionType - The permission type to look up
Returns:
true if the group has the required permission, false otherwise

createInitialSpacePermissions

public void createInitialSpacePermissions(Space space,
                                          User creator)

hasPermissionForSpace

public boolean hasPermissionForSpace(User user,
                                     List permissionTypes,
                                     Space space)

getGroupsWithPermissions

public Collection getGroupsWithPermissions(Space space)
Returns all groups wich have permissions in a space or on a global level. If space is null, permissions on the global level will be checked.

Parameters:
space -
Returns:
Collection of groups with permissions

getGroupsForPermissionType

public Map getGroupsForPermissionType(String permissionType,
                                      Space space)

getUsersWithPermissions

public Collection getUsersWithPermissions(Space space)
Returns a collection of user objects with VIEWSPACE_PERMISSION in the space. If no space is provided A list of users with USE_CONFLUENCE_PERMISSION will be returned

Parameters:
space -
Returns:
Collection of User objects

getUsersForPermissionType

public Map getUsersForPermissionType(String permissionType,
                                     Space space)


Confluence is developed by Atlassian.