com.atlassian.gadgets.spi
Interface PermissionService

All Known Implementing Classes:
PermissionServiceImpl

public interface PermissionService

Provide a way to determine if a user has permission to perform the given operations.


Method Summary
 boolean canConfigureDirectory(String username)
          Returns true if the user identified by username has permission to add new external gadgets to the directory, remove external gadgets that were previously added, and otherwise configure the directory.
 boolean isReadableBy(DashboardId dashboardId, String username)
          Returns true if the user identified by username has permission to view the dashboard identified by the DashboardId, false otherwise.
 boolean isWritableBy(DashboardId dashboardId, String username)
          Returns true if the user identified by username has permission to modify the dashboard identified by the DashboardId, false otherwise.
 

Method Detail

isReadableBy

boolean isReadableBy(DashboardId dashboardId,
                     @Nullable
                     String username)
Returns true if the user identified by username has permission to view the dashboard identified by the DashboardId, false otherwise. This method should also return false if the dashboard specified by the DashboardId doesn't exist.

Parameters:
dashboardId - the DashboardId of the dashboard the user is trying to view
username - the name of the user logged in, null if no user is currently logged in
Returns:
true if the user identified by username has permission to view the dashboard identified by the DashboardId, false otherwise.

isWritableBy

boolean isWritableBy(DashboardId dashboardId,
                     @Nullable
                     String username)
Returns true if the user identified by username has permission to modify the dashboard identified by the DashboardId, false otherwise. This method should also return false if the dashboard specified by the DashboardId doesn't exist.

Parameters:
dashboardId - the DashboardId of the dashboard the user is trying to modify
username - the name of the user logged in, null if no user is currently logged in
Returns:
true if the user identified by username has permission to modify the dashboard identified by the DashboardId, false otherwise.

canConfigureDirectory

boolean canConfigureDirectory(@Nullable
                              String username)
Returns true if the user identified by username has permission to add new external gadgets to the directory, remove external gadgets that were previously added, and otherwise configure the directory. Returns false if the specified user does not have this permission. Generally, this permission should be restricted to administrators, as gadgets have security considerations that can impact the whole system.

Parameters:
username - the name of the user logged in, null if no user is currently logged in
Returns:
true if the user identified by username has permission to configure the directory, false otherwise


Copyright © 2009 Atlassian. All Rights Reserved.