Class ProjectAccessHandler<T>
- java.lang.Object
-
- com.google.gerrit.httpd.rpc.Handler<T>
-
- com.google.gerrit.httpd.rpc.project.ProjectAccessHandler<T>
-
- All Implemented Interfaces:
Callable<T>
- Direct Known Subclasses:
ReviewProjectAccess
public abstract class ProjectAccessHandler<T> extends Handler<T>
-
-
Field Summary
Fields Modifier and Type Field Description protected org.eclipse.jgit.lib.ObjectId
base
protected GroupBackend
groupBackend
protected String
message
protected Project.NameKey
projectName
protected CurrentUser
user
-
Constructor Summary
Constructors Modifier Constructor Description protected
ProjectAccessHandler(GroupBackend groupBackend, MetaDataUpdate.User metaDataUpdateFactory, AllProjectsName allProjects, com.google.inject.Provider<SetParent> setParent, CurrentUser user, Project.NameKey projectName, org.eclipse.jgit.lib.ObjectId base, List<AccessSection> sectionList, Project.NameKey parentProjectName, String message, ContributorAgreementsChecker contributorAgreements, PermissionBackend permissionBackend, boolean checkIfOwner)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description T
call()
Compute the operation result.protected abstract T
updateProjectConfig(ProjectConfig config, MetaDataUpdate md, boolean parentProjectUpdate)
-
-
-
Field Detail
-
groupBackend
protected final GroupBackend groupBackend
-
projectName
protected final Project.NameKey projectName
-
base
protected final org.eclipse.jgit.lib.ObjectId base
-
user
protected final CurrentUser user
-
message
protected String message
-
-
Constructor Detail
-
ProjectAccessHandler
protected ProjectAccessHandler(GroupBackend groupBackend, MetaDataUpdate.User metaDataUpdateFactory, AllProjectsName allProjects, com.google.inject.Provider<SetParent> setParent, CurrentUser user, Project.NameKey projectName, org.eclipse.jgit.lib.ObjectId base, List<AccessSection> sectionList, Project.NameKey parentProjectName, String message, ContributorAgreementsChecker contributorAgreements, PermissionBackend permissionBackend, boolean checkIfOwner)
-
-
Method Detail
-
call
public final T call() throws NoSuchProjectException, IOException, org.eclipse.jgit.errors.ConfigInvalidException, InvalidNameException, NoSuchGroupException, com.google.gwtorm.server.OrmException, UpdateParentFailedException, AuthException, PermissionBackendException, ResourceConflictException
Description copied from class:Handler
Compute the operation result.- Specified by:
call
in interfaceCallable<T>
- Specified by:
call
in classHandler<T>
- Returns:
- the result of the operation. Return
VoidResult.INSTANCE
if there is no meaningful return value for the operation. - Throws:
NoSuchProjectException
IOException
org.eclipse.jgit.errors.ConfigInvalidException
InvalidNameException
NoSuchGroupException
com.google.gwtorm.server.OrmException
UpdateParentFailedException
AuthException
PermissionBackendException
ResourceConflictException
-
updateProjectConfig
protected abstract T updateProjectConfig(ProjectConfig config, MetaDataUpdate md, boolean parentProjectUpdate) throws IOException, NoSuchProjectException, org.eclipse.jgit.errors.ConfigInvalidException, com.google.gwtorm.server.OrmException, AuthException, PermissionBackendException, ResourceConflictException
- Throws:
IOException
NoSuchProjectException
org.eclipse.jgit.errors.ConfigInvalidException
com.google.gwtorm.server.OrmException
AuthException
PermissionBackendException
ResourceConflictException
-
-