From 07003b40b65ddf43263882c8331f73c83c0f6001 Mon Sep 17 00:00:00 2001 From: Pierre Date: Thu, 23 Jul 2020 14:12:11 +0200 Subject: [PATCH] SONAR-13630 import a project from GitLab --- .../AlmIntegrationsService.java | 16 +++++ .../ImportGitLabProjectRequest.java | 59 +++++++++++++++++++ 2 files changed, 75 insertions(+) create mode 100644 sonar-ws/src/main/java/org/sonarqube/ws/client/almintegrations/ImportGitLabProjectRequest.java diff --git a/sonar-ws/src/main/java/org/sonarqube/ws/client/almintegrations/AlmIntegrationsService.java b/sonar-ws/src/main/java/org/sonarqube/ws/client/almintegrations/AlmIntegrationsService.java index 2a34a2f6811..2b8a26846c4 100644 --- a/sonar-ws/src/main/java/org/sonarqube/ws/client/almintegrations/AlmIntegrationsService.java +++ b/sonar-ws/src/main/java/org/sonarqube/ws/client/almintegrations/AlmIntegrationsService.java @@ -70,6 +70,22 @@ public class AlmIntegrationsService extends BaseService { Projects.CreateWsResponse.parser()); } + /** + * + * This is a POST request. + * @see Further information about this action online (including a response example) + * @since 8.5 + */ + public Projects.CreateWsResponse importGitLabProject(ImportGitLabProjectRequest request) { + return call( + new PostRequest(path("import_gitlab_project")) + .setParam("almSetting", request.getAlmSetting()) + .setParam("gitlabProjectId", request.getGitlabProjectId()) + .setMediaType(MediaTypes.JSON), + Projects.CreateWsResponse.parser()); + } + + /** * * This is part of the internal API. diff --git a/sonar-ws/src/main/java/org/sonarqube/ws/client/almintegrations/ImportGitLabProjectRequest.java b/sonar-ws/src/main/java/org/sonarqube/ws/client/almintegrations/ImportGitLabProjectRequest.java new file mode 100644 index 00000000000..203e9fc12cf --- /dev/null +++ b/sonar-ws/src/main/java/org/sonarqube/ws/client/almintegrations/ImportGitLabProjectRequest.java @@ -0,0 +1,59 @@ +/* + * SonarQube + * Copyright (C) 2009-2020 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.almintegrations; + +import javax.annotation.Generated; + +/** + * This is part of the internal API. + * This is a POST request. + * @see Further information about this action online (including a response example) + * @since 8.5 + */ +@Generated("sonar-ws-generator") +public class ImportGitLabProjectRequest { + + private String almSetting; + private String gitlabProjectId; + + /** + * This is a mandatory parameter. + */ + public ImportGitLabProjectRequest setAlmSetting(String almSetting) { + this.almSetting = almSetting; + return this; + } + + public String getAlmSetting() { + return almSetting; + } + + /** + * This is a mandatory parameter. + */ + public ImportGitLabProjectRequest setGitlabProjectId(String gitlabProjectId) { + this.gitlabProjectId = gitlabProjectId; + return this; + } + + public String getGitlabProjectId() { + return gitlabProjectId; + } +} -- 2.39.5