in src/main/java/com/googlesource/gerrit/plugins/replication/pull/api/ProjectInitializationAction.java [65:104]
protected void doPut(
HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse)
throws ServletException, IOException {
if (!checkAcceptHeader(httpServletRequest, httpServletResponse)) {
return;
}
if (!userProvider.get().isIdentifiedUser()) {
setResponse(
httpServletResponse,
HttpServletResponse.SC_UNAUTHORIZED,
"Unauthorized user. '" + CALL_FETCH_ACTION + "' capability needed.");
return;
}
String path = httpServletRequest.getRequestURI();
String projectName = Url.decode(path.substring(path.lastIndexOf('/') + 1));
try {
if (initProject(projectName)) {
setResponse(
httpServletResponse,
HttpServletResponse.SC_CREATED,
"Project " + projectName + " initialized");
return;
}
} catch (AuthException | PermissionBackendException e) {
setResponse(
httpServletResponse,
HttpServletResponse.SC_FORBIDDEN,
"User not authorized to create project " + projectName);
return;
}
setResponse(
httpServletResponse,
HttpServletResponse.SC_INTERNAL_SERVER_ERROR,
"Cannot initialize project " + projectName);
}