public void setProjectAvatar(final User user, final String projectKey, final Long avatarId) throws RemoteException { Project project = retrieveProjectForAdministration(user, projectKey); final com.atlassian.jira.bc.project.ProjectService.UpdateProjectValidationResult result = validateSetAvatar(user, project, avatarId); if (result.isValid()) { projectService.updateProject(result); } else { throw new RemoteException("Error setting Avatar on project: " + result.getErrorCollection()); } }
public RemoteProject updateProject(User user, RemoteProject rProject) throws RemoteException { //Note: The permissionScheme should never be null, but just in case. final Long permissionSchemeId = rProject.getPermissionScheme() == null ? null : rProject.getPermissionScheme().getId(); final Long notificationSchemeId = rProject.getNotificationScheme() == null ? null : rProject.getNotificationScheme().getId(); final Long issueSecuritySchemeId = rProject.getIssueSecurityScheme() == null ? null : rProject.getIssueSecurityScheme().getId(); com.atlassian.jira.bc.project.ProjectService.UpdateProjectValidationResult result = projectService.validateUpdateProject(user, rProject.getName(), rProject.getKey(), rProject.getDescription(), rProject.getLead(), rProject.getProjectUrl(), null); com.atlassian.jira.bc.project.ProjectService.UpdateProjectSchemesValidationResult schemesResult = projectService.validateUpdateProjectSchemes(user, permissionSchemeId, notificationSchemeId, issueSecuritySchemeId); ErrorCollection errors = new SimpleErrorCollection(); errors.addErrorCollection(result.getErrorCollection()); errors.addErrorCollection(schemesResult.getErrorCollection()); if (errors.hasAnyErrors()) { throw new RemoteValidationException("Cannot update project: ", errors); } final Project updatedProject = projectService.updateProject(result); projectService.updateProjectSchemes(schemesResult, updatedProject); final RemoteProject remoteProject = new RemoteProject(updatedProject, applicationProperties); remoteProject.setNotificationScheme(rProject.getNotificationScheme()); remoteProject.setPermissionScheme(rProject.getPermissionScheme()); remoteProject.setIssueSecurityScheme(rProject.getIssueSecurityScheme()); return remoteProject; }
projectService.updateProject(updateValidationResult); return Response.ok().cacheControl(NO_CACHE).build();
if (result.isValid()) projectService.updateProject(result);
@Override public Response apply(final Project project) { final String id = avatarBean.getId(); Long avatarId; try { avatarId = id == null ? null : Long.valueOf(id); } catch (NumberFormatException e) { avatarId = null; } final ProjectService.UpdateProjectValidationResult updateProjectValidationResult = projectService.validateUpdateProject(authContext.getUser(), project.getName(), project.getKey(), project.getDescription(), project.getLeadUserName(), project.getUrl(), project.getAssigneeType(), avatarId); if (!updateProjectValidationResult.isValid()) { throwWebException(updateProjectValidationResult.getErrorCollection()); } projectService.updateProject(updateProjectValidationResult); return responses.noContent(); } });
public void deleteProjectAvatar(final User user, final long avatarId) throws RemoteException { final Avatar avatar = avatarManager.getById(avatarId); // only when the avtatar is system, the owner is null, but we check either since we cannot proceed either way if (avatar == null || avatar.isSystemAvatar() || avatar.getOwner() == null) { throw new RemoteException("No such custom Avatar with id " + avatarId); } Project project = retrieveProjectForAdministration(user, Long.valueOf(avatar.getOwner())); final boolean deletingTheCurrentAvatar = project.getAvatar().getId() == avatarId; if (deletingTheCurrentAvatar) { // deleting the current one need to switch current avatar to default final Long defaultAvatarId = avatarManager.getDefaultAvatarId(Avatar.Type.PROJECT); final com.atlassian.jira.bc.project.ProjectService.UpdateProjectValidationResult updateProjectValidationResult = validateSetAvatar(user, project, defaultAvatarId); if (updateProjectValidationResult.isValid()) { projectService.updateProject(updateProjectValidationResult); avatarManager.delete(avatarId, true); } } else { avatarManager.delete(avatarId, true); } }
@RequiresXsrfCheck protected String doExecute() throws Exception { if (!(hasProjectAdminPermission() || hasAdminPermission())) { return "securitybreach"; } final ProjectService.UpdateProjectValidationResult result = getUpdateProjectValidationResult(); projectService.updateProject(result); final String redirectURL; if (result.isKeyChanged()) { redirectURL = "/secure/project/IndexProject.jspa?pid=" + getProjectObject().getId(); } else { redirectURL = "/plugins/servlet/project-config/" + getProjectObject().getKey() + "/summary"; } if (isInlineDialogMode()) { return returnCompleteWithInlineRedirect(redirectURL); } return getRedirect(redirectURL); }
@RequiresXsrfCheck protected String doExecute() throws Exception { if (!(hasProjectAdminPermission() || hasAdminPermission())) { return "securitybreach"; } final Project projectObject = getProjectObject(); final ProjectService.UpdateProjectValidationResult result = projectService.validateUpdateProject(getLoggedInUser(), projectObject.getName(), projectObject.getKey(), projectObject.getDescription(), getLead(), projectObject.getUrl(), getAssigneeType(), getAvatarId()); projectService.updateProject(result); if (isInlineDialogMode()) { return returnComplete(); } return getRedirect("/plugins/servlet/project-config/" + getProjectObject().getKey() + "/roles"); }