in src/main/java/com/googlesource/gerrit/plugins/gitiles/FilteredRepository.java [69:87]
FilteredRepository create(Project.NameKey name)
throws NoSuchProjectException, IOException, PermissionBackendException {
Optional<ProjectState> projectState = projectCache.get(name);
if (!projectState.isPresent() || !projectState.get().statePermitsRead()) {
throw new NoSuchProjectException(name);
}
try {
permissionBackend.currentUser().project(name).check(ProjectPermission.ACCESS);
} catch (AuthException e) {
throw new NoSuchProjectException(name, e);
} catch (PermissionBackendException e) {
throw new ServiceMayNotContinueException(e);
}
return new FilteredRepository(
projectState.get(),
userProvider.get(),
repoManager.openRepository(name),
permissionBackend);
}