Merge branch 'stable-2.10' * stable-2.10: Add '/.apt_generated' and '/.factorypath' to .gitignore Fix project creation with plugin config if user is not project owner Change-Id: I874e8ed8796545ab0a2f593023756ac9e167fecf
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/project/CreateProject.java b/gerrit-server/src/main/java/com/google/gerrit/server/project/CreateProject.java index 776a25e..b0ac201 100644 --- a/gerrit-server/src/main/java/com/google/gerrit/server/project/CreateProject.java +++ b/gerrit-server/src/main/java/com/google/gerrit/server/project/CreateProject.java
@@ -152,7 +152,7 @@ projectControlFactory.controlFor(p.getNameKey(), currentUser.get()); PutConfig.Input in = new PutConfig.Input(); in.pluginConfigValues = input.pluginConfigValues; - putConfig.get().apply(new ProjectResource(projectControl), in); + putConfig.get().apply(projectControl, in); } catch (NoSuchProjectException e) { throw new ResourceNotFoundException(p.getName()); }
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/project/PutConfig.java b/gerrit-server/src/main/java/com/google/gerrit/server/project/PutConfig.java index 8c1fda7..27e7b1b 100644 --- a/gerrit-server/src/main/java/com/google/gerrit/server/project/PutConfig.java +++ b/gerrit-server/src/main/java/com/google/gerrit/server/project/PutConfig.java
@@ -115,11 +115,16 @@ public ConfigInfo apply(ProjectResource rsrc, Input input) throws ResourceNotFoundException, BadRequestException, ResourceConflictException { - Project.NameKey projectName = rsrc.getNameKey(); if (!rsrc.getControl().isOwner()) { - throw new ResourceNotFoundException(projectName.get()); + throw new ResourceNotFoundException(rsrc.getName()); } + return apply(rsrc.getControl(), input); + } + public ConfigInfo apply(ProjectControl ctrl, Input input) + throws ResourceNotFoundException, BadRequestException, + ResourceConflictException { + Project.NameKey projectName = ctrl.getProject().getNameKey(); if (input == null) { throw new BadRequestException("config is required"); } @@ -169,7 +174,7 @@ } if (input.pluginConfigValues != null) { - setPluginConfigValues(rsrc.getControl().getProjectState(), + setPluginConfigValues(ctrl.getProjectState(), projectConfig, input.pluginConfigValues); }