@@ -29,6 +29,7 @@ | |||
<module>sonar-markdown</module> | |||
<module>sonar-plugin-api</module> | |||
<module>server</module> | |||
<module>sonar-ws-generated</module> | |||
<module>sonar-ws</module> | |||
<module>sonar-testing-harness</module> | |||
<module>plugins/sonar-xoo-plugin</module> | |||
@@ -431,6 +432,11 @@ | |||
<artifactId>sonar-scanner-protocol</artifactId> | |||
<version>${project.version}</version> | |||
</dependency> | |||
<dependency> | |||
<groupId>${project.groupId}</groupId> | |||
<artifactId>sonar-ws-generated</artifactId> | |||
<version>${project.version}</version> | |||
</dependency> | |||
<dependency> | |||
<groupId>${project.groupId}</groupId> | |||
<artifactId>sonar-ws</artifactId> |
@@ -26,9 +26,9 @@ import java.util.function.Consumer; | |||
import java.util.stream.Collectors; | |||
import javax.annotation.Nullable; | |||
import org.sonarqube.ws.Organizations; | |||
import org.sonarqube.ws.WsUserGroups; | |||
import org.sonarqube.ws.WsUsers; | |||
import org.sonarqube.ws.WsUsers.GroupsWsResponse.Group; | |||
import org.sonarqube.ws.UserGroups; | |||
import org.sonarqube.ws.Users; | |||
import org.sonarqube.ws.Users.GroupsWsResponse.Group; | |||
import org.sonarqube.ws.client.user.GroupsRequest; | |||
import org.sonarqube.ws.client.usergroup.AddUserWsRequest; | |||
import org.sonarqube.ws.client.usergroup.CreateWsRequest; | |||
@@ -47,7 +47,7 @@ public class GroupTester { | |||
} | |||
@SafeVarargs | |||
public final WsUserGroups.Group generate(@Nullable Organizations.Organization organization, Consumer<CreateWsRequest.Builder>... populators) { | |||
public final UserGroups.Group generate(@Nullable Organizations.Organization organization, Consumer<CreateWsRequest.Builder>... populators) { | |||
int id = ID_GENERATOR.getAndIncrement(); | |||
CreateWsRequest.Builder request = CreateWsRequest.builder() | |||
.setName("Group" + id) | |||
@@ -62,7 +62,7 @@ public class GroupTester { | |||
.setOrganization(organization != null ? organization.getKey() : null) | |||
.setLogin(userLogin) | |||
.build(); | |||
WsUsers.GroupsWsResponse response = session.users().service().groups(request); | |||
Users.GroupsWsResponse response = session.users().service().groups(request); | |||
return response.getGroupsList(); | |||
} | |||
@@ -25,7 +25,7 @@ import java.util.function.Consumer; | |||
import javax.annotation.Nullable; | |||
import org.assertj.core.api.Assertions; | |||
import org.sonarqube.ws.Organizations; | |||
import org.sonarqube.ws.WsUsers; | |||
import org.sonarqube.ws.Users; | |||
import org.sonarqube.ws.client.HttpException; | |||
import org.sonarqube.ws.client.PostRequest; | |||
import org.sonarqube.ws.client.organization.CreateWsRequest; | |||
@@ -35,7 +35,6 @@ import org.sonarqube.ws.client.organization.SearchWsRequest; | |||
import org.sonarqube.ws.client.user.GroupsRequest; | |||
import static java.util.Arrays.stream; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
public class OrganizationTester { | |||
@@ -70,7 +69,7 @@ public class OrganizationTester { | |||
return service().create(request.build()).getOrganization(); | |||
} | |||
public OrganizationTester addMember(Organizations.Organization organization, WsUsers.CreateWsResponse.User user) { | |||
public OrganizationTester addMember(Organizations.Organization organization, Users.CreateWsResponse.User user) { | |||
service().addMember(organization.getKey(), user.getLogin()); | |||
return this; | |||
} | |||
@@ -89,7 +88,7 @@ public class OrganizationTester { | |||
return this; | |||
} | |||
public OrganizationTester assertThatMemberOf(Organizations.Organization organization, WsUsers.CreateWsResponse.User user) { | |||
public OrganizationTester assertThatMemberOf(Organizations.Organization organization, Users.CreateWsResponse.User user) { | |||
return assertThatMemberOf(organization, user.getLogin()); | |||
} | |||
@@ -99,7 +98,7 @@ public class OrganizationTester { | |||
return this; | |||
} | |||
public OrganizationTester assertThatNotMemberOf(Organizations.Organization organization, WsUsers.CreateWsResponse.User user) { | |||
public OrganizationTester assertThatNotMemberOf(Organizations.Organization organization, Users.CreateWsResponse.User user) { | |||
return assertThatNotMemberOf(organization, user.getLogin()); | |||
} | |||
@@ -126,7 +125,7 @@ public class OrganizationTester { | |||
} | |||
private void verifyMembersGroupMembership(String userLogin, @Nullable Organizations.Organization organization, boolean isMember) { | |||
List<WsUsers.GroupsWsResponse.Group> groups = session.wsClient().users().groups(GroupsRequest.builder() | |||
List<Users.GroupsWsResponse.Group> groups = session.wsClient().users().groups(GroupsRequest.builder() | |||
.setLogin(userLogin) | |||
.setOrganization(organization != null ? organization.getKey() : null) | |||
.setQuery("Members") |
@@ -23,7 +23,7 @@ import java.util.concurrent.atomic.AtomicInteger; | |||
import java.util.function.Consumer; | |||
import javax.annotation.Nullable; | |||
import org.sonarqube.ws.Organizations; | |||
import org.sonarqube.ws.WsProjects; | |||
import org.sonarqube.ws.Projects; | |||
import org.sonarqube.ws.client.project.CreateRequest; | |||
import org.sonarqube.ws.client.project.DeleteRequest; | |||
import org.sonarqube.ws.client.project.ProjectsService; | |||
@@ -49,7 +49,12 @@ public class ProjectTester { | |||
} | |||
@SafeVarargs | |||
public final WsProjects.CreateWsResponse.Project generate(@Nullable Organizations.Organization organization, Consumer<CreateRequest.Builder>... populators) { | |||
public final Projects.CreateWsResponse.Project provision(Consumer<CreateRequest.Builder>... populators) { | |||
return provision(null, populators); | |||
} | |||
@SafeVarargs | |||
public final Projects.CreateWsResponse.Project provision(@Nullable Organizations.Organization organization, Consumer<CreateRequest.Builder>... populators) { | |||
int id = ID_GENERATOR.getAndIncrement(); | |||
CreateRequest.Builder request = CreateRequest.builder() | |||
.setKey("key" + id) |
@@ -24,12 +24,13 @@ import com.google.gson.annotations.SerializedName; | |||
import java.util.ArrayList; | |||
import java.util.List; | |||
import java.util.concurrent.atomic.AtomicInteger; | |||
import org.sonarqube.ws.WsProjects.CreateWsResponse.Project; | |||
import org.sonarqube.ws.WsQualityGates.CreateWsResponse; | |||
import org.sonarqube.ws.Projects.CreateWsResponse.Project; | |||
import org.sonarqube.ws.Qualitygates.CreateWsResponse; | |||
import org.sonarqube.ws.client.GetRequest; | |||
import org.sonarqube.ws.client.PostRequest; | |||
import org.sonarqube.ws.client.qualitygate.QualityGatesService; | |||
import org.sonarqube.ws.client.qualitygate.SelectWsRequest; | |||
import org.sonarqube.ws.client.qualitygates.CreateRequest; | |||
import org.sonarqube.ws.client.qualitygates.QualitygatesService; | |||
import org.sonarqube.ws.client.qualitygates.SelectRequest; | |||
public class QGateTester { | |||
private static final AtomicInteger ID_GENERATOR = new AtomicInteger(); | |||
@@ -40,7 +41,7 @@ public class QGateTester { | |||
this.session = session; | |||
} | |||
public QualityGatesService service() { | |||
public QualitygatesService service() { | |||
return session.wsClient().qualityGates(); | |||
} | |||
@@ -54,11 +55,11 @@ public class QGateTester { | |||
public CreateWsResponse generate() { | |||
int id = ID_GENERATOR.getAndIncrement(); | |||
return session.wsClient().qualityGates().create("QualityGate" + id); | |||
return session.wsClient().qualityGates().create(new CreateRequest().setName("QualityGate" + id)); | |||
} | |||
public void associateProject(CreateWsResponse qualityGate, Project project){ | |||
service().associateProject(new SelectWsRequest().setGateId(qualityGate.getId()).setProjectKey(project.getKey())); | |||
service().select(new SelectRequest().setGateId(String.valueOf(qualityGate.getId())).setProjectKey(project.getKey())); | |||
} | |||
public static class ListResponse { |
@@ -25,9 +25,9 @@ import java.util.function.Consumer; | |||
import org.assertj.core.api.Assertions; | |||
import org.sonarqube.ws.Common; | |||
import org.sonarqube.ws.Organizations.Organization; | |||
import org.sonarqube.ws.QualityProfiles.CreateWsResponse.QualityProfile; | |||
import org.sonarqube.ws.Qualityprofiles.CreateWsResponse.QualityProfile; | |||
import org.sonarqube.ws.Rules; | |||
import org.sonarqube.ws.WsProjects.CreateWsResponse.Project; | |||
import org.sonarqube.ws.Projects.CreateWsResponse.Project; | |||
import org.sonarqube.ws.client.HttpException; | |||
import org.sonarqube.ws.client.qualityprofile.ActivateRuleWsRequest; | |||
import org.sonarqube.ws.client.qualityprofile.AddProjectRequest; |
@@ -24,8 +24,8 @@ import java.util.Optional; | |||
import java.util.concurrent.atomic.AtomicInteger; | |||
import java.util.function.Consumer; | |||
import org.sonarqube.ws.Organizations; | |||
import org.sonarqube.ws.WsUsers; | |||
import org.sonarqube.ws.WsUsers.CreateWsResponse.User; | |||
import org.sonarqube.ws.Users; | |||
import org.sonarqube.ws.Users.CreateWsResponse.User; | |||
import org.sonarqube.ws.client.PostRequest; | |||
import org.sonarqube.ws.client.user.CreateRequest; | |||
import org.sonarqube.ws.client.user.SearchRequest; | |||
@@ -122,8 +122,8 @@ public class UserTester { | |||
return session.wsClient().users(); | |||
} | |||
public Optional<WsUsers.SearchWsResponse.User> getByLogin(String login) { | |||
List<WsUsers.SearchWsResponse.User> users = session.wsClient().users().search(SearchRequest.builder().setQuery(login).build()).getUsersList(); | |||
public Optional<Users.SearchWsResponse.User> getByLogin(String login) { | |||
List<Users.SearchWsResponse.User> users = session.wsClient().users().search(SearchRequest.builder().setQuery(login).build()).getUsersList(); | |||
if (users.size() == 1) { | |||
return Optional.of(users.get(0)); | |||
} |
@@ -27,8 +27,8 @@ import org.sonar.api.server.ws.Response; | |||
import org.sonar.api.server.ws.WebService; | |||
import org.sonar.scanner.protocol.input.FileData; | |||
import org.sonar.scanner.protocol.input.ProjectRepositories; | |||
import org.sonarqube.ws.WsBatch.WsProjectResponse; | |||
import org.sonarqube.ws.WsBatch.WsProjectResponse.FileData.Builder; | |||
import org.sonarqube.ws.Batch.WsProjectResponse; | |||
import org.sonarqube.ws.Batch.WsProjectResponse.FileData.Builder; | |||
import static org.sonar.core.util.Protobuf.setNullable; | |||
import static org.sonar.server.ws.KeyExamples.KEY_BRANCH_EXAMPLE_001; |
@@ -45,7 +45,7 @@ import org.sonar.server.issue.index.IssueIndex; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonar.server.ws.WsUtils; | |||
import org.sonarqube.ws.Common; | |||
import org.sonarqube.ws.WsBranches; | |||
import org.sonarqube.ws.ProjectBranches; | |||
import static com.google.common.base.Preconditions.checkArgument; | |||
import static java.util.Collections.singletonList; | |||
@@ -112,7 +112,7 @@ public class ListAction implements BranchWsAction { | |||
.selectLastAnalysesByRootComponentUuids(dbSession, branches.stream().map(BranchDto::getUuid).collect(Collectors.toList())) | |||
.stream().collect(uniqueIndex(SnapshotDto::getComponentUuid, s -> formatDateTime(s.getCreatedAt()))); | |||
WsBranches.ListWsResponse.Builder protobufResponse = WsBranches.ListWsResponse.newBuilder(); | |||
ProjectBranches.ListWsResponse.Builder protobufResponse = ProjectBranches.ListWsResponse.newBuilder(); | |||
branches.stream() | |||
.forEach(b -> addBranch(protobufResponse, b, mergeBranchesByUuid, qualityGateMeasuresByComponentUuids.get(b.getUuid()), branchStatisticsByBranchUuid.get(b.getUuid()), | |||
analysisDateByBranchUuid.get(b.getUuid()))); | |||
@@ -120,9 +120,9 @@ public class ListAction implements BranchWsAction { | |||
} | |||
} | |||
private static void addBranch(WsBranches.ListWsResponse.Builder response, BranchDto branch, Map<String, BranchDto> mergeBranchesByUuid, @Nullable MeasureDto qualityGateMeasure, | |||
BranchStatistics branchStatistics, @Nullable String analysisDate) { | |||
WsBranches.Branch.Builder builder = toBranchBuilder(branch, Optional.ofNullable(mergeBranchesByUuid.get(branch.getMergeBranchUuid()))); | |||
private static void addBranch(ProjectBranches.ListWsResponse.Builder response, BranchDto branch, Map<String, BranchDto> mergeBranchesByUuid, | |||
@Nullable MeasureDto qualityGateMeasure, BranchStatistics branchStatistics, @Nullable String analysisDate) { | |||
ProjectBranches.Branch.Builder builder = toBranchBuilder(branch, Optional.ofNullable(mergeBranchesByUuid.get(branch.getMergeBranchUuid()))); | |||
setBranchStatus(builder, branch, qualityGateMeasure, branchStatistics); | |||
if (analysisDate != null) { | |||
builder.setAnalysisDate(analysisDate); | |||
@@ -130,8 +130,8 @@ public class ListAction implements BranchWsAction { | |||
response.addBranches(builder); | |||
} | |||
private static WsBranches.Branch.Builder toBranchBuilder(BranchDto branch, Optional<BranchDto> mergeBranch) { | |||
WsBranches.Branch.Builder builder = WsBranches.Branch.newBuilder(); | |||
private static ProjectBranches.Branch.Builder toBranchBuilder(BranchDto branch, Optional<BranchDto> mergeBranch) { | |||
ProjectBranches.Branch.Builder builder = ProjectBranches.Branch.newBuilder(); | |||
String branchKey = branch.getKey(); | |||
setNullable(branchKey, builder::setName); | |||
builder.setIsMain(branch.isMain()); | |||
@@ -147,8 +147,9 @@ public class ListAction implements BranchWsAction { | |||
return builder; | |||
} | |||
private static void setBranchStatus(WsBranches.Branch.Builder builder, BranchDto branch, @Nullable MeasureDto qualityGateMeasure, @Nullable BranchStatistics branchStatistics) { | |||
WsBranches.Branch.Status.Builder statusBuilder = WsBranches.Branch.Status.newBuilder(); | |||
private static void setBranchStatus(ProjectBranches.Branch.Builder builder, BranchDto branch, @Nullable MeasureDto qualityGateMeasure, | |||
@Nullable BranchStatistics branchStatistics) { | |||
ProjectBranches.Branch.Status.Builder statusBuilder = ProjectBranches.Branch.Status.newBuilder(); | |||
if (branch.getBranchType() == LONG && qualityGateMeasure != null) { | |||
statusBuilder.setQualityGateStatus(qualityGateMeasure.getData()); | |||
} |
@@ -48,10 +48,12 @@ import org.sonar.db.ce.CeTaskTypes; | |||
import org.sonar.db.component.ComponentDto; | |||
import org.sonar.db.component.ComponentQuery; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsCe; | |||
import org.sonarqube.ws.WsCe.ActivityResponse; | |||
import org.sonarqube.ws.client.ce.ActivityWsRequest; | |||
import org.sonarqube.ws.Ce; | |||
import org.sonarqube.ws.Ce.ActivityResponse; | |||
import org.sonarqube.ws.client.ce.ActivityRequest; | |||
import static java.lang.Boolean.parseBoolean; | |||
import static java.lang.Integer.parseInt; | |||
import static java.lang.String.format; | |||
import static java.util.Collections.singletonList; | |||
import static org.apache.commons.lang.StringUtils.defaultString; | |||
@@ -161,32 +163,32 @@ public class ActivityAction implements CeWsAction { | |||
writeProtobuf(activityResponse, wsRequest, wsResponse); | |||
} | |||
private ActivityResponse doHandle(ActivityWsRequest request) { | |||
private ActivityResponse doHandle(ActivityRequest request) { | |||
try (DbSession dbSession = dbClient.openSession(false)) { | |||
ComponentDto component = loadComponent(dbSession, request); | |||
checkPermission(component); | |||
// if a task searched by uuid is found all other parameters are ignored | |||
Optional<WsCe.Task> taskSearchedById = searchTaskByUuid(dbSession, request); | |||
Optional<Ce.Task> taskSearchedById = searchTaskByUuid(dbSession, request); | |||
if (taskSearchedById.isPresent()) { | |||
return buildResponse( | |||
singletonList(taskSearchedById.get()), | |||
Collections.emptyList(), | |||
request.getPageSize()); | |||
parseInt(request.getPs())); | |||
} | |||
CeTaskQuery query = buildQuery(dbSession, request, component); | |||
List<WsCe.Task> queuedTasks = loadQueuedTasks(dbSession, request, query); | |||
List<WsCe.Task> pastTasks = loadPastTasks(dbSession, request, query); | |||
List<Ce.Task> queuedTasks = loadQueuedTasks(dbSession, request, query); | |||
List<Ce.Task> pastTasks = loadPastTasks(dbSession, request, query); | |||
return buildResponse( | |||
queuedTasks, | |||
pastTasks, | |||
request.getPageSize()); | |||
parseInt(request.getPs())); | |||
} | |||
} | |||
@CheckForNull | |||
private ComponentDto loadComponent(DbSession dbSession, ActivityWsRequest request) { | |||
private ComponentDto loadComponent(DbSession dbSession, ActivityRequest request) { | |||
String componentId = request.getComponentId(); | |||
if (componentId == null) { | |||
return null; | |||
@@ -205,8 +207,8 @@ public class ActivityAction implements CeWsAction { | |||
} | |||
} | |||
private Optional<WsCe.Task> searchTaskByUuid(DbSession dbSession, ActivityWsRequest request) { | |||
String textQuery = request.getQuery(); | |||
private Optional<Ce.Task> searchTaskByUuid(DbSession dbSession, ActivityRequest request) { | |||
String textQuery = request.getQ(); | |||
if (textQuery == null) { | |||
return Optional.absent(); | |||
} | |||
@@ -220,10 +222,10 @@ public class ActivityAction implements CeWsAction { | |||
return activity.map(ceActivityDto -> Optional.of(formatter.formatActivity(dbSession, ceActivityDto, null))).orElseGet(Optional::absent); | |||
} | |||
private CeTaskQuery buildQuery(DbSession dbSession, ActivityWsRequest request, @Nullable ComponentDto component) { | |||
private CeTaskQuery buildQuery(DbSession dbSession, ActivityRequest request, @Nullable ComponentDto component) { | |||
CeTaskQuery query = new CeTaskQuery(); | |||
query.setType(request.getType()); | |||
query.setOnlyCurrents(request.getOnlyCurrents()); | |||
query.setOnlyCurrents(parseBoolean(request.getOnlyCurrents())); | |||
Date minSubmittedAt = parseStartingDateOrDateTime(request.getMinSubmittedAt()); | |||
query.setMinSubmittedAt(minSubmittedAt == null ? null : minSubmittedAt.getTime()); | |||
Date maxExecutedAt = parseEndingDateOrDateTime(request.getMaxExecutedAt()); | |||
@@ -234,7 +236,7 @@ public class ActivityAction implements CeWsAction { | |||
query.setStatuses(request.getStatus()); | |||
} | |||
String componentQuery = request.getQuery(); | |||
String componentQuery = request.getQ(); | |||
if (component != null) { | |||
query.setComponentUuid(component.uuid()); | |||
} else if (componentQuery != null) { | |||
@@ -251,28 +253,28 @@ public class ActivityAction implements CeWsAction { | |||
return dbClient.componentDao().selectByQuery(dbSession, componentDtoQuery, 0, CeTaskQuery.MAX_COMPONENT_UUIDS); | |||
} | |||
private List<WsCe.Task> loadQueuedTasks(DbSession dbSession, ActivityWsRequest request, CeTaskQuery query) { | |||
List<CeQueueDto> dtos = dbClient.ceQueueDao().selectByQueryInDescOrder(dbSession, query, request.getPageSize()); | |||
private List<Ce.Task> loadQueuedTasks(DbSession dbSession, ActivityRequest request, CeTaskQuery query) { | |||
List<CeQueueDto> dtos = dbClient.ceQueueDao().selectByQueryInDescOrder(dbSession, query, parseInt(request.getPs())); | |||
return formatter.formatQueue(dbSession, dtos); | |||
} | |||
private List<WsCe.Task> loadPastTasks(DbSession dbSession, ActivityWsRequest request, CeTaskQuery query) { | |||
List<CeActivityDto> dtos = dbClient.ceActivityDao().selectByQuery(dbSession, query, forPage(1).andSize(request.getPageSize())); | |||
private List<Ce.Task> loadPastTasks(DbSession dbSession, ActivityRequest request, CeTaskQuery query) { | |||
List<CeActivityDto> dtos = dbClient.ceActivityDao().selectByQuery(dbSession, query, forPage(1).andSize(parseInt(request.getPs()))); | |||
return formatter.formatActivity(dbSession, dtos); | |||
} | |||
private static ActivityResponse buildResponse(Iterable<WsCe.Task> queuedTasks, Iterable<WsCe.Task> pastTasks, int pageSize) { | |||
WsCe.ActivityResponse.Builder wsResponseBuilder = WsCe.ActivityResponse.newBuilder(); | |||
private static ActivityResponse buildResponse(Iterable<Ce.Task> queuedTasks, Iterable<Ce.Task> pastTasks, int pageSize) { | |||
Ce.ActivityResponse.Builder wsResponseBuilder = Ce.ActivityResponse.newBuilder(); | |||
int nbInsertedTasks = 0; | |||
for (WsCe.Task queuedTask : queuedTasks) { | |||
for (Ce.Task queuedTask : queuedTasks) { | |||
if (nbInsertedTasks < pageSize) { | |||
wsResponseBuilder.addTasks(queuedTask); | |||
nbInsertedTasks++; | |||
} | |||
} | |||
for (WsCe.Task pastTask : pastTasks) { | |||
for (Ce.Task pastTask : pastTasks) { | |||
if (nbInsertedTasks < pageSize) { | |||
wsResponseBuilder.addTasks(pastTask); | |||
nbInsertedTasks++; | |||
@@ -281,18 +283,18 @@ public class ActivityAction implements CeWsAction { | |||
return wsResponseBuilder.build(); | |||
} | |||
private static ActivityWsRequest toSearchWsRequest(Request request) { | |||
ActivityWsRequest activityWsRequest = new ActivityWsRequest() | |||
private static ActivityRequest toSearchWsRequest(Request request) { | |||
ActivityRequest activityWsRequest = new ActivityRequest() | |||
.setComponentId(request.param(PARAM_COMPONENT_ID)) | |||
.setQuery(defaultString(request.param(Param.TEXT_QUERY), request.param(PARAM_COMPONENT_QUERY))) | |||
.setQ(defaultString(request.param(Param.TEXT_QUERY), request.param(PARAM_COMPONENT_QUERY))) | |||
.setStatus(request.paramAsStrings(PARAM_STATUS)) | |||
.setType(request.param(PARAM_TYPE)) | |||
.setMinSubmittedAt(request.param(PARAM_MIN_SUBMITTED_AT)) | |||
.setMaxExecutedAt(request.param(PARAM_MAX_EXECUTED_AT)) | |||
.setOnlyCurrents(request.paramAsBoolean(PARAM_ONLY_CURRENTS)) | |||
.setPageSize(request.mandatoryParamAsInt(Param.PAGE_SIZE)); | |||
.setOnlyCurrents(String.valueOf(request.paramAsBoolean(PARAM_ONLY_CURRENTS))) | |||
.setPs(String.valueOf(request.mandatoryParamAsInt(Param.PAGE_SIZE))); | |||
checkRequest(activityWsRequest.getComponentId() == null || activityWsRequest.getQuery() == null, "%s and %s must not be set at the same time", | |||
checkRequest(activityWsRequest.getComponentId() == null || activityWsRequest.getQ() == null, "%s and %s must not be set at the same time", | |||
PARAM_COMPONENT_ID, PARAM_COMPONENT_QUERY); | |||
return activityWsRequest; | |||
} |
@@ -34,8 +34,8 @@ import org.sonar.db.component.ComponentDto; | |||
import org.sonar.server.component.ComponentFinder; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonar.server.ws.KeyExamples; | |||
import org.sonarqube.ws.WsCe.ActivityStatusWsResponse; | |||
import org.sonarqube.ws.client.ce.ActivityStatusWsRequest; | |||
import org.sonarqube.ws.Ce.ActivityStatusWsResponse; | |||
import org.sonarqube.ws.client.ce.ActivityStatusRequest; | |||
import static org.sonar.server.component.ComponentFinder.ParamNames.COMPONENT_ID_AND_KEY; | |||
import static org.sonar.server.ws.WsUtils.writeProtobuf; | |||
@@ -80,7 +80,7 @@ public class ActivityStatusAction implements CeWsAction { | |||
writeProtobuf(activityStatusResponse, request, response); | |||
} | |||
private ActivityStatusWsResponse doHandle(ActivityStatusWsRequest request) { | |||
private ActivityStatusWsResponse doHandle(ActivityStatusRequest request) { | |||
try (DbSession dbSession = dbClient.openSession(false)) { | |||
Optional<ComponentDto> component = searchComponent(dbSession, request); | |||
String componentUuid = component.isPresent() ? component.get().uuid() : null; | |||
@@ -97,7 +97,7 @@ public class ActivityStatusAction implements CeWsAction { | |||
} | |||
} | |||
private Optional<ComponentDto> searchComponent(DbSession dbSession, ActivityStatusWsRequest request) { | |||
private Optional<ComponentDto> searchComponent(DbSession dbSession, ActivityStatusRequest request) { | |||
ComponentDto component = null; | |||
if (hasComponentInRequest(request)) { | |||
component = componentFinder.getByUuidOrKey(dbSession, request.getComponentId(), request.getComponentKey(), COMPONENT_ID_AND_KEY); | |||
@@ -113,14 +113,13 @@ public class ActivityStatusAction implements CeWsAction { | |||
} | |||
} | |||
private static boolean hasComponentInRequest(ActivityStatusWsRequest request) { | |||
private static boolean hasComponentInRequest(ActivityStatusRequest request) { | |||
return request.getComponentId() != null || request.getComponentKey() != null; | |||
} | |||
private static ActivityStatusWsRequest toWsRequest(Request request) { | |||
return ActivityStatusWsRequest.newBuilder() | |||
private static ActivityStatusRequest toWsRequest(Request request) { | |||
return new ActivityStatusRequest() | |||
.setComponentId(request.param(PARAM_COMPONENT_ID)) | |||
.setComponentKey(request.param(DEPRECATED_PARAM_COMPONENT_KEY)) | |||
.build(); | |||
.setComponentKey(request.param(DEPRECATED_PARAM_COMPONENT_KEY)); | |||
} | |||
} |
@@ -35,7 +35,7 @@ import org.sonar.db.component.ComponentDto; | |||
import org.sonar.server.component.ComponentFinder; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonar.server.ws.KeyExamples; | |||
import org.sonarqube.ws.WsCe.ProjectResponse; | |||
import org.sonarqube.ws.Ce.ProjectResponse; | |||
import static org.sonar.db.Pagination.forPage; | |||
import static org.sonar.server.component.ComponentFinder.ParamNames.COMPONENT_ID_AND_COMPONENT; |
@@ -31,7 +31,7 @@ import org.sonar.ce.queue.CeTask; | |||
import org.sonar.server.computation.queue.ReportSubmitter; | |||
import org.sonar.server.organization.DefaultOrganizationProvider; | |||
import org.sonar.server.ws.WsUtils; | |||
import org.sonarqube.ws.WsCe; | |||
import org.sonarqube.ws.Ce; | |||
import static org.sonar.core.component.ComponentKeys.MAX_COMPONENT_KEY_LENGTH; | |||
import static org.sonar.db.component.ComponentValidator.MAX_COMPONENT_NAME_LENGTH; | |||
@@ -116,7 +116,7 @@ public class SubmitAction implements CeWsAction { | |||
try (InputStream report = new BufferedInputStream(wsRequest.mandatoryParamAsPart(PARAM_REPORT_DATA).getInputStream())) { | |||
CeTask task = reportSubmitter.submit(organizationKey, projectKey, projectBranch, projectName, characteristics, report); | |||
WsCe.SubmitResponse submitResponse = WsCe.SubmitResponse.newBuilder() | |||
Ce.SubmitResponse submitResponse = Ce.SubmitResponse.newBuilder() | |||
.setTaskId(task.getUuid()) | |||
.setProjectId(task.getComponentUuid()) | |||
.build(); |
@@ -42,7 +42,7 @@ import org.sonar.db.component.ComponentDto; | |||
import org.sonar.db.permission.OrganizationPermission; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonar.server.ws.WsUtils; | |||
import org.sonarqube.ws.WsCe; | |||
import org.sonarqube.ws.Ce; | |||
import static org.sonar.core.permission.GlobalPermissions.SCAN_EXECUTION; | |||
import static org.sonar.server.user.AbstractUserSession.insufficientPrivilegesException; | |||
@@ -92,7 +92,7 @@ public class TaskAction implements CeWsAction { | |||
public void handle(Request wsRequest, Response wsResponse) throws Exception { | |||
String taskUuid = wsRequest.mandatoryParam(PARAM_TASK_UUID); | |||
try (DbSession dbSession = dbClient.openSession(false)) { | |||
WsCe.TaskResponse.Builder wsTaskResponse = WsCe.TaskResponse.newBuilder(); | |||
Ce.TaskResponse.Builder wsTaskResponse = Ce.TaskResponse.newBuilder(); | |||
Optional<CeQueueDto> queueDto = dbClient.ceQueueDao().selectByUuid(dbSession, taskUuid); | |||
if (queueDto.isPresent()) { | |||
com.google.common.base.Optional<ComponentDto> component = loadComponent(dbSession, queueDto.get().getComponentUuid()); |
@@ -40,8 +40,8 @@ import org.sonar.db.ce.CeQueueDto; | |||
import org.sonar.db.ce.CeTaskCharacteristicDto; | |||
import org.sonar.db.component.ComponentDto; | |||
import org.sonar.db.organization.OrganizationDto; | |||
import org.sonarqube.ws.Ce; | |||
import org.sonarqube.ws.Common; | |||
import org.sonarqube.ws.WsCe; | |||
import static com.google.common.base.Preconditions.checkState; | |||
import static java.lang.String.format; | |||
@@ -63,17 +63,17 @@ public class TaskFormatter { | |||
this.system2 = system2; | |||
} | |||
public List<WsCe.Task> formatQueue(DbSession dbSession, List<CeQueueDto> dtos) { | |||
public List<Ce.Task> formatQueue(DbSession dbSession, List<CeQueueDto> dtos) { | |||
DtoCache cache = DtoCache.forQueueDtos(dbClient, dbSession, dtos); | |||
return dtos.stream().map(input -> formatQueue(input, cache)).collect(MoreCollectors.toList(dtos.size())); | |||
} | |||
public WsCe.Task formatQueue(DbSession dbSession, CeQueueDto queue) { | |||
public Ce.Task formatQueue(DbSession dbSession, CeQueueDto queue) { | |||
return formatQueue(queue, DtoCache.forQueueDtos(dbClient, dbSession, singletonList(queue))); | |||
} | |||
private WsCe.Task formatQueue(CeQueueDto dto, DtoCache componentDtoCache) { | |||
WsCe.Task.Builder builder = WsCe.Task.newBuilder(); | |||
private Ce.Task formatQueue(CeQueueDto dto, DtoCache componentDtoCache) { | |||
Ce.Task.Builder builder = Ce.Task.newBuilder(); | |||
String organizationKey = componentDtoCache.getOrganizationKey(dto.getComponentUuid()); | |||
// FIXME organization field should be set from the CeQueueDto rather than from the ComponentDto | |||
setNullable(organizationKey, builder::setOrganization); | |||
@@ -82,7 +82,7 @@ public class TaskFormatter { | |||
setComponent(builder, dto.getComponentUuid(), componentDtoCache); | |||
} | |||
builder.setId(dto.getUuid()); | |||
builder.setStatus(WsCe.TaskStatus.valueOf(dto.getStatus().name())); | |||
builder.setStatus(Ce.TaskStatus.valueOf(dto.getStatus().name())); | |||
builder.setType(dto.getTaskType()); | |||
builder.setLogs(false); | |||
setNullable(dto.getSubmitterLogin(), builder::setSubmitterLogin); | |||
@@ -93,24 +93,24 @@ public class TaskFormatter { | |||
return builder.build(); | |||
} | |||
public WsCe.Task formatActivity(DbSession dbSession, CeActivityDto dto, @Nullable String scannerContext) { | |||
public Ce.Task formatActivity(DbSession dbSession, CeActivityDto dto, @Nullable String scannerContext) { | |||
return formatActivity(dto, DtoCache.forActivityDtos(dbClient, dbSession, singletonList(dto)), scannerContext); | |||
} | |||
public List<WsCe.Task> formatActivity(DbSession dbSession, List<CeActivityDto> dtos) { | |||
public List<Ce.Task> formatActivity(DbSession dbSession, List<CeActivityDto> dtos) { | |||
DtoCache cache = DtoCache.forActivityDtos(dbClient, dbSession, dtos); | |||
return dtos.stream() | |||
.map(input -> formatActivity(input, cache, null)) | |||
.collect(MoreCollectors.toList(dtos.size())); | |||
} | |||
private static WsCe.Task formatActivity(CeActivityDto dto, DtoCache componentDtoCache, @Nullable String scannerContext) { | |||
WsCe.Task.Builder builder = WsCe.Task.newBuilder(); | |||
private static Ce.Task formatActivity(CeActivityDto dto, DtoCache componentDtoCache, @Nullable String scannerContext) { | |||
Ce.Task.Builder builder = Ce.Task.newBuilder(); | |||
String organizationKey = componentDtoCache.getOrganizationKey(dto.getComponentUuid()); | |||
// FIXME organization field should be set from the CeActivityDto rather than from the ComponentDto | |||
setNullable(organizationKey, builder::setOrganization); | |||
builder.setId(dto.getUuid()); | |||
builder.setStatus(WsCe.TaskStatus.valueOf(dto.getStatus().name())); | |||
builder.setStatus(Ce.TaskStatus.valueOf(dto.getStatus().name())); | |||
builder.setType(dto.getTaskType()); | |||
builder.setLogs(false); | |||
setNullable(dto.getComponentUuid(), uuid -> setComponent(builder, uuid, componentDtoCache).setComponentId(uuid)); | |||
@@ -133,7 +133,7 @@ public class TaskFormatter { | |||
return builder.build(); | |||
} | |||
private static WsCe.Task.Builder setComponent(WsCe.Task.Builder builder, @Nullable String componentUuid, DtoCache componentDtoCache) { | |||
private static Ce.Task.Builder setComponent(Ce.Task.Builder builder, @Nullable String componentUuid, DtoCache componentDtoCache) { | |||
ComponentDto componentDto = componentDtoCache.getComponent(componentUuid); | |||
if (componentDto == null) { | |||
return builder; | |||
@@ -144,7 +144,7 @@ public class TaskFormatter { | |||
return builder; | |||
} | |||
private static WsCe.Task.Builder setBranch(WsCe.Task.Builder builder, String taskUuid, DtoCache componentDtoCache) { | |||
private static Ce.Task.Builder setBranch(Ce.Task.Builder builder, String taskUuid, DtoCache componentDtoCache) { | |||
componentDtoCache.getBranchName(taskUuid).ifPresent( | |||
b -> { | |||
builder.setBranch(b); |
@@ -25,7 +25,7 @@ import org.sonar.api.server.ws.Request; | |||
import org.sonar.api.server.ws.Response; | |||
import org.sonar.api.server.ws.WebService; | |||
import org.sonar.ce.taskprocessor.CeTaskProcessor; | |||
import org.sonarqube.ws.WsCe; | |||
import org.sonarqube.ws.Ce; | |||
import static org.sonar.server.ws.WsUtils.writeProtobuf; | |||
@@ -52,7 +52,7 @@ public class TaskTypesAction implements CeWsAction { | |||
@Override | |||
public void handle(Request request, Response response) throws Exception { | |||
WsCe.TaskTypesWsResponse taskTypesWsResponse = WsCe.TaskTypesWsResponse.newBuilder() | |||
Ce.TaskTypesWsResponse taskTypesWsResponse = Ce.TaskTypesWsResponse.newBuilder() | |||
.addAllTaskTypes(taskTypes) | |||
.build(); | |||
@@ -25,7 +25,7 @@ import org.sonar.api.server.ws.Response; | |||
import org.sonar.api.server.ws.WebService; | |||
import org.sonar.ce.configuration.WorkerCountProvider; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsCe.WorkerCountResponse; | |||
import org.sonarqube.ws.Ce.WorkerCountResponse; | |||
import static org.sonar.server.ws.WsUtils.writeProtobuf; | |||
import static org.sonarqube.ws.client.ce.CeWsParameters.ACTION_WORKER_COUNT; |
@@ -28,7 +28,7 @@ import org.sonar.db.component.ComponentDto; | |||
import org.sonar.db.component.SnapshotDto; | |||
import org.sonar.db.organization.OrganizationDto; | |||
import org.sonar.server.project.Visibility; | |||
import org.sonarqube.ws.WsComponents; | |||
import org.sonarqube.ws.Components; | |||
import static com.google.common.base.Preconditions.checkArgument; | |||
import static com.google.common.base.Strings.emptyToNull; | |||
@@ -46,7 +46,7 @@ class ComponentDtoToWsComponent { | |||
// prevent instantiation | |||
} | |||
static WsComponents.Component.Builder componentDtoToWsComponent(ComponentDto dto, OrganizationDto organizationDto, Optional<SnapshotDto> lastAnalysis) { | |||
static Components.Component.Builder componentDtoToWsComponent(ComponentDto dto, OrganizationDto organizationDto, Optional<SnapshotDto> lastAnalysis) { | |||
checkArgument( | |||
Objects.equals(dto.getOrganizationUuid(), organizationDto.getUuid()), | |||
"OrganizationUuid (%s) of ComponentDto to convert to Ws Component is not the same as the one (%s) of the specified OrganizationDto", | |||
@@ -54,8 +54,8 @@ class ComponentDtoToWsComponent { | |||
return componentDtoToWsComponent(dto, organizationDto.getKey(), lastAnalysis); | |||
} | |||
private static WsComponents.Component.Builder componentDtoToWsComponent(ComponentDto dto, String organizationDtoKey, Optional<SnapshotDto> lastAnalysis) { | |||
WsComponents.Component.Builder wsComponent = WsComponents.Component.newBuilder() | |||
private static Components.Component.Builder componentDtoToWsComponent(ComponentDto dto, String organizationDtoKey, Optional<SnapshotDto> lastAnalysis) { | |||
Components.Component.Builder wsComponent = Components.Component.newBuilder() | |||
.setOrganization(organizationDtoKey) | |||
.setId(dto.uuid()) | |||
.setKey(dto.getKey()) | |||
@@ -78,7 +78,7 @@ class ComponentDtoToWsComponent { | |||
return wsComponent; | |||
} | |||
private static void setTags(ComponentDto dto, WsComponents.Component.Builder wsComponent) { | |||
private static void setTags(ComponentDto dto, Components.Component.Builder wsComponent) { | |||
if (Qualifiers.PROJECT.equals(dto.qualifier())) { | |||
wsComponent.getTagsBuilder().addAllTags(dto.getTags()); | |||
} |
@@ -41,8 +41,8 @@ import org.sonar.server.es.SearchIdResult; | |||
import org.sonar.server.es.SearchOptions; | |||
import org.sonar.server.organization.DefaultOrganizationProvider; | |||
import org.sonar.server.ws.WsUtils; | |||
import org.sonarqube.ws.WsComponents; | |||
import org.sonarqube.ws.WsComponents.SearchWsResponse; | |||
import org.sonarqube.ws.Components; | |||
import org.sonarqube.ws.Components.SearchWsResponse; | |||
import org.sonarqube.ws.client.component.SearchWsRequest; | |||
import static com.google.common.base.Preconditions.checkArgument; | |||
@@ -180,13 +180,13 @@ public class SearchAction implements ComponentsWsAction { | |||
return responseBuilder.build(); | |||
} | |||
private static WsComponents.Component dtoToComponent(OrganizationDto organization, ComponentDto dto, String projectKey) { | |||
private static Components.Component dtoToComponent(OrganizationDto organization, ComponentDto dto, String projectKey) { | |||
checkArgument( | |||
organization.getUuid().equals(dto.getOrganizationUuid()), | |||
"No Organization found for uuid '%s'", | |||
dto.getOrganizationUuid()); | |||
WsComponents.Component.Builder builder = WsComponents.Component.newBuilder() | |||
Components.Component.Builder builder = Components.Component.newBuilder() | |||
.setOrganization(organization.getKey()) | |||
.setId(dto.uuid()) | |||
.setKey(dto.getDbKey()) |
@@ -56,8 +56,8 @@ import org.sonar.server.measure.index.ProjectMeasuresQuery; | |||
import org.sonar.server.project.Visibility; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.Common; | |||
import org.sonarqube.ws.WsComponents.Component; | |||
import org.sonarqube.ws.WsComponents.SearchProjectsWsResponse; | |||
import org.sonarqube.ws.Components.Component; | |||
import org.sonarqube.ws.Components.SearchProjectsWsResponse; | |||
import org.sonarqube.ws.client.component.SearchProjectsRequest; | |||
import static com.google.common.base.MoreObjects.firstNonNull; |
@@ -34,7 +34,7 @@ import org.sonar.db.component.SnapshotDto; | |||
import org.sonar.db.organization.OrganizationDto; | |||
import org.sonar.server.component.ComponentFinder; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsComponents.ShowWsResponse; | |||
import org.sonarqube.ws.Components.ShowWsResponse; | |||
import org.sonarqube.ws.client.component.ShowWsRequest; | |||
import static com.google.common.base.Preconditions.checkArgument; |
@@ -56,10 +56,10 @@ import org.sonar.server.component.index.SuggestionQuery; | |||
import org.sonar.server.es.DefaultIndexSettings; | |||
import org.sonar.server.favorite.FavoriteFinder; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsComponents.SuggestionsWsResponse; | |||
import org.sonarqube.ws.WsComponents.SuggestionsWsResponse.Category; | |||
import org.sonarqube.ws.WsComponents.SuggestionsWsResponse.Project; | |||
import org.sonarqube.ws.WsComponents.SuggestionsWsResponse.Suggestion; | |||
import org.sonarqube.ws.Components.SuggestionsWsResponse; | |||
import org.sonarqube.ws.Components.SuggestionsWsResponse.Category; | |||
import org.sonarqube.ws.Components.SuggestionsWsResponse.Project; | |||
import org.sonarqube.ws.Components.SuggestionsWsResponse.Suggestion; | |||
import static com.google.common.base.Preconditions.checkState; | |||
import static java.util.Arrays.stream; | |||
@@ -72,8 +72,8 @@ import static org.sonar.core.util.stream.MoreCollectors.toSet; | |||
import static org.sonar.server.component.index.SuggestionQuery.DEFAULT_LIMIT; | |||
import static org.sonar.server.es.DefaultIndexSettings.MINIMUM_NGRAM_LENGTH; | |||
import static org.sonar.server.ws.WsUtils.writeProtobuf; | |||
import static org.sonarqube.ws.WsComponents.SuggestionsWsResponse.Organization; | |||
import static org.sonarqube.ws.WsComponents.SuggestionsWsResponse.newBuilder; | |||
import static org.sonarqube.ws.Components.SuggestionsWsResponse.Organization; | |||
import static org.sonarqube.ws.Components.SuggestionsWsResponse.newBuilder; | |||
import static org.sonarqube.ws.client.component.ComponentsWsParameters.ACTION_SUGGESTIONS; | |||
public class SuggestionsAction implements ComponentsWsAction { |
@@ -50,8 +50,8 @@ import org.sonar.db.component.ComponentTreeQuery.Strategy; | |||
import org.sonar.db.organization.OrganizationDto; | |||
import org.sonar.server.component.ComponentFinder; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsComponents; | |||
import org.sonarqube.ws.WsComponents.TreeWsResponse; | |||
import org.sonarqube.ws.Components; | |||
import org.sonarqube.ws.Components.TreeWsResponse; | |||
import org.sonarqube.ws.client.component.TreeWsRequest; | |||
import static com.google.common.base.Preconditions.checkArgument; | |||
@@ -233,9 +233,9 @@ public class TreeAction implements ComponentsWsAction { | |||
return response.build(); | |||
} | |||
private static WsComponents.Component.Builder toWsComponent(ComponentDto component, OrganizationDto organizationDto, | |||
Map<String, ComponentDto> referenceComponentsByUuid) { | |||
WsComponents.Component.Builder wsComponent = componentDtoToWsComponent(component, organizationDto, Optional.empty()); | |||
private static Components.Component.Builder toWsComponent(ComponentDto component, OrganizationDto organizationDto, | |||
Map<String, ComponentDto> referenceComponentsByUuid) { | |||
Components.Component.Builder wsComponent = componentDtoToWsComponent(component, organizationDto, Optional.empty()); | |||
ComponentDto referenceComponent = referenceComponentsByUuid.get(component.getCopyResourceUuid()); | |||
if (referenceComponent != null) { |
@@ -28,9 +28,9 @@ import org.sonar.db.DbClient; | |||
import org.sonar.db.DbSession; | |||
import org.sonar.db.component.ComponentDao; | |||
import org.sonar.db.component.ComponentDto; | |||
import org.sonarqube.ws.WsDuplications; | |||
import org.sonarqube.ws.WsDuplications.Block; | |||
import org.sonarqube.ws.WsDuplications.ShowResponse; | |||
import org.sonarqube.ws.Duplications; | |||
import org.sonarqube.ws.Duplications.Block; | |||
import org.sonarqube.ws.Duplications.ShowResponse; | |||
import static com.google.common.collect.Maps.newHashMap; | |||
import static org.sonar.core.util.Protobuf.setNullable; | |||
@@ -61,8 +61,8 @@ public class ShowResponseBuilder { | |||
return response.build(); | |||
} | |||
private static WsDuplications.Duplication.Builder toWsDuplication(DuplicationsParser.Block block, Map<String, String> refByComponentKey) { | |||
WsDuplications.Duplication.Builder wsDuplication = WsDuplications.Duplication.newBuilder(); | |||
private static Duplications.Duplication.Builder toWsDuplication(DuplicationsParser.Block block, Map<String, String> refByComponentKey) { | |||
Duplications.Duplication.Builder wsDuplication = Duplications.Duplication.newBuilder(); | |||
block.getDuplications().stream() | |||
.map(d -> toWsBlock(refByComponentKey, d)) | |||
.forEach(wsDuplication::addBlocks); | |||
@@ -86,8 +86,8 @@ public class ShowResponseBuilder { | |||
return block; | |||
} | |||
private static WsDuplications.File toWsFile(ComponentDto file, @Nullable ComponentDto project, @Nullable ComponentDto subProject, @Nullable String branch) { | |||
WsDuplications.File.Builder wsFile = WsDuplications.File.newBuilder(); | |||
private static Duplications.File toWsFile(ComponentDto file, @Nullable ComponentDto project, @Nullable ComponentDto subProject, @Nullable String branch) { | |||
Duplications.File.Builder wsFile = Duplications.File.newBuilder(); | |||
wsFile.setKey(file.getKey()); | |||
wsFile.setUuid(file.uuid()); | |||
wsFile.setName(file.longName()); | |||
@@ -113,7 +113,7 @@ public class ShowResponseBuilder { | |||
private void writeFiles(DbSession session, ShowResponse.Builder response, Map<String, String> refByComponentKey, @Nullable String branch) { | |||
Map<String, ComponentDto> projectsByUuid = newHashMap(); | |||
Map<String, ComponentDto> parentModulesByUuid = newHashMap(); | |||
Map<String, WsDuplications.File> filesByRef = response.getMutableFiles(); | |||
Map<String, Duplications.File> filesByRef = response.getMutableFiles(); | |||
for (Map.Entry<String, String> entry : refByComponentKey.entrySet()) { | |||
String componentKey = entry.getKey(); |
@@ -34,7 +34,7 @@ import org.sonar.server.platform.WebServer; | |||
import org.sonar.server.plugins.edition.EditionInstaller; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonar.server.ws.WsUtils; | |||
import org.sonarqube.ws.WsEditions; | |||
import org.sonarqube.ws.Editions; | |||
import static com.google.common.base.Preconditions.checkState; | |||
@@ -115,11 +115,11 @@ public class ApplyLicenseAction implements EditionsWsAction { | |||
} | |||
} | |||
private WsEditions.StatusResponse buildResponse() { | |||
WsEditions.StatusResponse.Builder builder = WsEditions.StatusResponse.newBuilder() | |||
private Editions.StatusResponse buildResponse() { | |||
Editions.StatusResponse.Builder builder = Editions.StatusResponse.newBuilder() | |||
.setNextEditionKey(editionManagementState.getPendingEditionKey().orElse("")) | |||
.setCurrentEditionKey(editionManagementState.getCurrentEditionKey().orElse("")) | |||
.setInstallationStatus(WsEditions.InstallationStatus.valueOf(editionManagementState.getPendingInstallationStatus().name())); | |||
.setInstallationStatus(Editions.InstallationStatus.valueOf(editionManagementState.getPendingInstallationStatus().name())); | |||
editionManagementState.getInstallErrorMessage().ifPresent(builder::setInstallError); | |||
return builder.build(); | |||
} |
@@ -26,7 +26,7 @@ import org.sonar.api.server.ws.WebService; | |||
import org.sonar.server.measure.index.ProjectMeasuresIndex; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonar.server.ws.WsUtils; | |||
import org.sonarqube.ws.WsEditions.FormDataResponse; | |||
import org.sonarqube.ws.Editions.FormDataResponse; | |||
public class FormDataAction implements EditionsWsAction { | |||
private final UserSession userSession; |
@@ -31,12 +31,12 @@ import org.sonar.server.platform.WebServer; | |||
import org.sonar.server.plugins.edition.EditionInstaller; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonar.server.ws.WsUtils; | |||
import org.sonarqube.ws.WsEditions; | |||
import org.sonarqube.ws.Editions; | |||
import static java.util.Optional.ofNullable; | |||
import static org.sonarqube.ws.WsEditions.PreviewStatus.AUTOMATIC_INSTALL; | |||
import static org.sonarqube.ws.WsEditions.PreviewStatus.MANUAL_INSTALL; | |||
import static org.sonarqube.ws.WsEditions.PreviewStatus.NO_INSTALL; | |||
import static org.sonarqube.ws.Editions.PreviewStatus.AUTOMATIC_INSTALL; | |||
import static org.sonarqube.ws.Editions.PreviewStatus.MANUAL_INSTALL; | |||
import static org.sonarqube.ws.Editions.PreviewStatus.NO_INSTALL; | |||
public class PreviewAction implements EditionsWsAction { | |||
private static final String PARAM_LICENSE = "license"; | |||
@@ -87,8 +87,8 @@ public class PreviewAction implements EditionsWsAction { | |||
WsUtils.writeProtobuf(buildResponse(nextState), request, response); | |||
} | |||
private static WsEditions.PreviewResponse buildResponse(NextState nextState) { | |||
return WsEditions.PreviewResponse.newBuilder() | |||
private static Editions.PreviewResponse buildResponse(NextState nextState) { | |||
return Editions.PreviewResponse.newBuilder() | |||
.setNextEditionKey(nextState.getPendingEditionKey().orElse("")) | |||
.setPreviewStatus(nextState.getPreviewStatus()) | |||
.build(); | |||
@@ -108,9 +108,9 @@ public class PreviewAction implements EditionsWsAction { | |||
private static final class NextState { | |||
private final String pendingEditionKey; | |||
private final WsEditions.PreviewStatus previewStatus; | |||
private final Editions.PreviewStatus previewStatus; | |||
private NextState(@Nullable String pendingEditionKey, WsEditions.PreviewStatus previewStatus) { | |||
private NextState(@Nullable String pendingEditionKey, Editions.PreviewStatus previewStatus) { | |||
this.pendingEditionKey = pendingEditionKey; | |||
this.previewStatus = previewStatus; | |||
} | |||
@@ -119,7 +119,7 @@ public class PreviewAction implements EditionsWsAction { | |||
return ofNullable(pendingEditionKey); | |||
} | |||
WsEditions.PreviewStatus getPreviewStatus() { | |||
Editions.PreviewStatus getPreviewStatus() { | |||
return previewStatus; | |||
} | |||
} |
@@ -25,7 +25,7 @@ import org.sonar.api.server.ws.WebService; | |||
import org.sonar.server.edition.EditionManagementState; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonar.server.ws.WsUtils; | |||
import org.sonarqube.ws.WsEditions; | |||
import org.sonarqube.ws.Editions; | |||
public class StatusAction implements EditionsWsAction { | |||
private final UserSession userSession; | |||
@@ -52,10 +52,10 @@ public class StatusAction implements EditionsWsAction { | |||
.checkLoggedIn() | |||
.checkIsSystemAdministrator(); | |||
WsEditions.StatusResponse.Builder responseBuilder = WsEditions.StatusResponse.newBuilder() | |||
Editions.StatusResponse.Builder responseBuilder = Editions.StatusResponse.newBuilder() | |||
.setCurrentEditionKey(editionManagementState.getCurrentEditionKey().orElse("")) | |||
.setNextEditionKey(editionManagementState.getPendingEditionKey().orElse("")) | |||
.setInstallationStatus(WsEditions.InstallationStatus.valueOf(editionManagementState.getPendingInstallationStatus().name())); | |||
.setInstallationStatus(Editions.InstallationStatus.valueOf(editionManagementState.getPendingInstallationStatus().name())); | |||
editionManagementState.getInstallErrorMessage().ifPresent(responseBuilder::setInstallError); | |||
WsUtils.writeProtobuf(responseBuilder.build(), request, response); |
@@ -51,8 +51,8 @@ import org.sonar.server.component.ComponentFinder; | |||
import org.sonar.server.exceptions.NotFoundException; | |||
import org.sonar.server.measure.ws.MetricDtoWithBestValue.MetricDtoToMetricDtoWithBestValueFunction; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsMeasures; | |||
import org.sonarqube.ws.WsMeasures.ComponentWsResponse; | |||
import org.sonarqube.ws.Measures; | |||
import org.sonarqube.ws.Measures.ComponentWsResponse; | |||
import org.sonarqube.ws.client.measure.ComponentWsRequest; | |||
import static com.google.common.base.Preconditions.checkArgument; | |||
@@ -146,7 +146,7 @@ public class ComponentAction implements MeasuresWsAction { | |||
checkPermissions(component); | |||
SnapshotDto analysis = dbClient.snapshotDao().selectLastAnalysisByRootComponentUuid(dbSession, component.projectUuid()).orElse(null); | |||
List<MetricDto> metrics = searchMetrics(dbSession, request); | |||
List<WsMeasures.Period> periods = snapshotToWsPeriods(analysis); | |||
List<Measures.Period> periods = snapshotToWsPeriods(analysis); | |||
List<MeasureDto> measures = searchMeasures(dbSession, component, analysis, metrics, developerId); | |||
return buildResponse(request, component, refComponent, measures, metrics, periods); | |||
@@ -181,7 +181,7 @@ public class ComponentAction implements MeasuresWsAction { | |||
} | |||
private static ComponentWsResponse buildResponse(ComponentWsRequest request, ComponentDto component, Optional<ComponentDto> refComponent, List<MeasureDto> measures, | |||
List<MetricDto> metrics, List<WsMeasures.Period> periods) { | |||
List<MetricDto> metrics, List<Measures.Period> periods) { | |||
ComponentWsResponse.Builder response = ComponentWsResponse.newBuilder(); | |||
Map<Integer, MetricDto> metricsById = Maps.uniqueIndex(metrics, MetricDto::getId); | |||
Map<MetricDto, MeasureDto> measuresByMetric = new HashMap<>(); |
@@ -24,8 +24,8 @@ import org.sonar.core.util.Protobuf; | |||
import org.sonar.db.component.ComponentDto; | |||
import org.sonar.db.measure.MeasureDto; | |||
import org.sonar.db.metric.MetricDto; | |||
import org.sonarqube.ws.WsMeasures; | |||
import org.sonarqube.ws.WsMeasures.Component; | |||
import org.sonarqube.ws.Measures; | |||
import org.sonarqube.ws.Measures.Component; | |||
class ComponentDtoToWsComponent { | |||
private ComponentDtoToWsComponent() { | |||
@@ -42,7 +42,7 @@ class ComponentDtoToWsComponent { | |||
wsComponent.setRefKey(referenceComponent.getDbKey()); | |||
} | |||
WsMeasures.Measure.Builder measureBuilder = WsMeasures.Measure.newBuilder(); | |||
Measures.Measure.Builder measureBuilder = Measures.Measure.newBuilder(); | |||
for (Map.Entry<MetricDto, MeasureDto> entry : measuresByMetric.entrySet()) { | |||
MeasureDtoToWsMeasure.updateMeasureBuilder(measureBuilder, entry.getKey(), entry.getValue()); | |||
wsComponent.addMeasures(measureBuilder); |
@@ -38,8 +38,8 @@ import org.sonar.api.utils.Paging; | |||
import org.sonar.db.component.ComponentDto; | |||
import org.sonar.db.component.ComponentTreeQuery.Strategy; | |||
import org.sonar.db.metric.MetricDto; | |||
import org.sonarqube.ws.WsMeasures; | |||
import org.sonarqube.ws.WsMeasures.ComponentTreeWsResponse; | |||
import org.sonarqube.ws.Measures; | |||
import org.sonarqube.ws.Measures.ComponentTreeWsResponse; | |||
import org.sonarqube.ws.client.measure.ComponentTreeWsRequest; | |||
import static com.google.common.base.Preconditions.checkArgument; | |||
@@ -256,7 +256,7 @@ public class ComponentTreeAction implements MeasuresWsAction { | |||
} | |||
if (areMetricsInResponse(request)) { | |||
WsMeasures.Metrics.Builder metricsBuilder = response.getMetricsBuilder(); | |||
Measures.Metrics.Builder metricsBuilder = response.getMetricsBuilder(); | |||
for (MetricDto metricDto : data.getMetrics()) { | |||
metricsBuilder.addMetrics(metricDtoToWsMetric(metricDto)); | |||
} | |||
@@ -326,15 +326,15 @@ public class ComponentTreeAction implements MeasuresWsAction { | |||
return componentTreeWsRequest; | |||
} | |||
private static WsMeasures.Component.Builder toWsComponent(ComponentDto component, Map<MetricDto, ComponentTreeData.Measure> measures, | |||
Map<String, ComponentDto> referenceComponentsByUuid) { | |||
WsMeasures.Component.Builder wsComponent = componentDtoToWsComponent(component); | |||
private static Measures.Component.Builder toWsComponent(ComponentDto component, Map<MetricDto, ComponentTreeData.Measure> measures, | |||
Map<String, ComponentDto> referenceComponentsByUuid) { | |||
Measures.Component.Builder wsComponent = componentDtoToWsComponent(component); | |||
ComponentDto referenceComponent = referenceComponentsByUuid.get(component.getCopyResourceUuid()); | |||
if (referenceComponent != null) { | |||
wsComponent.setRefId(referenceComponent.uuid()); | |||
wsComponent.setRefKey(referenceComponent.getDbKey()); | |||
} | |||
WsMeasures.Measure.Builder measureBuilder = WsMeasures.Measure.newBuilder(); | |||
Measures.Measure.Builder measureBuilder = Measures.Measure.newBuilder(); | |||
for (Map.Entry<MetricDto, ComponentTreeData.Measure> entry : measures.entrySet()) { | |||
ComponentTreeData.Measure measure = entry.getValue(); | |||
updateMeasureBuilder(measureBuilder, entry.getKey(), measure.getValue(), measure.getData(), measure.getVariation()); |
@@ -27,7 +27,7 @@ import javax.annotation.Nullable; | |||
import org.sonar.db.component.ComponentDto; | |||
import org.sonar.db.measure.MeasureDto; | |||
import org.sonar.db.metric.MetricDto; | |||
import org.sonarqube.ws.WsMeasures; | |||
import org.sonarqube.ws.Measures; | |||
import static java.lang.Double.NaN; | |||
import static java.lang.Double.isNaN; | |||
@@ -39,7 +39,7 @@ class ComponentTreeData { | |||
private final int componentCount; | |||
private final Map<String, ComponentDto> referenceComponentsByUuid; | |||
private final List<MetricDto> metrics; | |||
private final List<WsMeasures.Period> periods; | |||
private final List<Measures.Period> periods; | |||
private final Table<String, MetricDto, Measure> measuresByComponentUuidAndMetric; | |||
private ComponentTreeData(Builder builder) { | |||
@@ -77,7 +77,7 @@ class ComponentTreeData { | |||
} | |||
@CheckForNull | |||
List<WsMeasures.Period> getPeriods() { | |||
List<Measures.Period> getPeriods() { | |||
return periods; | |||
} | |||
@@ -96,7 +96,7 @@ class ComponentTreeData { | |||
private Map<String, ComponentDto> referenceComponentsByUuid; | |||
private int componentCount; | |||
private List<MetricDto> metrics; | |||
private List<WsMeasures.Period> periods; | |||
private List<Measures.Period> periods; | |||
private Table<String, MetricDto, Measure> measuresByComponentUuidAndMetric; | |||
private Builder() { | |||
@@ -123,7 +123,7 @@ class ComponentTreeData { | |||
return this; | |||
} | |||
public Builder setPeriods(List<WsMeasures.Period> periods) { | |||
public Builder setPeriods(List<Measures.Period> periods) { | |||
this.periods = periods; | |||
return this; | |||
} |
@@ -22,8 +22,8 @@ package org.sonar.server.measure.ws; | |||
import javax.annotation.Nullable; | |||
import org.sonar.db.measure.MeasureDto; | |||
import org.sonar.db.metric.MetricDto; | |||
import org.sonarqube.ws.WsMeasures; | |||
import org.sonarqube.ws.WsMeasures.Measure; | |||
import org.sonarqube.ws.Measures; | |||
import org.sonarqube.ws.Measures.Measure; | |||
import static org.sonar.server.measure.ws.MeasureValueFormatter.formatMeasureValue; | |||
import static org.sonar.server.measure.ws.MeasureValueFormatter.formatNumericalValue; | |||
@@ -47,7 +47,7 @@ class MeasureDtoToWsMeasure { | |||
measureBuilder.setValue(formatMeasureValue(doubleValue, stringValue, metric)); | |||
} | |||
WsMeasures.PeriodValue.Builder periodBuilder = WsMeasures.PeriodValue.newBuilder(); | |||
Measures.PeriodValue.Builder periodBuilder = Measures.PeriodValue.newBuilder(); | |||
if (Double.isNaN(variation)) { | |||
return; | |||
} |
@@ -37,8 +37,8 @@ import org.sonar.db.component.ComponentDto; | |||
import org.sonar.db.measure.MeasureDto; | |||
import org.sonar.db.metric.MetricDto; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsMeasures.Measure; | |||
import org.sonarqube.ws.WsMeasures.SearchWsResponse; | |||
import org.sonarqube.ws.Measures.Measure; | |||
import org.sonarqube.ws.Measures.SearchWsResponse; | |||
import org.sonarqube.ws.client.measure.SearchRequest; | |||
import static com.google.common.base.Preconditions.checkArgument; |
@@ -44,7 +44,7 @@ import org.sonar.db.metric.MetricDto; | |||
import org.sonar.server.component.ComponentFinder; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonar.server.ws.KeyExamples; | |||
import org.sonarqube.ws.WsMeasures.SearchHistoryResponse; | |||
import org.sonarqube.ws.Measures.SearchHistoryResponse; | |||
import org.sonarqube.ws.client.measure.SearchHistoryRequest; | |||
import static java.lang.String.format; |
@@ -29,9 +29,9 @@ import org.sonar.core.util.stream.MoreCollectors; | |||
import org.sonar.db.component.SnapshotDto; | |||
import org.sonar.db.measure.MeasureDto; | |||
import org.sonar.db.metric.MetricDto; | |||
import org.sonarqube.ws.WsMeasures.SearchHistoryResponse; | |||
import org.sonarqube.ws.WsMeasures.SearchHistoryResponse.HistoryMeasure; | |||
import org.sonarqube.ws.WsMeasures.SearchHistoryResponse.HistoryValue; | |||
import org.sonarqube.ws.Measures.SearchHistoryResponse; | |||
import org.sonarqube.ws.Measures.SearchHistoryResponse.HistoryMeasure; | |||
import org.sonarqube.ws.Measures.SearchHistoryResponse.HistoryValue; | |||
import static org.sonar.api.utils.DateUtils.formatDateTime; | |||
import static org.sonar.server.measure.ws.MeasureValueFormatter.formatMeasureValue; |
@@ -23,7 +23,7 @@ import java.util.ArrayList; | |||
import java.util.List; | |||
import javax.annotation.Nullable; | |||
import org.sonar.db.component.SnapshotDto; | |||
import org.sonarqube.ws.WsMeasures; | |||
import org.sonarqube.ws.Measures; | |||
import static java.util.Collections.emptyList; | |||
import static org.sonar.api.utils.DateUtils.formatDateTime; | |||
@@ -33,12 +33,12 @@ class SnapshotDtoToWsPeriods { | |||
// prevent instantiation | |||
} | |||
static List<WsMeasures.Period> snapshotToWsPeriods(@Nullable SnapshotDto snapshot) { | |||
static List<Measures.Period> snapshotToWsPeriods(@Nullable SnapshotDto snapshot) { | |||
if (snapshot == null) { | |||
return emptyList(); | |||
} | |||
List<WsMeasures.Period> periods = new ArrayList<>(); | |||
List<Measures.Period> periods = new ArrayList<>(); | |||
if (snapshot.getPeriodDate() != null) { | |||
periods.add(snapshotDtoToWsPeriod(snapshot)); | |||
} | |||
@@ -46,8 +46,8 @@ class SnapshotDtoToWsPeriods { | |||
return periods; | |||
} | |||
private static WsMeasures.Period snapshotDtoToWsPeriod(SnapshotDto snapshot) { | |||
WsMeasures.Period.Builder period = WsMeasures.Period.newBuilder(); | |||
private static Measures.Period snapshotDtoToWsPeriod(SnapshotDto snapshot) { | |||
Measures.Period.Builder period = Measures.Period.newBuilder(); | |||
period.setIndex(1); | |||
String periodMode = snapshot.getPeriodMode(); | |||
if (periodMode != null) { |
@@ -40,8 +40,8 @@ import org.sonar.db.permission.PermissionQuery; | |||
import org.sonar.db.user.GroupDto; | |||
import org.sonar.server.permission.ProjectId; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsPermissions.Group; | |||
import org.sonarqube.ws.WsPermissions.WsGroupsResponse; | |||
import org.sonarqube.ws.Permissions.Group; | |||
import org.sonarqube.ws.Permissions.WsGroupsResponse; | |||
import static java.util.Collections.emptyList; | |||
import static org.sonar.core.util.Protobuf.setNullable; |
@@ -30,13 +30,13 @@ import org.sonar.db.organization.OrganizationDto; | |||
import org.sonar.db.permission.OrganizationPermission; | |||
import org.sonar.db.permission.PermissionQuery; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsPermissions.Permission; | |||
import org.sonarqube.ws.WsPermissions.WsSearchGlobalPermissionsResponse; | |||
import org.sonarqube.ws.Permissions.Permission; | |||
import org.sonarqube.ws.Permissions.WsSearchGlobalPermissionsResponse; | |||
import static org.sonar.server.permission.PermissionPrivilegeChecker.checkGlobalAdmin; | |||
import static org.sonar.server.permission.ws.PermissionsWsParametersBuilder.createOrganizationParameter; | |||
import static org.sonar.server.ws.WsUtils.writeProtobuf; | |||
import static org.sonarqube.ws.WsPermissions.Permission.newBuilder; | |||
import static org.sonarqube.ws.Permissions.Permission.newBuilder; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_ORGANIZATION; | |||
public class SearchGlobalPermissionsAction implements PermissionsWsAction { |
@@ -36,9 +36,9 @@ import org.sonar.server.permission.PermissionPrivilegeChecker; | |||
import org.sonar.server.permission.ProjectId; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.Common; | |||
import org.sonarqube.ws.WsPermissions.Permission; | |||
import org.sonarqube.ws.WsPermissions.SearchProjectPermissionsWsResponse; | |||
import org.sonarqube.ws.WsPermissions.SearchProjectPermissionsWsResponse.Project; | |||
import org.sonarqube.ws.Permissions.Permission; | |||
import org.sonarqube.ws.Permissions.SearchProjectPermissionsWsResponse; | |||
import org.sonarqube.ws.Permissions.SearchProjectPermissionsWsResponse.Project; | |||
import org.sonarqube.ws.client.permission.SearchProjectPermissionsWsRequest; | |||
import static org.sonar.server.permission.ws.PermissionRequestValidator.validateQualifier; |
@@ -39,8 +39,8 @@ import org.sonar.db.user.UserDto; | |||
import org.sonar.server.issue.ws.AvatarResolver; | |||
import org.sonar.server.permission.ProjectId; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsPermissions; | |||
import org.sonarqube.ws.WsPermissions.UsersWsResponse; | |||
import org.sonarqube.ws.Permissions; | |||
import org.sonarqube.ws.Permissions.UsersWsResponse; | |||
import static com.google.common.base.Strings.emptyToNull; | |||
import static java.util.Collections.emptyList; | |||
@@ -146,7 +146,7 @@ public class UsersAction implements PermissionsWsAction { | |||
UsersWsResponse.Builder response = UsersWsResponse.newBuilder(); | |||
users.forEach(user -> { | |||
WsPermissions.User.Builder userResponse = response.addUsersBuilder() | |||
Permissions.User.Builder userResponse = response.addUsersBuilder() | |||
.setLogin(user.getLogin()) | |||
.addAllPermissions(permissionsByUserId.get(user.getId())); | |||
setNullable(user.getEmail(), userResponse::setEmail); |
@@ -32,8 +32,8 @@ import org.sonar.db.permission.template.PermissionTemplateDto; | |||
import org.sonar.server.permission.ws.PermissionWsSupport; | |||
import org.sonar.server.permission.ws.PermissionsWsAction; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsPermissions.CreateTemplateWsResponse; | |||
import org.sonarqube.ws.WsPermissions.PermissionTemplate; | |||
import org.sonarqube.ws.Permissions.CreateTemplateWsResponse; | |||
import org.sonarqube.ws.Permissions.PermissionTemplate; | |||
import org.sonarqube.ws.client.permission.CreateTemplateWsRequest; | |||
import static java.lang.String.format; |
@@ -23,7 +23,7 @@ import com.google.common.base.Function; | |||
import javax.annotation.Nonnull; | |||
import org.sonar.api.utils.DateUtils; | |||
import org.sonar.db.permission.template.PermissionTemplateDto; | |||
import org.sonarqube.ws.WsPermissions.PermissionTemplate; | |||
import org.sonarqube.ws.Permissions.PermissionTemplate; | |||
import static org.sonar.core.util.Protobuf.setNullable; | |||
@@ -34,11 +34,11 @@ import org.sonar.db.permission.template.PermissionTemplateDto; | |||
import org.sonar.server.permission.ws.PermissionWsSupport; | |||
import org.sonar.server.permission.ws.PermissionsWsAction; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsPermissions; | |||
import org.sonarqube.ws.WsPermissions.Permission; | |||
import org.sonarqube.ws.WsPermissions.PermissionTemplate; | |||
import org.sonarqube.ws.WsPermissions.SearchTemplatesWsResponse; | |||
import org.sonarqube.ws.WsPermissions.SearchTemplatesWsResponse.TemplateIdQualifier; | |||
import org.sonarqube.ws.Permissions; | |||
import org.sonarqube.ws.Permissions.Permission; | |||
import org.sonarqube.ws.Permissions.PermissionTemplate; | |||
import org.sonarqube.ws.Permissions.SearchTemplatesWsResponse; | |||
import org.sonarqube.ws.Permissions.SearchTemplatesWsResponse.TemplateIdQualifier; | |||
import org.sonarqube.ws.client.permission.SearchTemplatesWsRequest; | |||
import static org.sonar.api.utils.DateUtils.formatDateTime; | |||
@@ -109,7 +109,7 @@ public class SearchTemplatesAction implements PermissionsWsAction { | |||
.setTemplateId(viewDefaultTemplate))); | |||
} | |||
private static void buildTemplatesResponse(WsPermissions.SearchTemplatesWsResponse.Builder response, SearchTemplatesData data) { | |||
private static void buildTemplatesResponse(Permissions.SearchTemplatesWsResponse.Builder response, SearchTemplatesData data) { | |||
Permission.Builder permissionResponse = Permission.newBuilder(); | |||
PermissionTemplate.Builder templateBuilder = PermissionTemplate.newBuilder(); | |||
@@ -135,7 +135,7 @@ public class SearchTemplatesAction implements PermissionsWsAction { | |||
} | |||
} | |||
private WsPermissions.SearchTemplatesWsResponse buildResponse(SearchTemplatesData data) { | |||
private Permissions.SearchTemplatesWsResponse buildResponse(SearchTemplatesData data) { | |||
SearchTemplatesWsResponse.Builder response = SearchTemplatesWsResponse.newBuilder(); | |||
buildTemplatesResponse(response, data); |
@@ -38,7 +38,7 @@ import org.sonar.db.user.GroupDto; | |||
import org.sonar.server.permission.ws.PermissionWsSupport; | |||
import org.sonar.server.permission.ws.PermissionsWsAction; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsPermissions; | |||
import org.sonarqube.ws.Permissions; | |||
import static org.sonar.api.server.ws.WebService.Param.PAGE; | |||
import static org.sonar.api.server.ws.WebService.Param.PAGE_SIZE; | |||
@@ -99,7 +99,7 @@ public class TemplateGroupsAction implements PermissionsWsAction { | |||
Paging paging = Paging.forPageIndex(wsRequest.mandatoryParamAsInt(PAGE)).withPageSize(wsRequest.mandatoryParamAsInt(PAGE_SIZE)).andTotal(total); | |||
List<GroupDto> groups = findGroups(dbSession, query, template); | |||
List<PermissionTemplateGroupDto> groupPermissions = findGroupPermissions(dbSession, groups, template); | |||
WsPermissions.WsGroupsResponse groupsResponse = buildResponse(groups, groupPermissions, paging); | |||
Permissions.WsGroupsResponse groupsResponse = buildResponse(groups, groupPermissions, paging); | |||
writeProtobuf(groupsResponse, wsRequest, wsResponse); | |||
} | |||
} | |||
@@ -119,13 +119,13 @@ public class TemplateGroupsAction implements PermissionsWsAction { | |||
return permissionQuery.build(); | |||
} | |||
private static WsPermissions.WsGroupsResponse buildResponse(List<GroupDto> groups, List<PermissionTemplateGroupDto> groupPermissions, Paging paging) { | |||
private static Permissions.WsGroupsResponse buildResponse(List<GroupDto> groups, List<PermissionTemplateGroupDto> groupPermissions, Paging paging) { | |||
Multimap<Integer, String> permissionsByGroupId = TreeMultimap.create(); | |||
groupPermissions.forEach(groupPermission -> permissionsByGroupId.put(groupPermission.getGroupId(), groupPermission.getPermission())); | |||
WsPermissions.WsGroupsResponse.Builder response = WsPermissions.WsGroupsResponse.newBuilder(); | |||
Permissions.WsGroupsResponse.Builder response = Permissions.WsGroupsResponse.newBuilder(); | |||
groups.forEach(group -> { | |||
WsPermissions.Group.Builder wsGroup = response.addGroupsBuilder() | |||
Permissions.Group.Builder wsGroup = response.addGroupsBuilder() | |||
.setName(group.getName()); | |||
if (group.getId() != 0) { | |||
wsGroup.setId(String.valueOf(group.getId())); |
@@ -39,8 +39,8 @@ import org.sonar.server.issue.ws.AvatarResolver; | |||
import org.sonar.server.permission.ws.PermissionWsSupport; | |||
import org.sonar.server.permission.ws.PermissionsWsAction; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsPermissions; | |||
import org.sonarqube.ws.WsPermissions.UsersWsResponse; | |||
import org.sonarqube.ws.Permissions; | |||
import org.sonarqube.ws.Permissions.UsersWsResponse; | |||
import static com.google.common.base.Strings.emptyToNull; | |||
import static org.sonar.api.server.ws.WebService.Param.PAGE; | |||
@@ -106,7 +106,7 @@ public class TemplateUsersAction implements PermissionsWsAction { | |||
List<UserDto> users = findUsers(dbSession, query, template); | |||
List<PermissionTemplateUserDto> permissionTemplateUsers = dbClient.permissionTemplateDao().selectUserPermissionsByTemplateIdAndUserLogins(dbSession, template.getId(), | |||
users.stream().map(UserDto::getLogin).collect(Collectors.toList())); | |||
WsPermissions.UsersWsResponse templateUsersResponse = buildResponse(users, permissionTemplateUsers, paging); | |||
Permissions.UsersWsResponse templateUsersResponse = buildResponse(users, permissionTemplateUsers, paging); | |||
writeProtobuf(templateUsersResponse, wsRequest, wsResponse); | |||
} | |||
} | |||
@@ -127,13 +127,13 @@ public class TemplateUsersAction implements PermissionsWsAction { | |||
return query.build(); | |||
} | |||
private WsPermissions.UsersWsResponse buildResponse(List<UserDto> users, List<PermissionTemplateUserDto> permissionTemplateUsers, Paging paging) { | |||
private Permissions.UsersWsResponse buildResponse(List<UserDto> users, List<PermissionTemplateUserDto> permissionTemplateUsers, Paging paging) { | |||
Multimap<Integer, String> permissionsByUserId = TreeMultimap.create(); | |||
permissionTemplateUsers.forEach(userPermission -> permissionsByUserId.put(userPermission.getUserId(), userPermission.getPermission())); | |||
UsersWsResponse.Builder responseBuilder = UsersWsResponse.newBuilder(); | |||
users.forEach(user -> { | |||
WsPermissions.User.Builder userResponse = responseBuilder.addUsersBuilder() | |||
Permissions.User.Builder userResponse = responseBuilder.addUsersBuilder() | |||
.setLogin(user.getLogin()) | |||
.addAllPermissions(permissionsByUserId.get(user.getId())); | |||
setNullable(user.getEmail(), userResponse::setEmail); |
@@ -31,8 +31,8 @@ import org.sonar.db.permission.template.PermissionTemplateDto; | |||
import org.sonar.server.permission.ws.PermissionWsSupport; | |||
import org.sonar.server.permission.ws.PermissionsWsAction; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsPermissions.PermissionTemplate; | |||
import org.sonarqube.ws.WsPermissions.UpdateTemplateWsResponse; | |||
import org.sonarqube.ws.Permissions.PermissionTemplate; | |||
import org.sonarqube.ws.Permissions.UpdateTemplateWsResponse; | |||
import org.sonarqube.ws.client.permission.UpdateTemplateWsRequest; | |||
import static com.google.common.base.MoreObjects.firstNonNull; |
@@ -27,7 +27,7 @@ import org.sonar.process.cluster.health.NodeHealth; | |||
import org.sonar.server.health.ClusterHealth; | |||
import org.sonar.server.health.Health; | |||
import org.sonar.server.health.HealthChecker; | |||
import org.sonarqube.ws.WsSystem; | |||
import org.sonarqube.ws.System; | |||
import static org.sonar.api.utils.DateUtils.formatDateTime; | |||
@@ -58,31 +58,31 @@ public class HealthActionSupport { | |||
.setHandler(handler); | |||
} | |||
WsSystem.HealthResponse checkNodeHealth() { | |||
System.HealthResponse checkNodeHealth() { | |||
Health check = healthChecker.checkNode(); | |||
WsSystem.HealthResponse.Builder responseBuilder = WsSystem.HealthResponse.newBuilder() | |||
.setHealth(WsSystem.Health.valueOf(check.getStatus().name())); | |||
WsSystem.Cause.Builder causeBuilder = WsSystem.Cause.newBuilder(); | |||
System.HealthResponse.Builder responseBuilder = System.HealthResponse.newBuilder() | |||
.setHealth(System.Health.valueOf(check.getStatus().name())); | |||
System.Cause.Builder causeBuilder = System.Cause.newBuilder(); | |||
check.getCauses().forEach(str -> responseBuilder.addCauses(causeBuilder.clear().setMessage(str).build())); | |||
return responseBuilder.build(); | |||
} | |||
WsSystem.HealthResponse checkClusterHealth() { | |||
System.HealthResponse checkClusterHealth() { | |||
ClusterHealth check = healthChecker.checkCluster(); | |||
return toResponse(check); | |||
} | |||
private static WsSystem.HealthResponse toResponse(ClusterHealth check) { | |||
WsSystem.HealthResponse.Builder responseBuilder = WsSystem.HealthResponse.newBuilder(); | |||
WsSystem.Node.Builder nodeBuilder = WsSystem.Node.newBuilder(); | |||
WsSystem.Cause.Builder causeBuilder = WsSystem.Cause.newBuilder(); | |||
private static System.HealthResponse toResponse(ClusterHealth check) { | |||
System.HealthResponse.Builder responseBuilder = System.HealthResponse.newBuilder(); | |||
System.Node.Builder nodeBuilder = System.Node.newBuilder(); | |||
System.Cause.Builder causeBuilder = System.Cause.newBuilder(); | |||
Health health = check.getHealth(); | |||
responseBuilder.setHealth(WsSystem.Health.valueOf(health.getStatus().name())); | |||
responseBuilder.setHealth(System.Health.valueOf(health.getStatus().name())); | |||
health.getCauses().forEach(str -> responseBuilder.addCauses(toCause(str, causeBuilder))); | |||
WsSystem.Nodes.Builder nodesBuilder = WsSystem.Nodes.newBuilder(); | |||
System.Nodes.Builder nodesBuilder = System.Nodes.newBuilder(); | |||
check.getNodes().stream() | |||
.sorted(NODE_HEALTH_COMPARATOR) | |||
.map(node -> toNode(node, nodeBuilder, causeBuilder)) | |||
@@ -92,13 +92,13 @@ public class HealthActionSupport { | |||
return responseBuilder.build(); | |||
} | |||
private static WsSystem.Node toNode(NodeHealth nodeHealth, WsSystem.Node.Builder nodeBuilder, WsSystem.Cause.Builder causeBuilder) { | |||
private static System.Node toNode(NodeHealth nodeHealth, System.Node.Builder nodeBuilder, System.Cause.Builder causeBuilder) { | |||
nodeBuilder.clear(); | |||
nodeBuilder.setHealth(WsSystem.Health.valueOf(nodeHealth.getStatus().name())); | |||
nodeBuilder.setHealth(System.Health.valueOf(nodeHealth.getStatus().name())); | |||
nodeHealth.getCauses().forEach(str -> nodeBuilder.addCauses(toCause(str, causeBuilder))); | |||
NodeDetails details = nodeHealth.getDetails(); | |||
nodeBuilder | |||
.setType(WsSystem.NodeType.valueOf(details.getType().name())) | |||
.setType(System.NodeType.valueOf(details.getType().name())) | |||
.setName(details.getName()) | |||
.setHost(details.getHost()) | |||
.setPort(details.getPort()) | |||
@@ -106,7 +106,7 @@ public class HealthActionSupport { | |||
return nodeBuilder.build(); | |||
} | |||
private static WsSystem.Cause toCause(String str, WsSystem.Cause.Builder causeBuilder) { | |||
private static System.Cause toCause(String str, System.Cause.Builder causeBuilder) { | |||
return causeBuilder.clear().setMessage(str).build(); | |||
} | |||
} |
@@ -29,7 +29,7 @@ import org.sonar.server.app.RestartFlagHolder; | |||
import org.sonar.server.platform.Platform; | |||
import org.sonar.server.platform.db.migration.DatabaseMigrationState; | |||
import org.sonar.server.ws.WsUtils; | |||
import org.sonarqube.ws.WsSystem; | |||
import org.sonarqube.ws.System; | |||
/** | |||
* Implementation of the {@code status} action for the System WebService. | |||
@@ -73,22 +73,22 @@ public class StatusAction implements SystemWsAction { | |||
@Override | |||
public void handle(Request request, Response response) throws Exception { | |||
WsSystem.StatusResponse.Builder protobuf = WsSystem.StatusResponse.newBuilder(); | |||
System.StatusResponse.Builder protobuf = System.StatusResponse.newBuilder(); | |||
Protobuf.setNullable(server.getId(), protobuf::setId); | |||
Protobuf.setNullable(server.getVersion(), protobuf::setVersion); | |||
protobuf.setStatus(computeStatus()); | |||
WsUtils.writeProtobuf(protobuf.build(), request, response); | |||
} | |||
private WsSystem.Status computeStatus() { | |||
private System.Status computeStatus() { | |||
Platform.Status platformStatus = platform.status(); | |||
switch (platformStatus) { | |||
case BOOTING: | |||
// can not happen since there can not even exist an instance of the current class | |||
// unless the Platform's status is UP/SAFEMODE/STARTING | |||
return WsSystem.Status.DOWN; | |||
return System.Status.DOWN; | |||
case UP: | |||
return restartFlagHolder.isRestarting() ? WsSystem.Status.RESTARTING : WsSystem.Status.UP; | |||
return restartFlagHolder.isRestarting() ? System.Status.RESTARTING : System.Status.UP; | |||
case STARTING: | |||
return computeStatusInStarting(); | |||
case SAFEMODE: | |||
@@ -98,34 +98,34 @@ public class StatusAction implements SystemWsAction { | |||
} | |||
} | |||
private WsSystem.Status computeStatusInStarting() { | |||
private System.Status computeStatusInStarting() { | |||
DatabaseMigrationState.Status databaseMigrationStatus = migrationState.getStatus(); | |||
switch (databaseMigrationStatus) { | |||
case NONE: | |||
return WsSystem.Status.STARTING; | |||
return System.Status.STARTING; | |||
case RUNNING: | |||
return WsSystem.Status.DB_MIGRATION_RUNNING; | |||
return System.Status.DB_MIGRATION_RUNNING; | |||
case FAILED: | |||
return WsSystem.Status.DOWN; | |||
return System.Status.DOWN; | |||
case SUCCEEDED: | |||
// DB migration can be finished while we haven't yet finished SQ's initialization | |||
return WsSystem.Status.STARTING; | |||
return System.Status.STARTING; | |||
default: | |||
throw new IllegalArgumentException("Unsupported DatabaseMigration.Status " + databaseMigrationStatus); | |||
} | |||
} | |||
private WsSystem.Status computeStatusInSafemode() { | |||
private System.Status computeStatusInSafemode() { | |||
DatabaseMigrationState.Status databaseMigrationStatus = migrationState.getStatus(); | |||
switch (databaseMigrationStatus) { | |||
case NONE: | |||
return WsSystem.Status.DB_MIGRATION_NEEDED; | |||
return System.Status.DB_MIGRATION_NEEDED; | |||
case RUNNING: | |||
return WsSystem.Status.DB_MIGRATION_RUNNING; | |||
return System.Status.DB_MIGRATION_RUNNING; | |||
case FAILED: | |||
return WsSystem.Status.DOWN; | |||
return System.Status.DOWN; | |||
case SUCCEEDED: | |||
return WsSystem.Status.STARTING; | |||
return System.Status.STARTING; | |||
default: | |||
throw new IllegalArgumentException("Unsupported DatabaseMigration.Status " + databaseMigrationStatus); | |||
} |
@@ -35,7 +35,7 @@ import org.sonar.server.component.ComponentFinder; | |||
import org.sonar.server.component.ComponentFinder.ParamNames; | |||
import org.sonar.server.component.ComponentService; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsProjects.BulkUpdateKeyWsResponse; | |||
import org.sonarqube.ws.Projects.BulkUpdateKeyWsResponse; | |||
import org.sonarqube.ws.client.project.BulkUpdateKeyWsRequest; | |||
import static org.sonar.core.util.Uuids.UUID_EXAMPLE_01; |
@@ -30,7 +30,7 @@ import org.sonar.db.organization.OrganizationDto; | |||
import org.sonar.server.component.ComponentUpdater; | |||
import org.sonar.server.project.Visibility; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsProjects.CreateWsResponse; | |||
import org.sonarqube.ws.Projects.CreateWsResponse; | |||
import org.sonarqube.ws.client.project.CreateRequest; | |||
import static org.sonar.api.resources.Qualifiers.PROJECT; |
@@ -39,8 +39,8 @@ import org.sonar.db.component.ComponentQuery; | |||
import org.sonar.db.organization.OrganizationDto; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.Common.Paging; | |||
import org.sonarqube.ws.WsComponents.ProvisionedWsResponse; | |||
import org.sonarqube.ws.WsComponents.ProvisionedWsResponse.Component; | |||
import org.sonarqube.ws.Components.ProvisionedWsResponse; | |||
import org.sonarqube.ws.Components.ProvisionedWsResponse.Component; | |||
import static com.google.common.collect.Sets.newHashSet; | |||
import static java.util.Optional.ofNullable; |
@@ -39,7 +39,7 @@ import org.sonar.db.organization.OrganizationDto; | |||
import org.sonar.db.permission.OrganizationPermission; | |||
import org.sonar.server.project.Visibility; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsProjects.SearchWsResponse; | |||
import org.sonarqube.ws.Projects.SearchWsResponse; | |||
import org.sonarqube.ws.client.project.SearchWsRequest; | |||
import static com.google.common.base.Preconditions.checkArgument; | |||
@@ -56,8 +56,8 @@ import static org.sonar.server.project.Visibility.PUBLIC; | |||
import static org.sonar.server.ws.KeyExamples.KEY_PROJECT_EXAMPLE_001; | |||
import static org.sonar.server.ws.KeyExamples.KEY_PROJECT_EXAMPLE_002; | |||
import static org.sonar.server.ws.WsUtils.writeProtobuf; | |||
import static org.sonarqube.ws.WsProjects.SearchWsResponse.Component; | |||
import static org.sonarqube.ws.WsProjects.SearchWsResponse.newBuilder; | |||
import static org.sonarqube.ws.Projects.SearchWsResponse.Component; | |||
import static org.sonarqube.ws.Projects.SearchWsResponse.newBuilder; | |||
import static org.sonarqube.ws.client.project.ProjectsWsParameters.ACTION_SEARCH; | |||
import static org.sonarqube.ws.client.project.ProjectsWsParameters.MAX_PAGE_SIZE; | |||
import static org.sonarqube.ws.client.project.ProjectsWsParameters.PARAM_ANALYZED_BEFORE; |
@@ -30,9 +30,9 @@ import org.sonar.db.DbSession; | |||
import org.sonar.db.component.ComponentDto; | |||
import org.sonar.db.component.ComponentLinkDto; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsProjects.SearchMyProjectsWsResponse; | |||
import org.sonarqube.ws.WsProjects.SearchMyProjectsWsResponse.Link; | |||
import org.sonarqube.ws.WsProjects.SearchMyProjectsWsResponse.Project; | |||
import org.sonarqube.ws.Projects.SearchMyProjectsWsResponse; | |||
import org.sonarqube.ws.Projects.SearchMyProjectsWsResponse.Link; | |||
import org.sonarqube.ws.Projects.SearchMyProjectsWsResponse.Project; | |||
import org.sonarqube.ws.client.project.SearchMyProjectsRequest; | |||
import static com.google.common.base.Strings.emptyToNull; |
@@ -29,8 +29,8 @@ import org.sonar.db.component.ComponentDto; | |||
import org.sonar.db.component.ComponentLinkDto; | |||
import org.sonar.server.component.ComponentFinder; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsProjectLinks; | |||
import org.sonarqube.ws.WsProjectLinks.CreateWsResponse; | |||
import org.sonarqube.ws.ProjectLinks; | |||
import org.sonarqube.ws.ProjectLinks.CreateWsResponse; | |||
import org.sonarqube.ws.client.projectlinks.CreateWsRequest; | |||
import static org.sonar.core.util.Slug.slugify; | |||
@@ -119,7 +119,7 @@ public class CreateAction implements ProjectLinksWsAction { | |||
} | |||
private static CreateWsResponse buildResponse(ComponentLinkDto link) { | |||
return CreateWsResponse.newBuilder().setLink(WsProjectLinks.Link.newBuilder() | |||
return CreateWsResponse.newBuilder().setLink(ProjectLinks.Link.newBuilder() | |||
.setId(String.valueOf(link.getId())) | |||
.setName(link.getName()) | |||
.setType(link.getType()) |
@@ -31,8 +31,8 @@ import org.sonar.db.component.ComponentDto; | |||
import org.sonar.db.component.ComponentLinkDto; | |||
import org.sonar.server.component.ComponentFinder; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsProjectLinks.Link; | |||
import org.sonarqube.ws.WsProjectLinks.SearchWsResponse; | |||
import org.sonarqube.ws.ProjectLinks.Link; | |||
import org.sonarqube.ws.ProjectLinks.SearchWsResponse; | |||
import org.sonarqube.ws.client.projectlinks.SearchWsRequest; | |||
import static org.sonar.core.util.Protobuf.setNullable; |
@@ -25,7 +25,7 @@ import org.sonar.api.server.ws.Request; | |||
import org.sonar.api.server.ws.Response; | |||
import org.sonar.api.server.ws.WebService; | |||
import org.sonar.server.measure.index.ProjectMeasuresIndex; | |||
import org.sonarqube.ws.WsProjectTags; | |||
import org.sonarqube.ws.ProjectTags; | |||
import static org.sonar.api.server.ws.WebService.Param.PAGE_SIZE; | |||
import static org.sonar.api.server.ws.WebService.Param.TEXT_QUERY; | |||
@@ -52,12 +52,12 @@ public class SearchAction implements ProjectTagsWsAction { | |||
@Override | |||
public void handle(Request request, Response response) throws Exception { | |||
WsProjectTags.SearchResponse wsResponse = doHandle(request); | |||
ProjectTags.SearchResponse wsResponse = doHandle(request); | |||
writeProtobuf(wsResponse, request, response); | |||
} | |||
private WsProjectTags.SearchResponse doHandle(Request request) { | |||
private ProjectTags.SearchResponse doHandle(Request request) { | |||
List<String> tags = index.searchTags(request.param(TEXT_QUERY), request.mandatoryParamAsInt(PAGE_SIZE)); | |||
return WsProjectTags.SearchResponse.newBuilder().addAllTags(tags).build(); | |||
return ProjectTags.SearchResponse.newBuilder().addAllTags(tags).build(); | |||
} | |||
} |
@@ -30,13 +30,13 @@ import org.sonar.db.metric.MetricDto; | |||
import org.sonar.server.organization.DefaultOrganizationProvider; | |||
import org.sonar.db.permission.OrganizationPermission; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsQualityGates.AppWsResponse.Metric; | |||
import org.sonarqube.ws.Qualitygates.AppWsResponse.Metric; | |||
import static org.sonar.api.measures.CoreMetrics.ALERT_STATUS_KEY; | |||
import static org.sonar.api.measures.Metric.ValueType.RATING; | |||
import static org.sonar.server.qualitygate.ValidRatingMetrics.isCoreRatingMetric; | |||
import static org.sonar.server.ws.WsUtils.writeProtobuf; | |||
import static org.sonarqube.ws.WsQualityGates.AppWsResponse; | |||
import static org.sonarqube.ws.Qualitygates.AppWsResponse; | |||
public class AppAction implements QualityGatesWsAction { | |||
@@ -29,7 +29,7 @@ import org.sonar.db.qualitygate.QualityGateDto; | |||
import org.sonar.server.organization.DefaultOrganizationProvider; | |||
import org.sonar.server.qualitygate.QualityGateUpdater; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsQualityGates.CreateWsResponse; | |||
import org.sonarqube.ws.Qualitygates.CreateWsResponse; | |||
import static org.sonar.server.ws.WsUtils.writeProtobuf; | |||
import static org.sonarqube.ws.client.qualitygate.QualityGatesWsParameters.ACTION_CREATE; |
@@ -29,8 +29,7 @@ import org.sonar.db.qualitygate.QualityGateConditionDto; | |||
import org.sonar.server.organization.DefaultOrganizationProvider; | |||
import org.sonar.server.qualitygate.QualityGateConditionsUpdater; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsQualityGates.CreateConditionWsResponse; | |||
import org.sonarqube.ws.client.qualitygate.CreateConditionRequest; | |||
import org.sonarqube.ws.Qualitygates.CreateConditionWsResponse; | |||
import static org.sonar.core.util.Protobuf.setNullable; | |||
import static org.sonar.server.qualitygate.ws.QualityGatesWs.addConditionParams; | |||
@@ -80,40 +79,26 @@ public class CreateConditionAction implements QualityGatesWsAction { | |||
public void handle(Request request, Response response) { | |||
userSession.checkPermission(OrganizationPermission.ADMINISTER_QUALITY_GATES, defaultOrganizationProvider.get().getUuid()); | |||
int gateId = request.mandatoryParamAsInt(PARAM_GATE_ID); | |||
String metric = request.mandatoryParam(PARAM_METRIC); | |||
String operator = request.mandatoryParam(PARAM_OPERATOR); | |||
String warning = request.param(PARAM_WARNING); | |||
String error = request.param(PARAM_ERROR); | |||
Integer period = request.paramAsInt(PARAM_PERIOD); | |||
try (DbSession dbSession = dbClient.openSession(false)) { | |||
writeProtobuf(doHandle(toWsRequest(request), dbSession), request, response); | |||
QualityGateConditionDto condition = qualityGateConditionsUpdater.createCondition(dbSession, gateId, metric, operator, warning, error, period); | |||
CreateConditionWsResponse.Builder createConditionWsResponse = CreateConditionWsResponse.newBuilder() | |||
.setId(condition.getId()) | |||
.setMetric(condition.getMetricKey()) | |||
.setOp(condition.getOperator()); | |||
setNullable(condition.getWarningThreshold(), createConditionWsResponse::setWarning); | |||
setNullable(condition.getErrorThreshold(), createConditionWsResponse::setError); | |||
setNullable(condition.getPeriod(), createConditionWsResponse::setPeriod); | |||
writeProtobuf(createConditionWsResponse.build(), request, response); | |||
dbSession.commit(); | |||
} | |||
} | |||
private CreateConditionWsResponse doHandle(CreateConditionRequest request, DbSession dbSession) { | |||
QualityGateConditionDto condition = qualityGateConditionsUpdater.createCondition(dbSession, | |||
request.getQualityGateId(), | |||
request.getMetricKey(), | |||
request.getOperator(), | |||
request.getWarning(), | |||
request.getError(), | |||
request.getPeriod()); | |||
CreateConditionWsResponse.Builder response = CreateConditionWsResponse.newBuilder() | |||
.setId(condition.getId()) | |||
.setMetric(condition.getMetricKey()) | |||
.setOp(condition.getOperator()); | |||
setNullable(condition.getWarningThreshold(), response::setWarning); | |||
setNullable(condition.getErrorThreshold(), response::setError); | |||
setNullable(condition.getPeriod(), response::setPeriod); | |||
return response.build(); | |||
} | |||
private static CreateConditionRequest toWsRequest(Request request) { | |||
return CreateConditionRequest.builder() | |||
.setQualityGateId(request.mandatoryParamAsInt(PARAM_GATE_ID)) | |||
.setMetricKey(request.mandatoryParam(PARAM_METRIC)) | |||
.setOperator(request.mandatoryParam(PARAM_OPERATOR)) | |||
.setWarning(request.param(PARAM_WARNING)) | |||
.setError(request.param(PARAM_ERROR)) | |||
.setPeriod(request.paramAsInt(PARAM_PERIOD)) | |||
.build(); | |||
} | |||
} |
@@ -33,7 +33,7 @@ import org.sonar.server.component.ComponentFinder; | |||
import org.sonar.server.qualitygate.QualityGateFinder; | |||
import org.sonar.server.qualitygate.QualityGateFinder.QualityGateData; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsQualityGates.GetByProjectWsResponse; | |||
import org.sonarqube.ws.Qualitygates.GetByProjectWsResponse; | |||
import static org.sonar.server.user.AbstractUserSession.insufficientPrivilegesException; | |||
import static org.sonar.server.ws.KeyExamples.KEY_PROJECT_EXAMPLE_001; |
@@ -42,8 +42,7 @@ import org.sonar.server.component.ComponentFinder.ParamNames; | |||
import org.sonar.server.exceptions.BadRequestException; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonar.server.ws.KeyExamples; | |||
import org.sonarqube.ws.WsQualityGates.ProjectStatusWsResponse; | |||
import org.sonarqube.ws.client.qualitygate.ProjectStatusWsRequest; | |||
import org.sonarqube.ws.Qualitygates.ProjectStatusWsResponse; | |||
import static com.google.common.base.Strings.isNullOrEmpty; | |||
import static java.util.Collections.singletonList; | |||
@@ -109,13 +108,21 @@ public class ProjectStatusAction implements QualityGatesWsAction { | |||
@Override | |||
public void handle(Request request, Response response) throws Exception { | |||
ProjectStatusWsResponse projectStatusWsResponse = doHandle(toProjectStatusWsRequest(request)); | |||
String analysisId = request.param(PARAM_ANALYSIS_ID); | |||
String projectId = request.param(PARAM_PROJECT_ID); | |||
String projectKey = request.param(PARAM_PROJECT_KEY); | |||
checkRequest( | |||
!isNullOrEmpty(analysisId) | |||
^ !isNullOrEmpty(projectId) | |||
^ !isNullOrEmpty(projectKey), | |||
MSG_ONE_PARAMETER_ONLY); | |||
ProjectStatusWsResponse projectStatusWsResponse = doHandle(analysisId, projectId, projectKey); | |||
writeProtobuf(projectStatusWsResponse, request, response); | |||
} | |||
private ProjectStatusWsResponse doHandle(ProjectStatusWsRequest request) { | |||
private ProjectStatusWsResponse doHandle(String analysisId, String projectId, String projectKey) { | |||
try (DbSession dbSession = dbClient.openSession(false)) { | |||
ProjectAndSnapshot projectAndSnapshot = getProjectAndSnapshot(dbSession, request); | |||
ProjectAndSnapshot projectAndSnapshot = getProjectAndSnapshot(dbSession, analysisId, projectId, projectKey); | |||
checkPermission(projectAndSnapshot.project); | |||
Optional<String> measureData = getQualityGateDetailsMeasureData(dbSession, projectAndSnapshot.project); | |||
@@ -125,19 +132,18 @@ public class ProjectStatusAction implements QualityGatesWsAction { | |||
} | |||
} | |||
private ProjectAndSnapshot getProjectAndSnapshot(DbSession dbSession, ProjectStatusWsRequest request) { | |||
String analysisUuid = request.getAnalysisId(); | |||
if (!isNullOrEmpty(request.getAnalysisId())) { | |||
return getSnapshotThenProject(dbSession, analysisUuid); | |||
} else if (!isNullOrEmpty(request.getProjectId()) ^ !isNullOrEmpty(request.getProjectKey())) { | |||
return getProjectThenSnapshot(dbSession, request); | |||
private ProjectAndSnapshot getProjectAndSnapshot(DbSession dbSession, String analysisId, String projectId, String projectKey) { | |||
if (!isNullOrEmpty(analysisId)) { | |||
return getSnapshotThenProject(dbSession, analysisId); | |||
} else if (!isNullOrEmpty(projectId) ^ !isNullOrEmpty(projectKey)) { | |||
return getProjectThenSnapshot(dbSession, projectId, projectKey); | |||
} | |||
throw BadRequestException.create(MSG_ONE_PARAMETER_ONLY); | |||
} | |||
private ProjectAndSnapshot getProjectThenSnapshot(DbSession dbSession, ProjectStatusWsRequest request) { | |||
ComponentDto projectDto = componentFinder.getByUuidOrKey(dbSession, request.getProjectId(), request.getProjectKey(), ParamNames.PROJECT_ID_AND_KEY); | |||
private ProjectAndSnapshot getProjectThenSnapshot(DbSession dbSession, String projectId, String projectKey) { | |||
ComponentDto projectDto = componentFinder.getByUuidOrKey(dbSession, projectId, projectKey, ParamNames.PROJECT_ID_AND_KEY); | |||
java.util.Optional<SnapshotDto> snapshot = dbClient.snapshotDao().selectLastAnalysisByRootComponentUuid(dbSession, projectDto.projectUuid()); | |||
return new ProjectAndSnapshot(projectDto, snapshot.orElse(null)); | |||
} | |||
@@ -165,19 +171,6 @@ public class ProjectStatusAction implements QualityGatesWsAction { | |||
: Optional.fromNullable(measures.get(0).getData()); | |||
} | |||
private static ProjectStatusWsRequest toProjectStatusWsRequest(Request request) { | |||
ProjectStatusWsRequest projectStatusWsRequest = new ProjectStatusWsRequest() | |||
.setAnalysisId(request.param(PARAM_ANALYSIS_ID)) | |||
.setProjectId(request.param(PARAM_PROJECT_ID)) | |||
.setProjectKey(request.param(PARAM_PROJECT_KEY)); | |||
checkRequest( | |||
!isNullOrEmpty(projectStatusWsRequest.getAnalysisId()) | |||
^ !isNullOrEmpty(projectStatusWsRequest.getProjectId()) | |||
^ !isNullOrEmpty(projectStatusWsRequest.getProjectKey()), | |||
MSG_ONE_PARAMETER_ONLY); | |||
return projectStatusWsRequest; | |||
} | |||
private void checkPermission(ComponentDto project) { | |||
if (!userSession.hasComponentPermission(UserRole.ADMIN, project) && | |||
!userSession.hasComponentPermission(UserRole.USER, project)) { |
@@ -28,7 +28,7 @@ import java.util.function.Predicate; | |||
import java.util.stream.StreamSupport; | |||
import javax.annotation.Nullable; | |||
import org.sonar.db.component.SnapshotDto; | |||
import org.sonarqube.ws.WsQualityGates.ProjectStatusWsResponse; | |||
import org.sonarqube.ws.Qualitygates.ProjectStatusWsResponse; | |||
import static com.google.common.base.Strings.isNullOrEmpty; | |||
import static org.sonar.api.utils.DateUtils.formatDateTime; |
@@ -29,12 +29,11 @@ import org.sonar.core.util.Uuids; | |||
import org.sonar.db.DbClient; | |||
import org.sonar.db.DbSession; | |||
import org.sonar.db.component.ComponentDto; | |||
import org.sonar.db.permission.OrganizationPermission; | |||
import org.sonar.db.property.PropertyDto; | |||
import org.sonar.server.component.ComponentFinder; | |||
import org.sonar.server.component.ComponentFinder.ParamNames; | |||
import org.sonar.db.permission.OrganizationPermission; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.client.qualitygate.SelectWsRequest; | |||
import static org.sonar.server.qualitygate.QualityGates.SONAR_QUALITYGATE_PROPERTY; | |||
import static org.sonar.server.user.AbstractUserSession.insufficientPrivilegesException; | |||
@@ -86,29 +85,22 @@ public class SelectAction implements QualityGatesWsAction { | |||
@Override | |||
public void handle(Request request, Response response) { | |||
doHandle(toSelectWsRequest(request)); | |||
response.noContent(); | |||
} | |||
long gateId = request.mandatoryParamAsLong(PARAM_GATE_ID); | |||
String projectId = request.param(PARAM_PROJECT_ID); | |||
String projectKey = request.param(PARAM_PROJECT_KEY); | |||
private void doHandle(SelectWsRequest request) { | |||
try (DbSession dbSession = dbClient.openSession(false)) { | |||
checkQualityGate(dbSession, request.getGateId()); | |||
ComponentDto project = getProject(dbSession, request.getProjectId(), request.getProjectKey()); | |||
checkQualityGate(dbSession, gateId); | |||
ComponentDto project = getProject(dbSession, projectId, projectKey); | |||
dbClient.propertiesDao().saveProperty(dbSession, new PropertyDto() | |||
.setKey(SONAR_QUALITYGATE_PROPERTY) | |||
.setResourceId(project.getId()) | |||
.setValue(String.valueOf(request.getGateId()))); | |||
.setValue(String.valueOf(gateId))); | |||
dbSession.commit(); | |||
} | |||
} | |||
private static SelectWsRequest toSelectWsRequest(Request request) { | |||
return new SelectWsRequest() | |||
.setGateId(request.mandatoryParamAsLong(PARAM_GATE_ID)) | |||
.setProjectId(request.param(PARAM_PROJECT_ID)) | |||
.setProjectKey(request.param(PARAM_PROJECT_KEY)); | |||
response.noContent(); | |||
} | |||
private ComponentDto getProject(DbSession dbSession, @Nullable String projectId, @Nullable String projectKey) { |
@@ -28,8 +28,7 @@ import org.sonar.db.qualitygate.QualityGateConditionDto; | |||
import org.sonar.server.organization.DefaultOrganizationProvider; | |||
import org.sonar.server.qualitygate.QualityGateConditionsUpdater; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsQualityGates.UpdateConditionWsResponse; | |||
import org.sonarqube.ws.client.qualitygate.UpdateConditionRequest; | |||
import org.sonarqube.ws.Qualitygates.UpdateConditionWsResponse; | |||
import static org.sonar.core.util.Protobuf.setNullable; | |||
import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; | |||
@@ -80,34 +79,24 @@ public class UpdateConditionAction implements QualityGatesWsAction { | |||
public void handle(Request request, Response response) { | |||
userSession.checkPermission(ADMINISTER_QUALITY_GATES, defaultOrganizationProvider.get().getUuid()); | |||
int id = request.mandatoryParamAsInt(PARAM_ID); | |||
String metric = request.mandatoryParam(PARAM_METRIC); | |||
String operator = request.mandatoryParam(PARAM_OPERATOR); | |||
String warning = request.param(PARAM_WARNING); | |||
String error = request.param(PARAM_ERROR); | |||
Integer period = request.paramAsInt(PARAM_PERIOD); | |||
try (DbSession dbSession = dbClient.openSession(false)) { | |||
writeProtobuf(doHandle(toWsRequest(request), dbSession), request, response); | |||
QualityGateConditionDto condition = qualityGateConditionsUpdater.updateCondition(dbSession, id, metric, operator, warning, error, period); | |||
UpdateConditionWsResponse.Builder updateConditionWsResponse = UpdateConditionWsResponse.newBuilder() | |||
.setId(condition.getId()) | |||
.setMetric(condition.getMetricKey()) | |||
.setOp(condition.getOperator()); | |||
setNullable(condition.getWarningThreshold(), updateConditionWsResponse::setWarning); | |||
setNullable(condition.getErrorThreshold(), updateConditionWsResponse::setError); | |||
setNullable(condition.getPeriod(), updateConditionWsResponse::setPeriod); | |||
writeProtobuf(updateConditionWsResponse.build(), request, response); | |||
dbSession.commit(); | |||
} | |||
} | |||
private UpdateConditionWsResponse doHandle(UpdateConditionRequest request, DbSession dbSession) { | |||
QualityGateConditionDto condition = qualityGateConditionsUpdater.updateCondition(dbSession, request.getConditionId(), request.getMetricKey(), request.getOperator(), | |||
request.getWarning(), request.getError(), request.getPeriod()); | |||
UpdateConditionWsResponse.Builder response = UpdateConditionWsResponse.newBuilder() | |||
.setId(condition.getId()) | |||
.setMetric(condition.getMetricKey()) | |||
.setOp(condition.getOperator()); | |||
setNullable(condition.getWarningThreshold(), response::setWarning); | |||
setNullable(condition.getErrorThreshold(), response::setError); | |||
setNullable(condition.getPeriod(), response::setPeriod); | |||
return response.build(); | |||
} | |||
private static UpdateConditionRequest toWsRequest(Request request) { | |||
return UpdateConditionRequest.builder() | |||
.setConditionId(request.mandatoryParamAsInt(PARAM_ID)) | |||
.setMetricKey(request.mandatoryParam(PARAM_METRIC)) | |||
.setOperator(request.mandatoryParam(PARAM_OPERATOR)) | |||
.setWarning(request.param(PARAM_WARNING)) | |||
.setError(request.param(PARAM_ERROR)) | |||
.setPeriod(request.paramAsInt(PARAM_PERIOD)) | |||
.build(); | |||
} | |||
} |
@@ -30,7 +30,7 @@ import org.sonar.db.DbSession; | |||
import org.sonar.db.qualityprofile.QProfileDto; | |||
import org.sonar.server.qualityprofile.QProfileCopier; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.QualityProfiles.CopyWsResponse; | |||
import org.sonarqube.ws.Qualityprofiles.CopyWsResponse; | |||
import static org.sonar.core.util.Protobuf.setNullable; | |||
import static org.sonar.core.util.Uuids.UUID_EXAMPLE_01; |
@@ -36,7 +36,7 @@ import org.sonar.server.qualityprofile.QProfileName; | |||
import org.sonar.server.qualityprofile.QProfileResult; | |||
import org.sonar.server.qualityprofile.index.ActiveRuleIndexer; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.QualityProfiles.CreateWsResponse; | |||
import org.sonarqube.ws.Qualityprofiles.CreateWsResponse; | |||
import org.sonarqube.ws.client.qualityprofile.CreateRequest; | |||
import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; |
@@ -34,8 +34,8 @@ import org.sonar.db.organization.OrganizationDto; | |||
import org.sonar.db.qualityprofile.ActiveRuleCountQuery; | |||
import org.sonar.db.qualityprofile.ActiveRuleDao; | |||
import org.sonar.db.qualityprofile.QProfileDto; | |||
import org.sonarqube.ws.QualityProfiles.InheritanceWsResponse; | |||
import org.sonarqube.ws.QualityProfiles.InheritanceWsResponse.QualityProfile; | |||
import org.sonarqube.ws.Qualityprofiles.InheritanceWsResponse; | |||
import org.sonarqube.ws.Qualityprofiles.InheritanceWsResponse.QualityProfile; | |||
import static org.sonar.core.util.Protobuf.setNullable; | |||
import static org.sonar.db.qualityprofile.ActiveRuleDto.OVERRIDES; |
@@ -50,8 +50,8 @@ import org.sonar.server.component.ComponentFinder; | |||
import org.sonar.server.exceptions.NotFoundException; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonar.server.util.LanguageParamUtils; | |||
import org.sonarqube.ws.QualityProfiles.SearchWsResponse; | |||
import org.sonarqube.ws.QualityProfiles.SearchWsResponse.QualityProfile; | |||
import org.sonarqube.ws.Qualityprofiles.SearchWsResponse; | |||
import org.sonarqube.ws.Qualityprofiles.SearchWsResponse.QualityProfile; | |||
import org.sonarqube.ws.client.qualityprofile.SearchWsRequest; | |||
import static com.google.common.base.Preconditions.checkState; |
@@ -37,7 +37,7 @@ import org.sonar.db.qualityprofile.QProfileDto; | |||
import org.sonar.db.qualityprofile.SearchGroupsQuery; | |||
import org.sonar.db.user.GroupDto; | |||
import org.sonarqube.ws.Common; | |||
import org.sonarqube.ws.QualityProfiles; | |||
import org.sonarqube.ws.Qualityprofiles; | |||
import org.sonarqube.ws.client.qualityprofile.SearchUsersRequest; | |||
import static org.sonar.api.server.ws.WebService.Param.PAGE; | |||
@@ -130,7 +130,7 @@ public class SearchGroupsAction implements QProfileWsAction { | |||
.stream() | |||
.collect(MoreCollectors.uniqueIndex(GroupDto::getId)); | |||
writeProtobuf( | |||
QualityProfiles.SearchGroupsResponse.newBuilder() | |||
Qualityprofiles.SearchGroupsResponse.newBuilder() | |||
.addAllGroups(groupMemberships.stream() | |||
.map(groupsMembership -> toGroup(groupsById.get(groupsMembership.getGroupId()), groupsMembership.isSelected())) | |||
.collect(toList())) | |||
@@ -151,8 +151,8 @@ public class SearchGroupsAction implements QProfileWsAction { | |||
.build(); | |||
} | |||
private static QualityProfiles.SearchGroupsResponse.Group toGroup(GroupDto group, boolean isSelected) { | |||
QualityProfiles.SearchGroupsResponse.Group.Builder builder = QualityProfiles.SearchGroupsResponse.Group.newBuilder() | |||
private static Qualityprofiles.SearchGroupsResponse.Group toGroup(GroupDto group, boolean isSelected) { | |||
Qualityprofiles.SearchGroupsResponse.Group.Builder builder = Qualityprofiles.SearchGroupsResponse.Group.newBuilder() | |||
.setName(group.getName()) | |||
.setSelected(isSelected); | |||
setNullable(group.getDescription(), builder::setDescription); |
@@ -38,7 +38,7 @@ import org.sonar.db.qualityprofile.UserMembershipDto; | |||
import org.sonar.db.user.UserDto; | |||
import org.sonar.server.issue.ws.AvatarResolver; | |||
import org.sonarqube.ws.Common; | |||
import org.sonarqube.ws.QualityProfiles.SearchUsersResponse; | |||
import org.sonarqube.ws.Qualityprofiles.SearchUsersResponse; | |||
import org.sonarqube.ws.client.qualityprofile.SearchUsersRequest; | |||
import static com.google.common.base.Strings.emptyToNull; |
@@ -38,10 +38,10 @@ import org.sonar.db.qualityprofile.QProfileDto; | |||
import org.sonar.server.es.SearchOptions; | |||
import org.sonar.server.rule.index.RuleIndex; | |||
import org.sonar.server.rule.index.RuleQuery; | |||
import org.sonarqube.ws.QualityProfiles; | |||
import org.sonarqube.ws.QualityProfiles.ShowResponse; | |||
import org.sonarqube.ws.QualityProfiles.ShowResponse.CompareToSonarWay; | |||
import org.sonarqube.ws.QualityProfiles.ShowResponse.QualityProfile; | |||
import org.sonarqube.ws.Qualityprofiles; | |||
import org.sonarqube.ws.Qualityprofiles.ShowResponse; | |||
import org.sonarqube.ws.Qualityprofiles.ShowResponse.CompareToSonarWay; | |||
import org.sonarqube.ws.Qualityprofiles.ShowResponse.QualityProfile; | |||
import static java.util.Collections.singletonList; | |||
import static org.sonar.api.rule.RuleStatus.DEPRECATED; | |||
@@ -154,7 +154,7 @@ public class ShowAction implements QProfileWsAction { | |||
private static ShowResponse buildResponse(QProfileDto profile, boolean isDefault, Language language, long activeRules, long deprecatedActiveRules, long projects, | |||
@Nullable CompareToSonarWay compareToSonarWay) { | |||
ShowResponse.Builder showResponseBuilder = QualityProfiles.ShowResponse.newBuilder(); | |||
ShowResponse.Builder showResponseBuilder = Qualityprofiles.ShowResponse.newBuilder(); | |||
QualityProfile.Builder profileBuilder = QualityProfile.newBuilder() | |||
.setKey(profile.getKee()) | |||
.setName(profile.getName()) |
@@ -28,7 +28,7 @@ import org.sonar.db.DbClient; | |||
import org.sonar.db.DbSession; | |||
import org.sonar.db.user.UserDto; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsRoot; | |||
import org.sonarqube.ws.Root; | |||
import static org.sonar.server.ws.WsUtils.writeProtobuf; | |||
@@ -69,13 +69,13 @@ public class SearchAction implements RootsWsAction { | |||
} | |||
private static void writeResponse(Request request, Response response, List<UserDto> dtos) { | |||
WsRoot.SearchWsResponse.Builder responseBuilder = WsRoot.SearchWsResponse.newBuilder(); | |||
WsRoot.Root.Builder rootBuilder = WsRoot.Root.newBuilder(); | |||
Root.SearchWsResponse.Builder responseBuilder = Root.SearchWsResponse.newBuilder(); | |||
Root.RootContent.Builder rootBuilder = Root.RootContent.newBuilder(); | |||
dtos.forEach(dto -> responseBuilder.addRoots(toRoot(rootBuilder, dto))); | |||
writeProtobuf(responseBuilder.build(), request, response); | |||
} | |||
private static WsRoot.Root toRoot(WsRoot.Root.Builder builder, UserDto dto) { | |||
private static Root.RootContent toRoot(Root.RootContent.Builder builder, UserDto dto) { | |||
builder.clear(); | |||
builder.setLogin(dto.getLogin()); | |||
if (dto.getName() != null) { |
@@ -39,7 +39,7 @@ import org.sonar.server.test.index.CoveredFileDoc; | |||
import org.sonar.server.test.index.TestDoc; | |||
import org.sonar.server.test.index.TestIndex; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsTests; | |||
import org.sonarqube.ws.Tests; | |||
import static org.sonar.core.util.Protobuf.setNullable; | |||
import static org.sonar.server.ws.WsUtils.checkFoundWithOptional; | |||
@@ -86,10 +86,10 @@ public class CoveredFilesAction implements TestsWsAction { | |||
List<CoveredFileDoc> coveredFiles = index.coveredFiles(testId); | |||
Map<String, ComponentDto> componentsByUuid = buildComponentsByUuid(coveredFiles); | |||
WsTests.CoveredFilesResponse.Builder responseBuilder = WsTests.CoveredFilesResponse.newBuilder(); | |||
Tests.CoveredFilesResponse.Builder responseBuilder = Tests.CoveredFilesResponse.newBuilder(); | |||
if (!coveredFiles.isEmpty()) { | |||
for (CoveredFileDoc doc : coveredFiles) { | |||
WsTests.CoveredFilesResponse.CoveredFile.Builder fileBuilder = WsTests.CoveredFilesResponse.CoveredFile.newBuilder(); | |||
Tests.CoveredFilesResponse.CoveredFile.Builder fileBuilder = Tests.CoveredFilesResponse.CoveredFile.newBuilder(); | |||
fileBuilder.setId(doc.fileUuid()); | |||
fileBuilder.setCoveredLines(doc.coveredLines().size()); | |||
ComponentDto component = componentsByUuid.get(doc.fileUuid()); |
@@ -46,7 +46,7 @@ import org.sonar.server.user.UserSession; | |||
import org.sonar.server.ws.KeyExamples; | |||
import org.sonar.server.ws.WsUtils; | |||
import org.sonarqube.ws.Common; | |||
import org.sonarqube.ws.WsTests; | |||
import org.sonarqube.ws.Tests; | |||
import static org.sonar.api.server.ws.WebService.Param.PAGE; | |||
import static org.sonar.api.server.ws.WebService.Param.PAGE_SIZE; | |||
@@ -158,7 +158,7 @@ public class ListAction implements TestsWsAction { | |||
componentsByTestFileUuid = buildComponentsByTestFileUuid(dbSession, tests.getDocs()); | |||
} | |||
WsTests.ListResponse.Builder responseBuilder = WsTests.ListResponse.newBuilder(); | |||
Tests.ListResponse.Builder responseBuilder = Tests.ListResponse.newBuilder(); | |||
responseBuilder.setPaging(Common.Paging.newBuilder() | |||
.setPageIndex(searchOptions.getPage()) | |||
.setPageSize(searchOptions.getLimit()) | |||
@@ -166,7 +166,7 @@ public class ListAction implements TestsWsAction { | |||
.build()); | |||
for (TestDoc testDoc : tests.getDocs()) { | |||
WsTests.Test.Builder testBuilder = WsTests.Test.newBuilder(); | |||
Tests.Test.Builder testBuilder = Tests.Test.newBuilder(); | |||
testBuilder.setId(testDoc.testUuid()); | |||
testBuilder.setName(StringUtils.defaultString(testDoc.name())); | |||
testBuilder.setFileId(testDoc.fileUuid()); | |||
@@ -176,7 +176,7 @@ public class ListAction implements TestsWsAction { | |||
testBuilder.setFileName(component.longName()); | |||
setNullable(component.getBranch(), testBuilder::setFileBranch); | |||
} | |||
testBuilder.setStatus(WsTests.TestStatus.valueOf(testDoc.status())); | |||
testBuilder.setStatus(Tests.TestStatus.valueOf(testDoc.status())); | |||
if (testDoc.durationInMs() != null) { | |||
testBuilder.setDurationInMs(testDoc.durationInMs()); | |||
} |
@@ -32,7 +32,7 @@ import org.sonar.server.user.ExternalIdentity; | |||
import org.sonar.server.user.NewUser; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonar.server.user.UserUpdater; | |||
import org.sonarqube.ws.WsUsers.CreateWsResponse; | |||
import org.sonarqube.ws.Users.CreateWsResponse; | |||
import org.sonarqube.ws.client.user.CreateRequest; | |||
import static com.google.common.base.Strings.emptyToNull; |
@@ -33,15 +33,15 @@ import org.sonar.db.user.UserDto; | |||
import org.sonar.server.issue.ws.AvatarResolver; | |||
import org.sonar.server.organization.DefaultOrganizationProvider; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsUsers.CurrentWsResponse; | |||
import org.sonarqube.ws.Users.CurrentWsResponse; | |||
import static com.google.common.base.Preconditions.checkState; | |||
import static com.google.common.base.Strings.emptyToNull; | |||
import static java.util.Collections.singletonList; | |||
import static org.sonar.core.util.Protobuf.setNullable; | |||
import static org.sonar.server.ws.WsUtils.writeProtobuf; | |||
import static org.sonarqube.ws.WsUsers.CurrentWsResponse.Permissions; | |||
import static org.sonarqube.ws.WsUsers.CurrentWsResponse.newBuilder; | |||
import static org.sonarqube.ws.Users.CurrentWsResponse.Permissions; | |||
import static org.sonarqube.ws.Users.CurrentWsResponse.newBuilder; | |||
import static org.sonarqube.ws.client.user.UsersWsParameters.ACTION_CURRENT; | |||
public class CurrentAction implements UsersWsAction { |
@@ -41,8 +41,8 @@ import org.sonar.db.user.UserDto; | |||
import org.sonar.server.organization.DefaultOrganizationProvider; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonar.server.usergroups.DefaultGroupFinder; | |||
import org.sonarqube.ws.WsUsers.GroupsWsResponse; | |||
import org.sonarqube.ws.WsUsers.GroupsWsResponse.Group; | |||
import org.sonarqube.ws.Users.GroupsWsResponse; | |||
import org.sonarqube.ws.Users.GroupsWsResponse.Group; | |||
import org.sonarqube.ws.client.user.GroupsRequest; | |||
import static com.google.common.base.Preconditions.checkArgument; |
@@ -28,8 +28,8 @@ import org.sonar.api.server.ws.Request; | |||
import org.sonar.api.server.ws.Response; | |||
import org.sonar.api.server.ws.WebService; | |||
import org.sonar.server.authentication.IdentityProviderRepository; | |||
import org.sonarqube.ws.WsUsers; | |||
import org.sonarqube.ws.WsUsers.IdentityProvidersWsResponse; | |||
import org.sonarqube.ws.Users; | |||
import org.sonarqube.ws.Users.IdentityProvidersWsResponse; | |||
import static org.sonar.server.ws.WsUtils.writeProtobuf; | |||
@@ -61,12 +61,12 @@ public class IdentityProvidersAction implements UsersWsAction { | |||
return response.build(); | |||
} | |||
private enum IdentityProviderToWsResponse implements Function<IdentityProvider, WsUsers.IdentityProvider> { | |||
private enum IdentityProviderToWsResponse implements Function<IdentityProvider, Users.IdentityProvider> { | |||
INSTANCE; | |||
@Override | |||
public WsUsers.IdentityProvider apply(@Nonnull IdentityProvider input) { | |||
WsUsers.IdentityProvider.Builder builder = WsUsers.IdentityProvider.newBuilder() | |||
public Users.IdentityProvider apply(@Nonnull IdentityProvider input) { | |||
Users.IdentityProvider.Builder builder = Users.IdentityProvider.newBuilder() | |||
.setKey(input.getKey()) | |||
.setName(input.getName()); | |||
Display display = input.getDisplay(); |
@@ -40,8 +40,8 @@ import org.sonar.server.user.UserSession; | |||
import org.sonar.server.user.index.UserDoc; | |||
import org.sonar.server.user.index.UserIndex; | |||
import org.sonar.server.user.index.UserQuery; | |||
import org.sonarqube.ws.WsUsers; | |||
import org.sonarqube.ws.WsUsers.SearchWsResponse; | |||
import org.sonarqube.ws.Users; | |||
import org.sonarqube.ws.Users.SearchWsResponse; | |||
import org.sonarqube.ws.client.user.SearchRequest; | |||
import static com.google.common.base.MoreObjects.firstNonNull; | |||
@@ -65,10 +65,10 @@ import static org.sonar.server.user.ws.UserJsonWriter.FIELD_NAME; | |||
import static org.sonar.server.user.ws.UserJsonWriter.FIELD_SCM_ACCOUNTS; | |||
import static org.sonar.server.user.ws.UserJsonWriter.FIELD_TOKENS_COUNT; | |||
import static org.sonar.server.ws.WsUtils.writeProtobuf; | |||
import static org.sonarqube.ws.WsUsers.SearchWsResponse.Groups; | |||
import static org.sonarqube.ws.WsUsers.SearchWsResponse.ScmAccounts; | |||
import static org.sonarqube.ws.WsUsers.SearchWsResponse.User; | |||
import static org.sonarqube.ws.WsUsers.SearchWsResponse.newBuilder; | |||
import static org.sonarqube.ws.Users.SearchWsResponse.Groups; | |||
import static org.sonarqube.ws.Users.SearchWsResponse.ScmAccounts; | |||
import static org.sonarqube.ws.Users.SearchWsResponse.User; | |||
import static org.sonarqube.ws.Users.SearchWsResponse.newBuilder; | |||
public class SearchAction implements UsersWsAction { | |||
@@ -111,11 +111,11 @@ public class SearchAction implements UsersWsAction { | |||
@Override | |||
public void handle(Request request, Response response) throws Exception { | |||
WsUsers.SearchWsResponse wsResponse = doHandle(toSearchRequest(request)); | |||
Users.SearchWsResponse wsResponse = doHandle(toSearchRequest(request)); | |||
writeProtobuf(wsResponse, request, response); | |||
} | |||
private WsUsers.SearchWsResponse doHandle(SearchRequest request) { | |||
private Users.SearchWsResponse doHandle(SearchRequest request) { | |||
SearchOptions options = new SearchOptions().setPage(request.getPage(), request.getPageSize()); | |||
List<String> fields = request.getPossibleFields(); | |||
SearchResult<UserDoc> result = userIndex.search(UserQuery.builder().setTextQuery(request.getQuery()).build(), options); |
@@ -29,7 +29,7 @@ import org.sonar.db.DbSession; | |||
import org.sonar.db.organization.OrganizationDto; | |||
import org.sonar.db.user.GroupDto; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsUserGroups; | |||
import org.sonarqube.ws.UserGroups; | |||
import static java.lang.String.format; | |||
import static org.sonar.api.user.UserGroupValidation.GROUP_NAME_MAX_LENGTH; | |||
@@ -105,7 +105,7 @@ public class CreateAction implements UserGroupsWsAction { | |||
} | |||
private void writeResponse(Request request, Response response, OrganizationDto organization, GroupDto group) { | |||
WsUserGroups.CreateWsResponse.Builder respBuilder = WsUserGroups.CreateWsResponse.newBuilder(); | |||
UserGroups.CreateWsResponse.Builder respBuilder = UserGroups.CreateWsResponse.newBuilder(); | |||
// 'default' is always false as it's not possible to create a default group | |||
respBuilder.setGroup(toProtobuf(organization, group, 0, false)); | |||
writeProtobuf(respBuilder.build(), request, response); |
@@ -30,7 +30,7 @@ import org.sonar.db.user.GroupDto; | |||
import org.sonar.server.exceptions.NotFoundException; | |||
import org.sonar.server.organization.DefaultOrganizationProvider; | |||
import org.sonar.server.usergroups.DefaultGroupFinder; | |||
import org.sonarqube.ws.WsUserGroups; | |||
import org.sonarqube.ws.UserGroups; | |||
import static com.google.common.base.Preconditions.checkArgument; | |||
import static org.sonar.core.util.Protobuf.setNullable; | |||
@@ -142,8 +142,8 @@ public class GroupWsSupport { | |||
checkArgument(!defaultGroup.getId().equals(groupDto.getId()), "Default group '%s' cannot be used to perform this action", groupDto.getName()); | |||
} | |||
static WsUserGroups.Group.Builder toProtobuf(OrganizationDto organization, GroupDto group, int membersCount, boolean isDefault) { | |||
WsUserGroups.Group.Builder wsGroup = WsUserGroups.Group.newBuilder() | |||
static UserGroups.Group.Builder toProtobuf(OrganizationDto organization, GroupDto group, int membersCount, boolean isDefault) { | |||
UserGroups.Group.Builder wsGroup = UserGroups.Group.newBuilder() | |||
.setId(group.getId()) | |||
.setOrganization(organization.getKey()) | |||
.setName(group.getName()) |
@@ -47,8 +47,8 @@ import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; | |||
import static org.sonar.server.es.SearchOptions.MAX_LIMIT; | |||
import static org.sonar.server.usergroups.ws.GroupWsSupport.PARAM_ORGANIZATION_KEY; | |||
import static org.sonar.server.ws.WsUtils.writeProtobuf; | |||
import static org.sonarqube.ws.WsUserGroups.Group; | |||
import static org.sonarqube.ws.WsUserGroups.SearchWsResponse; | |||
import static org.sonarqube.ws.UserGroups.Group; | |||
import static org.sonarqube.ws.UserGroups.SearchWsResponse; | |||
public class SearchAction implements UserGroupsWsAction { | |||
@@ -32,7 +32,7 @@ import org.sonar.db.organization.OrganizationDto; | |||
import org.sonar.db.user.GroupDto; | |||
import org.sonar.db.user.UserMembershipQuery; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsUserGroups; | |||
import org.sonarqube.ws.UserGroups; | |||
import static java.lang.String.format; | |||
import static org.sonar.api.user.UserGroupValidation.GROUP_NAME_MAX_LENGTH; | |||
@@ -130,7 +130,7 @@ public class UpdateAction implements UserGroupsWsAction { | |||
.build(); | |||
int membersCount = dbClient.groupMembershipDao().countMembers(dbSession, query); | |||
WsUserGroups.UpdateWsResponse.Builder respBuilder = WsUserGroups.UpdateWsResponse.newBuilder(); | |||
UserGroups.UpdateWsResponse.Builder respBuilder = UserGroups.UpdateWsResponse.newBuilder(); | |||
// 'default' is always false as it's not possible to update a default group | |||
respBuilder.setGroup(toProtobuf(organization, group, membersCount, false)); | |||
writeProtobuf(respBuilder.build(), request, response); |
@@ -31,8 +31,8 @@ import org.sonar.db.user.UserTokenDto; | |||
import org.sonar.server.exceptions.ServerException; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonar.server.usertoken.TokenGenerator; | |||
import org.sonarqube.ws.WsUserTokens; | |||
import org.sonarqube.ws.WsUserTokens.GenerateWsResponse; | |||
import org.sonarqube.ws.UserTokens; | |||
import org.sonarqube.ws.UserTokens.GenerateWsResponse; | |||
import org.sonarqube.ws.client.usertoken.GenerateWsRequest; | |||
import static java.net.HttpURLConnection.HTTP_INTERNAL_ERROR; | |||
@@ -81,11 +81,11 @@ public class GenerateAction implements UserTokensWsAction { | |||
@Override | |||
public void handle(Request request, Response response) throws Exception { | |||
WsUserTokens.GenerateWsResponse generateWsResponse = doHandle(toCreateWsRequest(request)); | |||
UserTokens.GenerateWsResponse generateWsResponse = doHandle(toCreateWsRequest(request)); | |||
writeProtobuf(generateWsResponse, request, response); | |||
} | |||
private WsUserTokens.GenerateWsResponse doHandle(GenerateWsRequest request) { | |||
private UserTokens.GenerateWsResponse doHandle(GenerateWsRequest request) { | |||
try (DbSession dbSession = dbClient.openSession(false)) { | |||
checkWsRequest(dbSession, request); | |||
TokenPermissionsValidator.validate(userSession, request.getLogin()); | |||
@@ -149,7 +149,7 @@ public class GenerateAction implements UserTokensWsAction { | |||
} | |||
private static GenerateWsResponse buildResponse(UserTokenDto userTokenDto, String token) { | |||
return WsUserTokens.GenerateWsResponse.newBuilder() | |||
return UserTokens.GenerateWsResponse.newBuilder() | |||
.setLogin(userTokenDto.getLogin()) | |||
.setName(userTokenDto.getName()) | |||
.setToken(token) |
@@ -28,7 +28,7 @@ import org.sonar.db.DbClient; | |||
import org.sonar.db.DbSession; | |||
import org.sonar.db.user.UserTokenDto; | |||
import org.sonar.server.user.UserSession; | |||
import org.sonarqube.ws.WsUserTokens.SearchWsResponse; | |||
import org.sonarqube.ws.UserTokens.SearchWsResponse; | |||
import org.sonarqube.ws.client.usertoken.SearchWsRequest; | |||
import static org.sonar.api.utils.DateUtils.formatDateTime; |
@@ -25,7 +25,7 @@ import org.sonar.scanner.protocol.input.FileData; | |||
import org.sonar.scanner.protocol.input.ProjectRepositories; | |||
import org.sonar.server.ws.TestResponse; | |||
import org.sonar.server.ws.WsActionTester; | |||
import org.sonarqube.ws.WsBatch.WsProjectResponse; | |||
import org.sonarqube.ws.Batch.WsProjectResponse; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.mockito.Matchers.any; |
@@ -52,9 +52,9 @@ import org.sonar.server.tester.UserSessionRule; | |||
import org.sonar.server.ws.WsActionTester; | |||
import org.sonarqube.ws.Common; | |||
import org.sonarqube.ws.MediaTypes; | |||
import org.sonarqube.ws.WsBranches; | |||
import org.sonarqube.ws.WsBranches.Branch; | |||
import org.sonarqube.ws.WsBranches.ListWsResponse; | |||
import org.sonarqube.ws.ProjectBranches; | |||
import org.sonarqube.ws.ProjectBranches.Branch; | |||
import org.sonarqube.ws.ProjectBranches.ListWsResponse; | |||
import static java.lang.String.format; | |||
import static java.util.Collections.emptySet; | |||
@@ -70,7 +70,7 @@ import static org.sonar.api.rules.RuleType.VULNERABILITY; | |||
import static org.sonar.api.utils.DateUtils.dateToLong; | |||
import static org.sonar.api.utils.DateUtils.parseDateTime; | |||
import static org.sonar.test.JsonAssert.assertJson; | |||
import static org.sonarqube.ws.WsBranches.Branch.Status; | |||
import static org.sonarqube.ws.ProjectBranches.Branch.Status; | |||
public class ListActionTest { | |||
@@ -218,9 +218,9 @@ public class ListActionTest { | |||
ComponentDto shortLivingBranch = db.components().insertProjectBranch(project, | |||
b -> b.setKey("short").setBranchType(BranchType.SHORT).setMergeBranchUuid(project.uuid())); | |||
WsBranches.ShowWsResponse response = ws.newRequest() | |||
ProjectBranches.ShowWsResponse response = ws.newRequest() | |||
.setParam("project", shortLivingBranch.getKey()) | |||
.executeProtobuf(WsBranches.ShowWsResponse.class); | |||
.executeProtobuf(ProjectBranches.ShowWsResponse.class); | |||
assertThat(response.getBranch()) | |||
.extracting(Branch::getName, Branch::getType, Branch::getMergeBranch) | |||
@@ -285,7 +285,7 @@ public class ListActionTest { | |||
.setParam("project", project.getKey()) | |||
.executeProtobuf(ListWsResponse.class); | |||
assertThat(response.getBranchesList().stream().map(WsBranches.Branch::getStatus)) | |||
assertThat(response.getBranchesList().stream().map(ProjectBranches.Branch::getStatus)) | |||
.extracting(Status::hasBugs, Status::getBugs, Status::hasVulnerabilities, Status::getVulnerabilities, Status::hasCodeSmells, Status::getCodeSmells) | |||
.containsExactlyInAnyOrder( | |||
tuple(false, 0L, false, 0L, false, 0L), | |||
@@ -306,7 +306,7 @@ public class ListActionTest { | |||
.setParam("project", project.getKey()) | |||
.executeProtobuf(ListWsResponse.class); | |||
assertThat(response.getBranchesList().stream().filter(b -> b.getType().equals(Common.BranchType.SHORT)).map(WsBranches.Branch::getStatus)) | |||
assertThat(response.getBranchesList().stream().filter(b -> b.getType().equals(Common.BranchType.SHORT)).map(ProjectBranches.Branch::getStatus)) | |||
.extracting(Status::getBugs, Status::getVulnerabilities, Status::getCodeSmells) | |||
.containsExactlyInAnyOrder(tuple(0L, 0L, 0L)); | |||
} | |||
@@ -337,7 +337,7 @@ public class ListActionTest { | |||
.executeProtobuf(ListWsResponse.class); | |||
assertThat(response.getBranchesList()) | |||
.extracting(WsBranches.Branch::getType, WsBranches.Branch::hasAnalysisDate, b -> "".equals(b.getAnalysisDate()) ? null : dateToLong(parseDateTime(b.getAnalysisDate()))) | |||
.extracting(ProjectBranches.Branch::getType, ProjectBranches.Branch::hasAnalysisDate, b -> "".equals(b.getAnalysisDate()) ? null : dateToLong(parseDateTime(b.getAnalysisDate()))) | |||
.containsExactlyInAnyOrder( | |||
tuple(Common.BranchType.LONG, false, null), | |||
tuple(Common.BranchType.SHORT, false, null), |
@@ -50,11 +50,12 @@ import org.sonar.server.ws.TestRequest; | |||
import org.sonar.server.ws.TestResponse; | |||
import org.sonar.server.ws.WsActionTester; | |||
import org.sonar.test.JsonAssert; | |||
import org.sonarqube.ws.Ce; | |||
import org.sonarqube.ws.Common; | |||
import org.sonarqube.ws.MediaTypes; | |||
import org.sonarqube.ws.WsCe; | |||
import org.sonarqube.ws.WsCe.ActivityResponse; | |||
import org.sonarqube.ws.WsCe.Task; | |||
import org.sonarqube.ws.Ce; | |||
import org.sonarqube.ws.Ce.ActivityResponse; | |||
import org.sonarqube.ws.Ce.Task; | |||
import static java.util.Arrays.asList; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
@@ -110,7 +111,7 @@ public class ActivityActionTest { | |||
Task task = activityResponse.getTasks(0); | |||
assertThat(task.getOrganization()).isEqualTo(org2.getKey()); | |||
assertThat(task.getId()).isEqualTo("T2"); | |||
assertThat(task.getStatus()).isEqualTo(WsCe.TaskStatus.FAILED); | |||
assertThat(task.getStatus()).isEqualTo(Ce.TaskStatus.FAILED); | |||
assertThat(task.getComponentId()).isEqualTo(project2.uuid()); | |||
assertThat(task.hasAnalysisId()).isFalse(); | |||
assertThat(task.getExecutionTimeMs()).isEqualTo(500L); | |||
@@ -118,7 +119,7 @@ public class ActivityActionTest { | |||
task = activityResponse.getTasks(1); | |||
assertThat(task.getId()).isEqualTo("T1"); | |||
assertThat(task.getStatus()).isEqualTo(WsCe.TaskStatus.SUCCESS); | |||
assertThat(task.getStatus()).isEqualTo(Ce.TaskStatus.SUCCESS); | |||
assertThat(task.getComponentId()).isEqualTo(project1.uuid()); | |||
assertThat(task.getLogs()).isFalse(); | |||
assertThat(task.getOrganization()).isEqualTo(org1.getKey()); | |||
@@ -226,7 +227,7 @@ public class ActivityActionTest { | |||
assertThat(activityResponse.getTasksCount()).isEqualTo(1); | |||
assertThat(activityResponse.getTasks(0).getId()).isEqualTo("T1"); | |||
assertThat(activityResponse.getTasks(0).getStatus()).isEqualTo(WsCe.TaskStatus.SUCCESS); | |||
assertThat(activityResponse.getTasks(0).getStatus()).isEqualTo(Ce.TaskStatus.SUCCESS); | |||
assertThat(activityResponse.getTasks(0).getComponentId()).isEqualTo(project1.uuid()); | |||
} | |||
@@ -354,9 +355,9 @@ public class ActivityActionTest { | |||
ActivityResponse response = ws.newRequest().executeProtobuf(ActivityResponse.class); | |||
assertThat(response.getTasksList()) | |||
.extracting(Task::getId, WsCe.Task::getBranch, WsCe.Task::getBranchType, WsCe.Task::getStatus, WsCe.Task::getComponentKey) | |||
.extracting(Task::getId, Ce.Task::getBranch, Ce.Task::getBranchType, Ce.Task::getStatus, Ce.Task::getComponentKey) | |||
.containsExactlyInAnyOrder( | |||
tuple("T1", longLivingBranch.getBranch(), Common.BranchType.LONG, WsCe.TaskStatus.SUCCESS, longLivingBranch.getKey())); | |||
tuple("T1", longLivingBranch.getBranch(), Common.BranchType.LONG, Ce.TaskStatus.SUCCESS, longLivingBranch.getKey())); | |||
} | |||
@Test | |||
@@ -375,10 +376,10 @@ public class ActivityActionTest { | |||
.executeProtobuf(ActivityResponse.class); | |||
assertThat(response.getTasksList()) | |||
.extracting(Task::getId, WsCe.Task::getBranch, WsCe.Task::getBranchType, WsCe.Task::getStatus) | |||
.extracting(Task::getId, Ce.Task::getBranch, Ce.Task::getBranchType, Ce.Task::getStatus) | |||
.containsExactlyInAnyOrder( | |||
tuple("T1", branch, Common.BranchType.LONG, WsCe.TaskStatus.IN_PROGRESS), | |||
tuple("T2", branch, Common.BranchType.LONG, WsCe.TaskStatus.PENDING)); | |||
tuple("T1", branch, Common.BranchType.LONG, Ce.TaskStatus.IN_PROGRESS), | |||
tuple("T2", branch, Common.BranchType.LONG, Ce.TaskStatus.PENDING)); | |||
} | |||
@Test |
@@ -40,7 +40,8 @@ import org.sonar.server.exceptions.NotFoundException; | |||
import org.sonar.server.tester.UserSessionRule; | |||
import org.sonar.server.ws.TestRequest; | |||
import org.sonar.server.ws.WsActionTester; | |||
import org.sonarqube.ws.WsCe; | |||
import org.sonarqube.ws.Ce; | |||
import org.sonarqube.ws.Ce; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.sonar.db.ce.CeQueueTesting.newCeQueueDto; | |||
@@ -101,7 +102,7 @@ public class ActivityStatusActionTest { | |||
insertActivity(CeActivityDto.Status.FAILED, projectUuid); | |||
insertActivity(CeActivityDto.Status.FAILED, anotherProjectUuid); | |||
WsCe.ActivityStatusWsResponse result = call(projectUuid); | |||
Ce.ActivityStatusWsResponse result = call(projectUuid); | |||
assertThat(result.getPending()).isEqualTo(2); | |||
assertThat(result.getFailing()).isEqualTo(1); | |||
@@ -109,7 +110,7 @@ public class ActivityStatusActionTest { | |||
@Test | |||
public void empty_status() { | |||
WsCe.ActivityStatusWsResponse result = call(); | |||
Ce.ActivityStatusWsResponse result = call(); | |||
assertThat(result.getPending()).isEqualTo(0); | |||
assertThat(result.getFailing()).isEqualTo(0); | |||
@@ -174,19 +175,19 @@ public class ActivityStatusActionTest { | |||
db.commit(); | |||
} | |||
private WsCe.ActivityStatusWsResponse call() { | |||
private Ce.ActivityStatusWsResponse call() { | |||
return callByComponentUuidOrComponentKey(null, null); | |||
} | |||
private WsCe.ActivityStatusWsResponse call(String componentUuid) { | |||
private Ce.ActivityStatusWsResponse call(String componentUuid) { | |||
return callByComponentUuidOrComponentKey(componentUuid, null); | |||
} | |||
private WsCe.ActivityStatusWsResponse callByComponentKey(String componentKey) { | |||
private Ce.ActivityStatusWsResponse callByComponentKey(String componentKey) { | |||
return callByComponentUuidOrComponentKey(null, componentKey); | |||
} | |||
private WsCe.ActivityStatusWsResponse callByComponentUuidOrComponentKey(@Nullable String componentUuid, @Nullable String componentKey) { | |||
private Ce.ActivityStatusWsResponse callByComponentUuidOrComponentKey(@Nullable String componentUuid, @Nullable String componentKey) { | |||
TestRequest request = ws.newRequest(); | |||
if (componentUuid != null) { | |||
request.setParam(PARAM_COMPONENT_ID, componentUuid); | |||
@@ -194,6 +195,6 @@ public class ActivityStatusActionTest { | |||
if (componentKey != null) { | |||
request.setParam(DEPRECATED_PARAM_COMPONENT_KEY, componentKey); | |||
} | |||
return request.executeProtobuf(WsCe.ActivityStatusWsResponse.class); | |||
return request.executeProtobuf(Ce.ActivityStatusWsResponse.class); | |||
} | |||
} |
@@ -40,9 +40,10 @@ import org.sonar.server.exceptions.ForbiddenException; | |||
import org.sonar.server.exceptions.NotFoundException; | |||
import org.sonar.server.tester.UserSessionRule; | |||
import org.sonar.server.ws.WsActionTester; | |||
import org.sonarqube.ws.Ce; | |||
import org.sonarqube.ws.Common; | |||
import org.sonarqube.ws.MediaTypes; | |||
import org.sonarqube.ws.WsCe; | |||
import org.sonarqube.ws.Ce; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.assertj.core.api.Java6Assertions.tuple; | |||
@@ -74,9 +75,9 @@ public class ComponentActionTest { | |||
ComponentDto project = db.components().insertPrivateProject(); | |||
userSession.addProjectPermission(UserRole.USER, project); | |||
WsCe.ProjectResponse response = ws.newRequest() | |||
Ce.ProjectResponse response = ws.newRequest() | |||
.setParam(PARAM_COMPONENT, project.getKey()) | |||
.executeProtobuf(WsCe.ProjectResponse.class); | |||
.executeProtobuf(Ce.ProjectResponse.class); | |||
assertThat(response.getQueueCount()).isEqualTo(0); | |||
assertThat(response.hasCurrent()).isFalse(); | |||
@@ -95,9 +96,9 @@ public class ComponentActionTest { | |||
insertQueue("T4", project1, IN_PROGRESS); | |||
insertQueue("T5", project1, PENDING); | |||
WsCe.ProjectResponse response = ws.newRequest() | |||
Ce.ProjectResponse response = ws.newRequest() | |||
.setParam(PARAM_COMPONENT, project1.getKey()) | |||
.executeProtobuf(WsCe.ProjectResponse.class); | |||
.executeProtobuf(Ce.ProjectResponse.class); | |||
assertThat(response.getQueueCount()).isEqualTo(2); | |||
assertThat(response.getQueue(0).getId()).isEqualTo("T4"); | |||
assertThat(response.getQueue(1).getId()).isEqualTo("T5"); | |||
@@ -106,7 +107,7 @@ public class ComponentActionTest { | |||
assertThat(response.getCurrent().getId()).isEqualTo("T3"); | |||
assertThat(response.getCurrent().hasAnalysisId()).isFalse(); | |||
assertThat(response.getQueueList()) | |||
.extracting(WsCe.Task::getOrganization) | |||
.extracting(Ce.Task::getOrganization) | |||
.containsOnly(organization.getKey()); | |||
assertThat(response.getCurrent().getOrganization()).isEqualTo(organization.getKey()); | |||
} | |||
@@ -118,9 +119,9 @@ public class ComponentActionTest { | |||
SnapshotDto analysis = db.components().insertSnapshot(project); | |||
insertActivity("T1", project, CeActivityDto.Status.SUCCESS, analysis); | |||
WsCe.ProjectResponse response = ws.newRequest() | |||
Ce.ProjectResponse response = ws.newRequest() | |||
.setParam(PARAM_COMPONENT, project.getDbKey()) | |||
.executeProtobuf(WsCe.ProjectResponse.class); | |||
.executeProtobuf(Ce.ProjectResponse.class); | |||
assertThat(response.hasCurrent()).isTrue(); | |||
assertThat(response.getCurrent().getId()).isEqualTo("T1"); | |||
assertThat(response.getCurrent().getAnalysisId()).isEqualTo(analysis.getUuid()); | |||
@@ -133,9 +134,9 @@ public class ComponentActionTest { | |||
SnapshotDto analysis = db.components().insertSnapshot(project); | |||
insertActivity("T1", project, CeActivityDto.Status.SUCCESS, analysis); | |||
WsCe.ProjectResponse response = ws.newRequest() | |||
Ce.ProjectResponse response = ws.newRequest() | |||
.setParam(PARAM_COMPONENT_ID, project.uuid()) | |||
.executeProtobuf(WsCe.ProjectResponse.class); | |||
.executeProtobuf(Ce.ProjectResponse.class); | |||
assertThat(response.hasCurrent()).isTrue(); | |||
assertThat(response.getCurrent().getId()).isEqualTo("T1"); | |||
assertThat(response.getCurrent().getAnalysisId()).isEqualTo(analysis.getUuid()); | |||
@@ -151,9 +152,9 @@ public class ComponentActionTest { | |||
insertActivity("T4", project, CeActivityDto.Status.CANCELED); | |||
insertActivity("T5", project, CeActivityDto.Status.CANCELED); | |||
WsCe.ProjectResponse response = ws.newRequest() | |||
Ce.ProjectResponse response = ws.newRequest() | |||
.setParam(PARAM_COMPONENT, project.getKey()) | |||
.executeProtobuf(WsCe.ProjectResponse.class); | |||
.executeProtobuf(Ce.ProjectResponse.class); | |||
assertThat(response.getQueueCount()).isEqualTo(0); | |||
// T3 is the latest task executed on PROJECT_1 ignoring Canceled ones | |||
assertThat(response.hasCurrent()).isTrue(); | |||
@@ -170,14 +171,14 @@ public class ComponentActionTest { | |||
insertCharacteristic(activity, BRANCH_KEY, longLivingBranch.getBranch()); | |||
insertCharacteristic(activity, BRANCH_TYPE_KEY, LONG.name()); | |||
WsCe.ProjectResponse response = ws.newRequest() | |||
Ce.ProjectResponse response = ws.newRequest() | |||
.setParam(PARAM_COMPONENT, project.getKey()) | |||
.executeProtobuf(WsCe.ProjectResponse.class); | |||
.executeProtobuf(Ce.ProjectResponse.class); | |||
assertThat(response.getCurrent()) | |||
.extracting(WsCe.Task::getId, WsCe.Task::getBranch, WsCe.Task::getBranchType, WsCe.Task::getStatus, WsCe.Task::getComponentKey) | |||
.extracting(Ce.Task::getId, Ce.Task::getBranch, Ce.Task::getBranchType, Ce.Task::getStatus, Ce.Task::getComponentKey) | |||
.containsOnly( | |||
"T1", longLivingBranch.getBranch(), Common.BranchType.LONG, WsCe.TaskStatus.SUCCESS, project.getKey()); | |||
"T1", longLivingBranch.getBranch(), Common.BranchType.LONG, Ce.TaskStatus.SUCCESS, project.getKey()); | |||
} | |||
@Test | |||
@@ -192,15 +193,15 @@ public class ComponentActionTest { | |||
insertCharacteristic(queue2, BRANCH_KEY, longLivingBranch.getBranch()); | |||
insertCharacteristic(queue2, BRANCH_TYPE_KEY, LONG.name()); | |||
WsCe.ProjectResponse response = ws.newRequest() | |||
Ce.ProjectResponse response = ws.newRequest() | |||
.setParam(PARAM_COMPONENT, longLivingBranch.getKey()) | |||
.executeProtobuf(WsCe.ProjectResponse.class); | |||
.executeProtobuf(Ce.ProjectResponse.class); | |||
assertThat(response.getQueueList()) | |||
.extracting(WsCe.Task::getId, WsCe.Task::getBranch, WsCe.Task::getBranchType, WsCe.Task::getStatus, WsCe.Task::getComponentKey) | |||
.extracting(Ce.Task::getId, Ce.Task::getBranch, Ce.Task::getBranchType, Ce.Task::getStatus, Ce.Task::getComponentKey) | |||
.containsOnly( | |||
tuple("T1", longLivingBranch.getBranch(), Common.BranchType.LONG, WsCe.TaskStatus.IN_PROGRESS, project.getKey()), | |||
tuple("T2", longLivingBranch.getBranch(), Common.BranchType.LONG, WsCe.TaskStatus.PENDING, project.getKey())); | |||
tuple("T1", longLivingBranch.getBranch(), Common.BranchType.LONG, Ce.TaskStatus.IN_PROGRESS, project.getKey()), | |||
tuple("T2", longLivingBranch.getBranch(), Common.BranchType.LONG, Ce.TaskStatus.PENDING, project.getKey())); | |||
} | |||
@Test | |||
@@ -217,12 +218,12 @@ public class ComponentActionTest { | |||
insertCharacteristic(shortLivingBranchQueue, BRANCH_KEY, shortLivingBranch.getBranch()); | |||
insertCharacteristic(shortLivingBranchQueue, BRANCH_TYPE_KEY, SHORT.name()); | |||
WsCe.ProjectResponse response = ws.newRequest() | |||
Ce.ProjectResponse response = ws.newRequest() | |||
.setParam(PARAM_COMPONENT, longLivingBranch.getKey()) | |||
.executeProtobuf(WsCe.ProjectResponse.class); | |||
.executeProtobuf(Ce.ProjectResponse.class); | |||
assertThat(response.getQueueList()) | |||
.extracting(WsCe.Task::getId, WsCe.Task::getComponentKey, WsCe.Task::getBranch, WsCe.Task::getBranchType) | |||
.extracting(Ce.Task::getId, Ce.Task::getComponentKey, Ce.Task::getBranch, Ce.Task::getBranchType) | |||
.containsOnly( | |||
tuple("Main", project.getKey(), "", Common.BranchType.UNKNOWN_BRANCH_TYPE), | |||
tuple("Long", longLivingBranch.getKey(), longLivingBranch.getBranch(), Common.BranchType.LONG), | |||
@@ -236,9 +237,9 @@ public class ComponentActionTest { | |||
SnapshotDto analysis = db.components().insertSnapshot(project); | |||
insertActivity("T1", project, CeActivityDto.Status.SUCCESS, analysis); | |||
WsCe.ProjectResponse response = ws.newRequest() | |||
Ce.ProjectResponse response = ws.newRequest() | |||
.setParam("componentKey", project.getKey()) | |||
.executeProtobuf(WsCe.ProjectResponse.class); | |||
.executeProtobuf(Ce.ProjectResponse.class); | |||
assertThat(response.hasCurrent()).isTrue(); | |||
assertThat(response.getCurrent().getId()).isEqualTo("T1"); | |||
assertThat(response.getCurrent().getAnalysisId()).isEqualTo(analysis.getUuid()); |
@@ -37,8 +37,9 @@ import org.sonar.server.organization.TestDefaultOrganizationProvider; | |||
import org.sonar.server.ws.TestResponse; | |||
import org.sonar.server.ws.WsActionTester; | |||
import org.sonar.test.JsonAssert; | |||
import org.sonarqube.ws.Ce; | |||
import org.sonarqube.ws.MediaTypes; | |||
import org.sonarqube.ws.WsCe; | |||
import org.sonarqube.ws.Ce; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.assertj.core.api.Assertions.entry; | |||
@@ -77,12 +78,12 @@ public class SubmitActionTest { | |||
when(reportSubmitter.submit(eq(organizationKey), eq("my_project"), Matchers.isNull(String.class), eq("My Project"), | |||
anyMapOf(String.class, String.class), any(InputStream.class))).thenReturn(A_CE_TASK); | |||
WsCe.SubmitResponse submitResponse = tester.newRequest() | |||
Ce.SubmitResponse submitResponse = tester.newRequest() | |||
.setParam("projectKey", "my_project") | |||
.setParam("projectName", "My Project") | |||
.setPart("report", new ByteArrayInputStream("{binary}".getBytes()), "foo.bar") | |||
.setMethod("POST") | |||
.executeProtobuf(WsCe.SubmitResponse.class); | |||
.executeProtobuf(Ce.SubmitResponse.class); | |||
verify(reportSubmitter).submit(eq(organizationKey), eq("my_project"), Matchers.isNull(String.class), eq("My Project"), | |||
anyMapOf(String.class, String.class), any(InputStream.class)); | |||
@@ -97,13 +98,13 @@ public class SubmitActionTest { | |||
anyMapOf(String.class, String.class), any(InputStream.class))).thenReturn(A_CE_TASK); | |||
String[] characteristics = {"branch=branch1", "key=value1=value2"}; | |||
WsCe.SubmitResponse submitResponse = tester.newRequest() | |||
Ce.SubmitResponse submitResponse = tester.newRequest() | |||
.setParam("projectKey", "my_project") | |||
.setParam("projectName", "My Project") | |||
.setMultiParam("characteristic", Arrays.asList(characteristics)) | |||
.setPart("report", new ByteArrayInputStream("{binary}".getBytes()), "foo.bar") | |||
.setMethod("POST") | |||
.executeProtobuf(WsCe.SubmitResponse.class); | |||
.executeProtobuf(Ce.SubmitResponse.class); | |||
assertThat(submitResponse.getTaskId()).isEqualTo("TASK_1"); | |||
verify(reportSubmitter).submit(eq(organizationKey), eq("my_project"), Matchers.isNull(String.class), eq("My Project"), |
@@ -41,8 +41,9 @@ import org.sonar.server.exceptions.ForbiddenException; | |||
import org.sonar.server.exceptions.NotFoundException; | |||
import org.sonar.server.tester.UserSessionRule; | |||
import org.sonar.server.ws.WsActionTester; | |||
import org.sonarqube.ws.Ce; | |||
import org.sonarqube.ws.Common; | |||
import org.sonarqube.ws.WsCe; | |||
import org.sonarqube.ws.Ce; | |||
import static java.util.Collections.singleton; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
@@ -88,12 +89,12 @@ public class TaskActionTest { | |||
queueDto.setSubmitterLogin("john"); | |||
persist(queueDto); | |||
WsCe.TaskResponse taskResponse = ws.newRequest() | |||
Ce.TaskResponse taskResponse = ws.newRequest() | |||
.setParam("id", SOME_TASK_UUID) | |||
.executeProtobuf(WsCe.TaskResponse.class); | |||
.executeProtobuf(Ce.TaskResponse.class); | |||
assertThat(taskResponse.getTask().getOrganization()).isEqualTo(organizationDto.getKey()); | |||
assertThat(taskResponse.getTask().getId()).isEqualTo(SOME_TASK_UUID); | |||
assertThat(taskResponse.getTask().getStatus()).isEqualTo(WsCe.TaskStatus.PENDING); | |||
assertThat(taskResponse.getTask().getStatus()).isEqualTo(Ce.TaskStatus.PENDING); | |||
assertThat(taskResponse.getTask().getSubmitterLogin()).isEqualTo("john"); | |||
assertThat(taskResponse.getTask().getComponentId()).isEqualTo(project.uuid()); | |||
assertThat(taskResponse.getTask().getComponentKey()).isEqualTo(project.getDbKey()); | |||
@@ -109,13 +110,13 @@ public class TaskActionTest { | |||
CeActivityDto activityDto = createActivityDto(SOME_TASK_UUID); | |||
persist(activityDto); | |||
WsCe.TaskResponse taskResponse = ws.newRequest() | |||
Ce.TaskResponse taskResponse = ws.newRequest() | |||
.setParam("id", SOME_TASK_UUID) | |||
.executeProtobuf(WsCe.TaskResponse.class); | |||
WsCe.Task task = taskResponse.getTask(); | |||
.executeProtobuf(Ce.TaskResponse.class); | |||
Ce.Task task = taskResponse.getTask(); | |||
assertThat(task.getOrganization()).isEqualTo(organizationDto.getKey()); | |||
assertThat(task.getId()).isEqualTo(SOME_TASK_UUID); | |||
assertThat(task.getStatus()).isEqualTo(WsCe.TaskStatus.FAILED); | |||
assertThat(task.getStatus()).isEqualTo(Ce.TaskStatus.FAILED); | |||
assertThat(task.getComponentId()).isEqualTo(project.uuid()); | |||
assertThat(task.getComponentKey()).isEqualTo(project.getDbKey()); | |||
assertThat(task.getComponentName()).isEqualTo(project.name()); | |||
@@ -135,12 +136,12 @@ public class TaskActionTest { | |||
insertCharacteristic(activity, BRANCH_KEY, longLivingBranch.getBranch()); | |||
insertCharacteristic(activity, BRANCH_TYPE_KEY, LONG.name()); | |||
WsCe.TaskResponse taskResponse = ws.newRequest() | |||
Ce.TaskResponse taskResponse = ws.newRequest() | |||
.setParam("id", SOME_TASK_UUID) | |||
.executeProtobuf(WsCe.TaskResponse.class); | |||
.executeProtobuf(Ce.TaskResponse.class); | |||
assertThat(taskResponse.getTask()) | |||
.extracting(WsCe.Task::getId, WsCe.Task::getBranch, WsCe.Task::getBranchType, WsCe.Task::getComponentKey) | |||
.extracting(Ce.Task::getId, Ce.Task::getBranch, Ce.Task::getBranchType, Ce.Task::getComponentKey) | |||
.containsExactlyInAnyOrder(SOME_TASK_UUID, longLivingBranch.getBranch(), Common.BranchType.LONG, longLivingBranch.getKey()); | |||
} | |||
@@ -152,12 +153,12 @@ public class TaskActionTest { | |||
insertCharacteristic(queueDto, BRANCH_KEY, branch); | |||
insertCharacteristic(queueDto, BRANCH_TYPE_KEY, LONG.name()); | |||
WsCe.TaskResponse taskResponse = ws.newRequest() | |||
Ce.TaskResponse taskResponse = ws.newRequest() | |||
.setParam("id", SOME_TASK_UUID) | |||
.executeProtobuf(WsCe.TaskResponse.class); | |||
.executeProtobuf(Ce.TaskResponse.class); | |||
assertThat(taskResponse.getTask()) | |||
.extracting(WsCe.Task::getId, WsCe.Task::getBranch, WsCe.Task::getBranchType, WsCe.Task::hasComponentKey) | |||
.extracting(Ce.Task::getId, Ce.Task::getBranch, Ce.Task::getBranchType, Ce.Task::hasComponentKey) | |||
.containsExactlyInAnyOrder(SOME_TASK_UUID, branch, Common.BranchType.LONG, false); | |||
} | |||
@@ -170,11 +171,11 @@ public class TaskActionTest { | |||
.setErrorStacktrace("error stack"); | |||
persist(activityDto); | |||
WsCe.TaskResponse taskResponse = ws.newRequest() | |||
Ce.TaskResponse taskResponse = ws.newRequest() | |||
.setParam("id", SOME_TASK_UUID) | |||
.setParam("additionalFields", "stacktrace") | |||
.executeProtobuf(WsCe.TaskResponse.class); | |||
WsCe.Task task = taskResponse.getTask(); | |||
.executeProtobuf(Ce.TaskResponse.class); | |||
Ce.Task task = taskResponse.getTask(); | |||
assertThat(task.getId()).isEqualTo(SOME_TASK_UUID); | |||
assertThat(task.getErrorMessage()).isEqualTo(activityDto.getErrorMessage()); | |||
assertThat(task.hasErrorStacktrace()).isTrue(); | |||
@@ -190,10 +191,10 @@ public class TaskActionTest { | |||
.setErrorStacktrace("error stack"); | |||
persist(activityDto); | |||
WsCe.TaskResponse taskResponse = ws.newRequest() | |||
Ce.TaskResponse taskResponse = ws.newRequest() | |||
.setParam("id", SOME_TASK_UUID) | |||
.executeProtobuf(WsCe.TaskResponse.class); | |||
WsCe.Task task = taskResponse.getTask(); | |||
.executeProtobuf(Ce.TaskResponse.class); | |||
Ce.Task task = taskResponse.getTask(); | |||
assertThat(task.getId()).isEqualTo(SOME_TASK_UUID); | |||
assertThat(task.getErrorMessage()).isEqualTo(activityDto.getErrorMessage()); | |||
assertThat(task.hasErrorStacktrace()).isFalse(); | |||
@@ -207,11 +208,11 @@ public class TaskActionTest { | |||
persist(createActivityDto(SOME_TASK_UUID)); | |||
persistScannerContext(SOME_TASK_UUID, scannerContext); | |||
WsCe.TaskResponse taskResponse = ws.newRequest() | |||
Ce.TaskResponse taskResponse = ws.newRequest() | |||
.setParam("id", SOME_TASK_UUID) | |||
.setParam("additionalFields", "scannerContext") | |||
.executeProtobuf(WsCe.TaskResponse.class); | |||
WsCe.Task task = taskResponse.getTask(); | |||
.executeProtobuf(Ce.TaskResponse.class); | |||
Ce.Task task = taskResponse.getTask(); | |||
assertThat(task.getId()).isEqualTo(SOME_TASK_UUID); | |||
assertThat(task.getScannerContext()).isEqualTo(scannerContext); | |||
} | |||
@@ -224,11 +225,11 @@ public class TaskActionTest { | |||
persist(createActivityDto(SOME_TASK_UUID)); | |||
persistScannerContext(SOME_TASK_UUID, scannerContext); | |||
WsCe.TaskResponse taskResponse = ws.newRequest() | |||
Ce.TaskResponse taskResponse = ws.newRequest() | |||
.setParam("id", SOME_TASK_UUID) | |||
.setParam("additionalFields", "stacktrace") | |||
.executeProtobuf(WsCe.TaskResponse.class); | |||
WsCe.Task task = taskResponse.getTask(); | |||
.executeProtobuf(Ce.TaskResponse.class); | |||
Ce.Task task = taskResponse.getTask(); | |||
assertThat(task.getId()).isEqualTo(SOME_TASK_UUID); | |||
assertThat(task.hasScannerContext()).isFalse(); | |||
} | |||
@@ -241,10 +242,10 @@ public class TaskActionTest { | |||
.setErrorMessage("error msg"); | |||
persist(activityDto); | |||
WsCe.TaskResponse taskResponse = ws.newRequest() | |||
Ce.TaskResponse taskResponse = ws.newRequest() | |||
.setParam("id", SOME_TASK_UUID) | |||
.executeProtobuf(WsCe.TaskResponse.class); | |||
WsCe.Task task = taskResponse.getTask(); | |||
.executeProtobuf(Ce.TaskResponse.class); | |||
Ce.Task task = taskResponse.getTask(); | |||
assertThat(task.getId()).isEqualTo(SOME_TASK_UUID); | |||
assertThat(task.getErrorMessage()).isEqualTo(activityDto.getErrorMessage()); | |||
assertThat(task.hasErrorStacktrace()).isFalse(); | |||
@@ -433,10 +434,10 @@ public class TaskActionTest { | |||
} | |||
private void call(String taskUuid) { | |||
WsCe.TaskResponse taskResponse = ws.newRequest() | |||
Ce.TaskResponse taskResponse = ws.newRequest() | |||
.setParam("id", taskUuid) | |||
.executeProtobuf(WsCe.TaskResponse.class); | |||
WsCe.Task task = taskResponse.getTask(); | |||
.executeProtobuf(Ce.TaskResponse.class); | |||
Ce.Task task = taskResponse.getTask(); | |||
assertThat(task.getId()).isEqualTo(taskUuid); | |||
} | |||
@@ -31,7 +31,8 @@ import org.sonar.db.ce.CeActivityDto; | |||
import org.sonar.db.ce.CeQueueDto; | |||
import org.sonar.db.ce.CeTaskTypes; | |||
import org.sonar.db.organization.OrganizationDto; | |||
import org.sonarqube.ws.WsCe; | |||
import org.sonarqube.ws.Ce; | |||
import org.sonarqube.ws.Ce; | |||
import static java.util.Arrays.asList; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
@@ -54,11 +55,11 @@ public class TaskFormatterTest { | |||
dto.setStatus(CeQueueDto.Status.PENDING); | |||
dto.setCreatedAt(1_450_000_000_000L); | |||
WsCe.Task wsTask = underTest.formatQueue(db.getSession(), dto); | |||
Ce.Task wsTask = underTest.formatQueue(db.getSession(), dto); | |||
assertThat(wsTask.getType()).isEqualTo("TYPE"); | |||
assertThat(wsTask.getId()).isEqualTo("UUID"); | |||
assertThat(wsTask.getStatus()).isEqualTo(WsCe.TaskStatus.PENDING); | |||
assertThat(wsTask.getStatus()).isEqualTo(Ce.TaskStatus.PENDING); | |||
assertThat(wsTask.getLogs()).isFalse(); | |||
assertThat(wsTask.getSubmittedAt()).isEqualTo(DateUtils.formatDateTime(new Date(1_450_000_000_000L))); | |||
assertThat(wsTask.hasScannerContext()).isFalse(); | |||
@@ -88,7 +89,7 @@ public class TaskFormatterTest { | |||
dto.setComponentUuid(uuid); | |||
dto.setSubmitterLogin("rob"); | |||
WsCe.Task wsTask = underTest.formatQueue(db.getSession(), dto); | |||
Ce.Task wsTask = underTest.formatQueue(db.getSession(), dto); | |||
assertThat(wsTask.getType()).isEqualTo("TYPE"); | |||
assertThat(wsTask.getId()).isEqualTo("UUID"); | |||
@@ -96,7 +97,7 @@ public class TaskFormatterTest { | |||
assertThat(wsTask.getComponentKey()).isEqualTo("COMPONENT_KEY"); | |||
assertThat(wsTask.getComponentName()).isEqualTo("Component Name"); | |||
assertThat(wsTask.getComponentQualifier()).isEqualTo("TRK"); | |||
assertThat(wsTask.getStatus()).isEqualTo(WsCe.TaskStatus.IN_PROGRESS); | |||
assertThat(wsTask.getStatus()).isEqualTo(Ce.TaskStatus.IN_PROGRESS); | |||
assertThat(wsTask.getLogs()).isFalse(); | |||
assertThat(wsTask.getSubmitterLogin()).isEqualTo("rob"); | |||
assertThat(wsTask.hasExecutionTimeMs()).isTrue(); | |||
@@ -113,7 +114,7 @@ public class TaskFormatterTest { | |||
dto.setCreatedAt(1_450_000_000_000L); | |||
dto.setComponentUuid("DOES_NOT_EXIST"); | |||
WsCe.Task wsTask = underTest.formatQueue(db.getSession(), dto); | |||
Ce.Task wsTask = underTest.formatQueue(db.getSession(), dto); | |||
assertThat(wsTask.getComponentId()).isEqualTo("DOES_NOT_EXIST"); | |||
assertThat(wsTask.hasComponentKey()).isFalse(); | |||
@@ -132,7 +133,7 @@ public class TaskFormatterTest { | |||
dto.setStartedAt(startedAt); | |||
when(system2.now()).thenReturn(now); | |||
WsCe.Task wsTask = underTest.formatQueue(db.getSession(), dto); | |||
Ce.Task wsTask = underTest.formatQueue(db.getSession(), dto); | |||
assertThat(wsTask.getExecutionTimeMs()).isEqualTo(now - startedAt); | |||
} | |||
@@ -151,7 +152,7 @@ public class TaskFormatterTest { | |||
dto2.setStatus(CeQueueDto.Status.PENDING); | |||
dto2.setCreatedAt(1_451_000_000_000L); | |||
Iterable<WsCe.Task> wsTasks = underTest.formatQueue(db.getSession(), asList(dto1, dto2)); | |||
Iterable<Ce.Task> wsTasks = underTest.formatQueue(db.getSession(), asList(dto1, dto2)); | |||
assertThat(wsTasks).extracting("id").containsExactly("UUID1", "UUID2"); | |||
} | |||
@@ -159,11 +160,11 @@ public class TaskFormatterTest { | |||
public void formatActivity() { | |||
CeActivityDto dto = newActivity("UUID", "COMPONENT_UUID", CeActivityDto.Status.FAILED); | |||
WsCe.Task wsTask = underTest.formatActivity(db.getSession(), dto, null); | |||
Ce.Task wsTask = underTest.formatActivity(db.getSession(), dto, null); | |||
assertThat(wsTask.getType()).isEqualTo(CeTaskTypes.REPORT); | |||
assertThat(wsTask.getId()).isEqualTo("UUID"); | |||
assertThat(wsTask.getStatus()).isEqualTo(WsCe.TaskStatus.FAILED); | |||
assertThat(wsTask.getStatus()).isEqualTo(Ce.TaskStatus.FAILED); | |||
assertThat(wsTask.getSubmittedAt()).isEqualTo(DateUtils.formatDateTime(new Date(1_450_000_000_000L))); | |||
assertThat(wsTask.getExecutionTimeMs()).isEqualTo(500L); | |||
assertThat(wsTask.getAnalysisId()).isEqualTo("U1"); | |||
@@ -176,7 +177,7 @@ public class TaskFormatterTest { | |||
CeActivityDto dto = newActivity("UUID", "COMPONENT_UUID", CeActivityDto.Status.FAILED); | |||
String expected = "scanner context baby!"; | |||
WsCe.Task wsTask = underTest.formatActivity(db.getSession(), dto, expected); | |||
Ce.Task wsTask = underTest.formatActivity(db.getSession(), dto, expected); | |||
assertThat(wsTask.hasScannerContext()).isTrue(); | |||
assertThat(wsTask.getScannerContext()).isEqualTo(expected); | |||
@@ -187,7 +188,7 @@ public class TaskFormatterTest { | |||
CeActivityDto dto1 = newActivity("UUID1", "COMPONENT_UUID", CeActivityDto.Status.FAILED); | |||
CeActivityDto dto2 = newActivity("UUID2", "COMPONENT_UUID", CeActivityDto.Status.SUCCESS); | |||
Iterable<WsCe.Task> wsTasks = underTest.formatActivity(db.getSession(), asList(dto1, dto2)); | |||
Iterable<Ce.Task> wsTasks = underTest.formatActivity(db.getSession(), asList(dto1, dto2)); | |||
assertThat(wsTasks).extracting("id").containsExactly("UUID1", "UUID2"); | |||
} | |||
@@ -199,7 +200,7 @@ public class TaskFormatterTest { | |||
.setErrorStacktrace("error stacktrace") | |||
.setErrorType("anErrorType"); | |||
WsCe.Task task = underTest.formatActivity(db.getSession(), Collections.singletonList(dto)).iterator().next(); | |||
Ce.Task task = underTest.formatActivity(db.getSession(), Collections.singletonList(dto)).iterator().next(); | |||
assertThat(task.getErrorMessage()).isEqualTo(dto.getErrorMessage()); | |||
assertThat(task.getErrorStacktrace()).isEqualTo(dto.getErrorStacktrace()); | |||
@@ -211,7 +212,7 @@ public class TaskFormatterTest { | |||
CeActivityDto dto = newActivity("UUID", "COMPONENT_UUID", CeActivityDto.Status.FAILED) | |||
.setErrorMessage("error msg"); | |||
WsCe.Task task = underTest.formatActivity(db.getSession(), Collections.singletonList(dto)).iterator().next(); | |||
Ce.Task task = underTest.formatActivity(db.getSession(), Collections.singletonList(dto)).iterator().next(); | |||
assertThat(task.getErrorMessage()).isEqualTo(dto.getErrorMessage()); | |||
assertThat(task.hasErrorStacktrace()).isFalse(); | |||
@@ -222,7 +223,7 @@ public class TaskFormatterTest { | |||
CeActivityDto dto = newActivity("UUID", "COMPONENT_UUID", CeActivityDto.Status.FAILED) | |||
.setErrorMessage("error msg"); | |||
WsCe.Task task = underTest.formatActivity(db.getSession(), Collections.singletonList(dto)).iterator().next(); | |||
Ce.Task task = underTest.formatActivity(db.getSession(), Collections.singletonList(dto)).iterator().next(); | |||
assertThat(task.getErrorMessage()).isEqualTo(dto.getErrorMessage()); | |||
assertThat(task.hasErrorStacktrace()).isFalse(); |
@@ -28,7 +28,7 @@ import org.sonar.ce.configuration.WorkerCountProvider; | |||
import org.sonar.server.exceptions.ForbiddenException; | |||
import org.sonar.server.tester.UserSessionRule; | |||
import org.sonar.server.ws.WsActionTester; | |||
import org.sonarqube.ws.WsCe.WorkerCountResponse; | |||
import org.sonarqube.ws.Ce.WorkerCountResponse; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.mockito.Mockito.mock; |
@@ -51,8 +51,8 @@ import org.sonar.server.tester.UserSessionRule; | |||
import org.sonar.server.ws.TestRequest; | |||
import org.sonar.server.ws.WsActionTester; | |||
import org.sonarqube.ws.MediaTypes; | |||
import org.sonarqube.ws.WsComponents.Component; | |||
import org.sonarqube.ws.WsComponents.SearchWsResponse; | |||
import org.sonarqube.ws.Components.Component; | |||
import org.sonarqube.ws.Components.SearchWsResponse; | |||
import org.sonarqube.ws.client.component.SearchWsRequest; | |||
import static java.util.Arrays.asList; |
@@ -57,8 +57,8 @@ import org.sonar.server.ws.KeyExamples; | |||
import org.sonar.server.ws.TestRequest; | |||
import org.sonar.server.ws.WsActionTester; | |||
import org.sonarqube.ws.Common; | |||
import org.sonarqube.ws.WsComponents.Component; | |||
import org.sonarqube.ws.WsComponents.SearchProjectsWsResponse; | |||
import org.sonarqube.ws.Components.Component; | |||
import org.sonarqube.ws.Components.SearchProjectsWsResponse; | |||
import org.sonarqube.ws.client.component.SearchProjectsRequest; | |||
import static java.util.Arrays.asList; |
@@ -32,7 +32,6 @@ import org.sonar.api.utils.System2; | |||
import org.sonar.api.web.UserRole; | |||
import org.sonar.db.DbTester; | |||
import org.sonar.db.component.ComponentDto; | |||
import org.sonar.db.component.SnapshotDto; | |||
import org.sonar.db.organization.OrganizationDto; | |||
import org.sonar.server.component.TestComponentFinder; | |||
import org.sonar.server.exceptions.ForbiddenException; | |||
@@ -40,8 +39,8 @@ import org.sonar.server.exceptions.NotFoundException; | |||
import org.sonar.server.tester.UserSessionRule; | |||
import org.sonar.server.ws.TestRequest; | |||
import org.sonar.server.ws.WsActionTester; | |||
import org.sonarqube.ws.WsComponents.Component; | |||
import org.sonarqube.ws.WsComponents.ShowWsResponse; | |||
import org.sonarqube.ws.Components.Component; | |||
import org.sonarqube.ws.Components.ShowWsResponse; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.assertj.core.api.Assertions.tuple; |
@@ -50,11 +50,11 @@ import org.sonar.server.ws.TestRequest; | |||
import org.sonar.server.ws.TestResponse; | |||
import org.sonar.server.ws.WsActionTester; | |||
import org.sonarqube.ws.MediaTypes; | |||
import org.sonarqube.ws.WsComponents.SuggestionsWsResponse; | |||
import org.sonarqube.ws.WsComponents.SuggestionsWsResponse.Category; | |||
import org.sonarqube.ws.WsComponents.SuggestionsWsResponse.Organization; | |||
import org.sonarqube.ws.WsComponents.SuggestionsWsResponse.Project; | |||
import org.sonarqube.ws.WsComponents.SuggestionsWsResponse.Suggestion; | |||
import org.sonarqube.ws.Components.SuggestionsWsResponse; | |||
import org.sonarqube.ws.Components.SuggestionsWsResponse.Category; | |||
import org.sonarqube.ws.Components.SuggestionsWsResponse.Organization; | |||
import org.sonarqube.ws.Components.SuggestionsWsResponse.Project; | |||
import org.sonarqube.ws.Components.SuggestionsWsResponse.Suggestion; | |||
import static java.util.Arrays.asList; | |||
import static java.util.Collections.singletonList; |