CurrentUser: Return Optional from methods that retrieve a property
Returning Optional makes it more explicit that callers must expect that the return value is absent. Change-Id: If739844482ac8966dbcdc2285869cfac7ab7e059 Signed-off-by: Edwin Kempin <ekempin@google.com>
This commit is contained in:
@@ -37,6 +37,7 @@ import java.io.IOException;
|
||||
import java.util.Collection;
|
||||
import java.util.EnumSet;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
import java.util.Set;
|
||||
|
||||
@Singleton
|
||||
@@ -159,18 +160,21 @@ public class DefaultPermissionBackend extends PermissionBackend {
|
||||
}
|
||||
|
||||
private Boolean computeAdmin() {
|
||||
Boolean r = user.get(IS_ADMIN);
|
||||
if (r == null) {
|
||||
if (user.isImpersonating()) {
|
||||
r = false;
|
||||
} else if (user instanceof PeerDaemonUser) {
|
||||
r = true;
|
||||
} else {
|
||||
r = allow(capabilities().administrateServer);
|
||||
}
|
||||
user.put(IS_ADMIN, r);
|
||||
Optional<Boolean> r = user.get(IS_ADMIN);
|
||||
if (r.isPresent()) {
|
||||
return r.get();
|
||||
}
|
||||
return r;
|
||||
|
||||
boolean isAdmin;
|
||||
if (user.isImpersonating()) {
|
||||
isAdmin = false;
|
||||
} else if (user instanceof PeerDaemonUser) {
|
||||
isAdmin = true;
|
||||
} else {
|
||||
isAdmin = allow(capabilities().administrateServer);
|
||||
}
|
||||
user.put(IS_ADMIN, isAdmin);
|
||||
return isAdmin;
|
||||
}
|
||||
|
||||
private boolean canEmailReviewers() {
|
||||
|
Reference in New Issue
Block a user