Partially convert accessDatabase to PermissionBackend

The accessDatabase check is complicated inside VisibleRefsFilter
so for now it continues to use canAccessDatabase().

Change-Id: Ia4202a7f1658868f4d5698a1cb1db6ccaf5a062e
This commit is contained in:
Shawn Pearce
2017-02-19 20:47:41 -08:00
committed by David Pursehouse
parent f49c2a87ab
commit 7eb31de4e3
2 changed files with 15 additions and 25 deletions

View File

@@ -109,7 +109,11 @@ public class CapabilityControl {
/** @return true if the user can access the database (with gsql). */
public boolean canAccessDatabase() {
return canPerform(GlobalCapability.ACCESS_DATABASE);
try {
return doCanForDefaultPermissionBackend(GlobalPermission.ACCESS_DATABASE);
} catch (PermissionBackendException e) {
return false;
}
}
/** @return which priority queue the user's tasks should be submitted to. */
@@ -230,8 +234,6 @@ public class CapabilityControl {
public boolean doCanForDefaultPermissionBackend(GlobalPermission perm)
throws PermissionBackendException {
switch (perm) {
case ACCESS_DATABASE:
return canAccessDatabase();
case ADMINISTRATE_SERVER:
return canAdministrateServer();
case EMAIL_REVIEWERS:
@@ -259,6 +261,7 @@ public class CapabilityControl {
case VIEW_PLUGINS:
return canPerform(perm.permissionName()) || canAdministrateServer();
case ACCESS_DATABASE:
case RUN_AS:
return canPerform(perm.permissionName());
}