123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243 |
- /*
- * SonarQube
- * Copyright (C) 2009-2017 SonarSource SA
- * mailto:info AT sonarsource DOT com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 3 of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
- package org.sonarqube.ws.client.permission;
-
- import org.sonarqube.ws.WsPermissions;
- import org.sonarqube.ws.WsPermissions.CreateTemplateWsResponse;
- import org.sonarqube.ws.WsPermissions.SearchProjectPermissionsWsResponse;
- import org.sonarqube.ws.WsPermissions.SearchTemplatesWsResponse;
- import org.sonarqube.ws.WsPermissions.UpdateTemplateWsResponse;
- import org.sonarqube.ws.WsPermissions.UsersWsResponse;
- import org.sonarqube.ws.WsPermissions.WsSearchGlobalPermissionsResponse;
- import org.sonarqube.ws.client.BaseService;
- import org.sonarqube.ws.client.GetRequest;
- import org.sonarqube.ws.client.PostRequest;
- import org.sonarqube.ws.client.WsConnector;
- import org.sonarqube.ws.client.project.ProjectsWsParameters;
-
- import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_DESCRIPTION;
- import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_GROUP_ID;
- import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_GROUP_NAME;
- import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_ID;
- import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_NAME;
- import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_ORGANIZATION;
- import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PERMISSION;
- import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PROJECT_ID;
- import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PROJECT_KEY;
- import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PROJECT_KEY_PATTERN;
- import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_QUALIFIER;
- import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_ID;
- import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_NAME;
- import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_USER_LOGIN;
-
- public class PermissionsService extends BaseService {
-
- public PermissionsService(WsConnector wsConnector) {
- super(wsConnector, PermissionsWsParameters.CONTROLLER);
- }
-
- public WsPermissions.WsGroupsResponse groups(GroupsWsRequest request) {
- GetRequest get = new GetRequest(path("groups"))
- .setParam(PARAM_PERMISSION, request.getPermission())
- .setParam(PARAM_PROJECT_ID, request.getProjectId())
- .setParam(PARAM_PROJECT_KEY, request.getProjectKey())
- .setParam("p", request.getPage())
- .setParam("ps", request.getPageSize())
- .setParam("q", request.getQuery());
- return call(get, WsPermissions.WsGroupsResponse.parser());
- }
-
- public void addGroup(AddGroupWsRequest request) {
- call(new PostRequest(path("add_group"))
- .setParam(PARAM_ORGANIZATION, request.getOrganization())
- .setParam(PARAM_PERMISSION, request.getPermission())
- .setParam(PARAM_PROJECT_ID, request.getProjectId())
- .setParam(PARAM_PROJECT_KEY, request.getProjectKey())
- .setParam(PARAM_GROUP_ID, request.getGroupId())
- .setParam(PARAM_GROUP_NAME, request.getGroupName()));
- }
-
- public void addGroupToTemplate(AddGroupToTemplateWsRequest request) {
- call(new PostRequest(path("add_group_to_template"))
- .setParam(PARAM_GROUP_ID, request.getGroupId())
- .setParam(PARAM_GROUP_NAME, request.getGroupName())
- .setParam(PARAM_PERMISSION, request.getPermission())
- .setParam(PARAM_TEMPLATE_ID, request.getTemplateId())
- .setParam(PARAM_TEMPLATE_NAME, request.getTemplateName()));
- }
-
- public void addUser(AddUserWsRequest request) {
- call(new PostRequest(path("add_user"))
- .setParam(PARAM_USER_LOGIN, request.getLogin())
- .setParam(PARAM_PERMISSION, request.getPermission())
- .setParam(PARAM_PROJECT_ID, request.getProjectId())
- .setParam(PARAM_PROJECT_KEY, request.getProjectKey())
- .setParam(PARAM_ORGANIZATION, request.getOrganization()));
- }
-
- public void addUserToTemplate(AddUserToTemplateWsRequest request) {
- call(new PostRequest(path("add_user_to_template"))
- .setParam(PARAM_ORGANIZATION, request.getOrganization())
- .setParam(PARAM_PERMISSION, request.getPermission())
- .setParam(PARAM_USER_LOGIN, request.getLogin())
- .setParam(PARAM_TEMPLATE_ID, request.getTemplateId())
- .setParam(PARAM_TEMPLATE_NAME, request.getTemplateName()));
- }
-
- public void addProjectCreatorToTemplate(AddProjectCreatorToTemplateWsRequest request) {
- call(new PostRequest(path("add_project_creator_to_template"))
- .setParam(PARAM_ORGANIZATION, request.getOrganization())
- .setParam(PARAM_PERMISSION, request.getPermission())
- .setParam(PARAM_TEMPLATE_ID, request.getTemplateId())
- .setParam(PARAM_TEMPLATE_NAME, request.getTemplateName()));
- }
-
- public void applyTemplate(ApplyTemplateWsRequest request) {
- call(new PostRequest(path("apply_template"))
- .setParam(PARAM_ORGANIZATION, request.getOrganization())
- .setParam(PARAM_PROJECT_ID, request.getProjectId())
- .setParam(PARAM_PROJECT_KEY, request.getProjectKey())
- .setParam(PARAM_TEMPLATE_ID, request.getTemplateId())
- .setParam(PARAM_TEMPLATE_NAME, request.getTemplateName()));
- }
-
- public void bulkApplyTemplate(BulkApplyTemplateWsRequest request) {
- call(new PostRequest(path("bulk_apply_template"))
- .setParam(PARAM_ORGANIZATION, request.getOrganization())
- .setParam(PARAM_TEMPLATE_ID, request.getTemplateId())
- .setParam(PARAM_TEMPLATE_NAME, request.getTemplateName())
- .setParam("q", request.getQuery())
- .setParam(ProjectsWsParameters.PARAM_QUALIFIERS, inlineMultipleParamValue(request.getQualifiers()))
- .setParam(ProjectsWsParameters.PARAM_VISIBILITY, request.getVisibility())
- .setParam(ProjectsWsParameters.PARAM_ANALYZED_BEFORE, request.getAnalyzedBefore())
- .setParam(ProjectsWsParameters.PARAM_ON_PROVISIONED_ONLY, request.isOnProvisionedOnly())
- .setParam(ProjectsWsParameters.PARAM_PROJECTS, inlineMultipleParamValue(request.getProjects())));
- }
-
- public CreateTemplateWsResponse createTemplate(CreateTemplateWsRequest request) {
- PostRequest post = new PostRequest(path("create_template"))
- .setParam(PARAM_ORGANIZATION, request.getOrganization())
- .setParam(PARAM_NAME, request.getName())
- .setParam(PARAM_DESCRIPTION, request.getDescription())
- .setParam(PARAM_PROJECT_KEY_PATTERN, request.getProjectKeyPattern());
- return call(post, CreateTemplateWsResponse.parser());
- }
-
- public void deleteTemplate(DeleteTemplateWsRequest request) {
- call(new PostRequest(path("delete_template"))
- .setParam(PARAM_ORGANIZATION, request.getOrganization())
- .setParam(PARAM_TEMPLATE_ID, request.getTemplateId())
- .setParam(PARAM_TEMPLATE_NAME, request.getTemplateName()));
- }
-
- public void removeGroup(RemoveGroupWsRequest request) {
- call(new PostRequest(path("remove_group"))
- .setParam(PARAM_ORGANIZATION, request.getOrganization())
- .setParam(PARAM_PERMISSION, request.getPermission())
- .setParam(PARAM_GROUP_ID, request.getGroupId())
- .setParam(PARAM_GROUP_NAME, request.getGroupName())
- .setParam(PARAM_PROJECT_ID, request.getProjectId())
- .setParam(PARAM_PROJECT_KEY, request.getProjectKey()));
- }
-
- public void removeGroupFromTemplate(RemoveGroupFromTemplateWsRequest request) {
- call(new PostRequest(path("remove_group_from_template"))
- .setParam(PARAM_ORGANIZATION, request.getOrganization())
- .setParam(PARAM_PERMISSION, request.getPermission())
- .setParam(PARAM_GROUP_ID, request.getGroupId())
- .setParam(PARAM_GROUP_NAME, request.getGroupName())
- .setParam(PARAM_TEMPLATE_ID, request.getTemplateId())
- .setParam(PARAM_TEMPLATE_NAME, request.getTemplateName()));
- }
-
- public void removeProjectCreatorFromTemplate(RemoveProjectCreatorFromTemplateWsRequest request) {
- call(
- new PostRequest(path("remove_project_creator_from_template"))
- .setParam(PARAM_ORGANIZATION, request.getOrganization())
- .setParam(PARAM_PERMISSION, request.getPermission())
- .setParam(PARAM_TEMPLATE_ID, request.getTemplateId())
- .setParam(PARAM_TEMPLATE_NAME, request.getTemplateName()));
- }
-
- public void removeUser(RemoveUserWsRequest request) {
- call(new PostRequest(path("remove_user"))
- .setParam(PARAM_PERMISSION, request.getPermission())
- .setParam(PARAM_USER_LOGIN, request.getLogin())
- .setParam(PARAM_PROJECT_ID, request.getProjectId())
- .setParam(PARAM_PROJECT_KEY, request.getProjectKey()));
- }
-
- public void removeUserFromTemplate(RemoveUserFromTemplateWsRequest request) {
- call(new PostRequest(path("remove_user_from_template"))
- .setParam(PARAM_ORGANIZATION, request.getOrganization())
- .setParam(PARAM_PERMISSION, request.getPermission())
- .setParam(PARAM_USER_LOGIN, request.getLogin())
- .setParam(PARAM_TEMPLATE_ID, request.getTemplateId())
- .setParam(PARAM_TEMPLATE_NAME, request.getTemplateName()));
- }
-
- public WsSearchGlobalPermissionsResponse searchGlobalPermissions() {
- GetRequest get = new GetRequest(path("search_global_permissions"));
- return call(get, WsSearchGlobalPermissionsResponse.parser());
- }
-
- public SearchProjectPermissionsWsResponse searchProjectPermissions(SearchProjectPermissionsWsRequest request) {
- GetRequest get = new GetRequest(path("search_project_permissions"))
- .setParam(PARAM_PROJECT_ID, request.getProjectId())
- .setParam(PARAM_PROJECT_KEY, request.getProjectKey())
- .setParam(PARAM_QUALIFIER, request.getQualifier())
- .setParam("p", request.getPage())
- .setParam("ps", request.getPageSize())
- .setParam("q", request.getQuery());
- return call(get, SearchProjectPermissionsWsResponse.parser());
- }
-
- public SearchTemplatesWsResponse searchTemplates(SearchTemplatesWsRequest request) {
- GetRequest get = new GetRequest(path("search_templates"))
- .setParam("q", request.getQuery());
- return call(get, SearchTemplatesWsResponse.parser());
- }
-
- public void setDefaultTemplate(SetDefaultTemplateWsRequest request) {
- call(new PostRequest(path("set_default_template"))
- .setParam(PARAM_QUALIFIER, request.getQualifier())
- .setParam(PARAM_TEMPLATE_ID, request.getTemplateId())
- .setParam(PARAM_TEMPLATE_NAME, request.getTemplateName()));
- }
-
- public UpdateTemplateWsResponse updateTemplate(UpdateTemplateWsRequest request) {
- return call(new PostRequest(path("update_template"))
- .setParam(PARAM_DESCRIPTION, request.getDescription())
- .setParam(PARAM_ID, request.getId())
- .setParam(PARAM_NAME, request.getName())
- .setParam(PARAM_PROJECT_KEY_PATTERN, request.getProjectKeyPattern()), UpdateTemplateWsResponse.parser());
- }
-
- public UsersWsResponse users(UsersWsRequest request) {
- return call(new GetRequest(path("users"))
- .setParam(PARAM_ORGANIZATION, request.getOrganization())
- .setParam(PARAM_PERMISSION, request.getPermission())
- .setParam(PARAM_PROJECT_ID, request.getProjectId())
- .setParam(PARAM_PROJECT_KEY, request.getProjectKey())
- .setParam("p", request.getPage())
- .setParam("ps", request.getPageSize())
- .setParam("q", request.getQuery()), UsersWsResponse.parser());
- }
- }
|