Skip to content

Commit

Permalink
SONAR-6821 WS qualityprofiles/search load default quality profiles or…
Browse files Browse the repository at this point in the history
… project quality profiles
  • Loading branch information
teryk committed Sep 17, 2015
1 parent aaf2651 commit 9ca6bac
Show file tree
Hide file tree
Showing 22 changed files with 596 additions and 248 deletions.
2 changes: 1 addition & 1 deletion microbenchmark-template/pom.xml
Expand Up @@ -28,7 +28,7 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>${project.groupId}</groupId> <groupId>${project.groupId}</groupId>
<artifactId>sonar-dbClient</artifactId> <artifactId>sonar-db</artifactId>
<version>${project.version}</version> <version>${project.version}</version>
</dependency> </dependency>
<dependency> <dependency>
Expand Down
Expand Up @@ -252,6 +252,7 @@
import org.sonar.server.qualityprofile.ws.RestoreAction; import org.sonar.server.qualityprofile.ws.RestoreAction;
import org.sonar.server.qualityprofile.ws.RestoreBuiltInAction; import org.sonar.server.qualityprofile.ws.RestoreBuiltInAction;
import org.sonar.server.qualityprofile.ws.RuleActivationActions; import org.sonar.server.qualityprofile.ws.RuleActivationActions;
import org.sonar.server.qualityprofile.ws.SearchDataLoader;
import org.sonar.server.qualityprofile.ws.SetDefaultAction; import org.sonar.server.qualityprofile.ws.SetDefaultAction;
import org.sonar.server.rule.CommonRuleDefinitionsImpl; import org.sonar.server.rule.CommonRuleDefinitionsImpl;
import org.sonar.server.rule.DefaultRuleFinder; import org.sonar.server.rule.DefaultRuleFinder;
Expand Down Expand Up @@ -344,16 +345,16 @@ protected void configureLevel() {
IndexDefinitions.class, IndexDefinitions.class,
IndexCreator.class, IndexCreator.class,


// Activity // Activity
ActivityService.class, ActivityService.class,
ActivityIndexDefinition.class, ActivityIndexDefinition.class,
ActivityIndexer.class, ActivityIndexer.class,
ActivityIndex.class, ActivityIndex.class,


// batch // batch
BatchWsModule.class, BatchWsModule.class,


// Dashboard // Dashboard
DashboardsWs.class, DashboardsWs.class,
org.sonar.server.dashboard.ws.ShowAction.class, org.sonar.server.dashboard.ws.ShowAction.class,
ProjectDefaultDashboard.class, ProjectDefaultDashboard.class,
Expand Down Expand Up @@ -391,12 +392,12 @@ protected void configureLevel() {
ProjectIssueFilterWidget.class, ProjectIssueFilterWidget.class,
IssueTagCloudWidget.class, IssueTagCloudWidget.class,


// update center // update center
UpdateCenterClient.class, UpdateCenterClient.class,
UpdateCenterMatrixFactory.class, UpdateCenterMatrixFactory.class,
UpdateCenterWs.class, UpdateCenterWs.class,


// quality profile // quality profile
XMLProfileParser.class, XMLProfileParser.class,
XMLProfileSerializer.class, XMLProfileSerializer.class,
AnnotationProfileParser.class, AnnotationProfileParser.class,
Expand All @@ -408,6 +409,7 @@ protected void configureLevel() {
BuiltInProfiles.class, BuiltInProfiles.class,
RestoreBuiltInAction.class, RestoreBuiltInAction.class,
org.sonar.server.qualityprofile.ws.SearchAction.class, org.sonar.server.qualityprofile.ws.SearchAction.class,
SearchDataLoader.class,
SetDefaultAction.class, SetDefaultAction.class,
ProjectsAction.class, ProjectsAction.class,
org.sonar.server.qualityprofile.ws.DeleteAction.class, org.sonar.server.qualityprofile.ws.DeleteAction.class,
Expand Down Expand Up @@ -439,7 +441,7 @@ protected void configureLevel() {
QProfileReset.class, QProfileReset.class,
RubyQProfileActivityService.class, RubyQProfileActivityService.class,


// rule // rule
AnnotationRuleParser.class, AnnotationRuleParser.class,
XMLRuleParser.class, XMLRuleParser.class,
DefaultRuleFinder.class, DefaultRuleFinder.class,
Expand Down Expand Up @@ -467,17 +469,17 @@ protected void configureLevel() {
RepositoriesAction.class, RepositoriesAction.class,
org.sonar.server.rule.ws.AppAction.class, org.sonar.server.rule.ws.AppAction.class,


// languages // languages
Languages.class, Languages.class,
LanguageWs.class, LanguageWs.class,
org.sonar.server.language.ws.ListAction.class, org.sonar.server.language.ws.ListAction.class,


// activity // activity
ActivitiesWs.class, ActivitiesWs.class,
org.sonar.server.activity.ws.SearchAction.class, org.sonar.server.activity.ws.SearchAction.class,
ActivityMapping.class, ActivityMapping.class,


// measure // measure
MeasureFilterFactory.class, MeasureFilterFactory.class,
MeasureFilterExecutor.class, MeasureFilterExecutor.class,
MeasureFilterEngine.class, MeasureFilterEngine.class,
Expand All @@ -489,14 +491,14 @@ protected void configureLevel() {
DefaultMetricFinder.class, DefaultMetricFinder.class,
TimeMachineWs.class, TimeMachineWs.class,


// quality gates // quality gates
QualityGateDao.class, QualityGateDao.class,
QualityGateConditionDao.class, QualityGateConditionDao.class,
QualityGates.class, QualityGates.class,
ProjectQgateAssociationDao.class, ProjectQgateAssociationDao.class,
QgateProjectFinder.class, QgateProjectFinder.class,


org.sonar.server.qualitygate.ws.ListAction.class, org.sonar.server.qualitygate.ws.ListAction.class,
org.sonar.server.qualitygate.ws.SearchAction.class, org.sonar.server.qualitygate.ws.SearchAction.class,
org.sonar.server.qualitygate.ws.ShowAction.class, org.sonar.server.qualitygate.ws.ShowAction.class,
org.sonar.server.qualitygate.ws.CreateAction.class, org.sonar.server.qualitygate.ws.CreateAction.class,
Expand All @@ -513,17 +515,17 @@ protected void configureLevel() {
org.sonar.server.qualitygate.ws.AppAction.class, org.sonar.server.qualitygate.ws.AppAction.class,
QGatesWs.class, QGatesWs.class,


// web services // web services
WebServiceEngine.class, WebServiceEngine.class,
ListingWs.class, ListingWs.class,


// localization // localization
L10nWs.class, L10nWs.class,


// authentication // authentication
AuthenticationWs.class, AuthenticationWs.class,


// users // users
SecurityRealmFactory.class, SecurityRealmFactory.class,
DeprecatedUserFinder.class, DeprecatedUserFinder.class,
NewUserNotifier.class, NewUserNotifier.class,
Expand All @@ -545,20 +547,20 @@ protected void configureLevel() {
UserIndex.class, UserIndex.class,
UserUpdater.class, UserUpdater.class,


// groups // groups
GroupMembershipService.class, GroupMembershipService.class,
GroupMembershipFinder.class, GroupMembershipFinder.class,
UserGroupsModule.class, UserGroupsModule.class,


// permissions // permissions
PermissionRepository.class, PermissionRepository.class,
PermissionService.class, PermissionService.class,
PermissionUpdater.class, PermissionUpdater.class,
PermissionTemplateService.class, PermissionTemplateService.class,
PermissionFinder.class, PermissionFinder.class,
PermissionsWsModule.class, PermissionsWsModule.class,


// components // components
ProjectsWsModule.class, ProjectsWsModule.class,
DefaultComponentFinder.class, DefaultComponentFinder.class,
DefaultRubyComponentService.class, DefaultRubyComponentService.class,
Expand All @@ -573,12 +575,12 @@ protected void configureLevel() {
NewAlerts.newMetadata(), NewAlerts.newMetadata(),
ComponentCleanerService.class, ComponentCleanerService.class,


// views // views
ViewIndexDefinition.class, ViewIndexDefinition.class,
ViewIndexer.class, ViewIndexer.class,
ViewIndex.class, ViewIndex.class,


// issues // issues
IssueIndexDefinition.class, IssueIndexDefinition.class,
IssueIndexer.class, IssueIndexer.class,
IssueAuthorizationIndexer.class, IssueAuthorizationIndexer.class,
Expand Down Expand Up @@ -612,13 +614,13 @@ protected void configureLevel() {
EmailNotificationChannel.class, EmailNotificationChannel.class,
AlertsEmailTemplate.class, AlertsEmailTemplate.class,


IssueFilterWsModule.class, IssueFilterWsModule.class,


// action plan // action plan
ActionPlanWs.class, ActionPlanWs.class,
ActionPlanService.class, ActionPlanService.class,


// issues actions // issues actions
AssignAction.class, AssignAction.class,
PlanAction.class, PlanAction.class,
SetSeverityAction.class, SetSeverityAction.class,
Expand All @@ -627,7 +629,7 @@ protected void configureLevel() {
AddTagsAction.class, AddTagsAction.class,
RemoveTagsAction.class, RemoveTagsAction.class,


// technical debt // technical debt
DebtModelService.class, DebtModelService.class,
DebtModelOperations.class, DebtModelOperations.class,
DebtModelLookup.class, DebtModelLookup.class,
Expand All @@ -637,7 +639,7 @@ protected void configureLevel() {
DebtRulesXMLImporter.class, DebtRulesXMLImporter.class,
DebtCharacteristicsXMLImporter.class, DebtCharacteristicsXMLImporter.class,


// source // source
HtmlSourceDecorator.class, HtmlSourceDecorator.class,
SourceService.class, SourceService.class,
SourcesWs.class, SourcesWs.class,
Expand All @@ -648,23 +650,23 @@ protected void configureLevel() {
IndexAction.class, IndexAction.class,
ScmAction.class, ScmAction.class,


// Duplications // Duplications
DuplicationsParser.class, DuplicationsParser.class,
DuplicationsWs.class, DuplicationsWs.class,
DuplicationsJsonWriter.class, DuplicationsJsonWriter.class,
org.sonar.server.duplication.ws.ShowAction.class, org.sonar.server.duplication.ws.ShowAction.class,


// text // text
MacroInterpreter.class, MacroInterpreter.class,
RubyTextService.class, RubyTextService.class,


// Notifications // Notifications
EmailSettings.class, EmailSettings.class,
NotificationService.class, NotificationService.class,
NotificationCenter.class, NotificationCenter.class,
DefaultNotificationManager.class, DefaultNotificationManager.class,


// Tests // Tests
CoverageService.class, CoverageService.class,
TestsWs.class, TestsWs.class,
CoveredFilesAction.class, CoveredFilesAction.class,
Expand All @@ -673,12 +675,12 @@ protected void configureLevel() {
TestIndex.class, TestIndex.class,
TestIndexer.class, TestIndexer.class,


// Properties // Properties
PropertiesWs.class, PropertiesWs.class,


TypeValidationModule.class, TypeValidationModule.class,


// System // System
RestartAction.class, RestartAction.class,
InfoAction.class, InfoAction.class,
UpgradesAction.class, UpgradesAction.class,
Expand All @@ -693,7 +695,7 @@ protected void configureLevel() {
MigrateDbAction.class, MigrateDbAction.class,
DbMigrationStatusAction.class, DbMigrationStatusAction.class,


// Plugins WS // Plugins WS
PluginWSCommons.class, PluginWSCommons.class,
PluginUpdateAggregator.class, PluginUpdateAggregator.class,
InstalledAction.class, InstalledAction.class,
Expand All @@ -706,7 +708,7 @@ protected void configureLevel() {
CancelAllAction.class, CancelAllAction.class,
PluginsWs.class, PluginsWs.class,


// Compute engine // Compute engine
CEQueueStatusImpl.class, CEQueueStatusImpl.class,
ComputeEngineQueueMonitor.class, ComputeEngineQueueMonitor.class,
ReportQueue.class, ReportQueue.class,
Expand All @@ -720,11 +722,11 @@ protected void configureLevel() {
ProjectSettingsFactory.class, ProjectSettingsFactory.class,
IndexPurgeListener.class, IndexPurgeListener.class,


// Views plugin // Views plugin
ViewsBootstrap.class, ViewsBootstrap.class,
ViewsStopper.class, ViewsStopper.class,


// UI // UI
GlobalNavigationAction.class, GlobalNavigationAction.class,
SettingsNavigationAction.class, SettingsNavigationAction.class,
ComponentNavigationAction.class, ComponentNavigationAction.class,
Expand Down
Expand Up @@ -20,13 +20,12 @@


package org.sonar.server.qualityprofile; package org.sonar.server.qualityprofile;


import javax.annotation.CheckForNull;
import javax.annotation.Nullable;
import org.apache.commons.lang.builder.ReflectionToStringBuilder; import org.apache.commons.lang.builder.ReflectionToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle; import org.apache.commons.lang.builder.ToStringStyle;
import org.sonar.db.qualityprofile.QualityProfileDto; import org.sonar.db.qualityprofile.QualityProfileDto;


import javax.annotation.CheckForNull;
import javax.annotation.Nullable;

public class QProfile { public class QProfile {


private int id; private int id;
Expand All @@ -35,6 +34,7 @@ public class QProfile {
private String language; private String language;
private String parent; private String parent;
private boolean isDefault; private boolean isDefault;
private String rulesUpdatedAt;


/** /**
* @deprecated in 4.4 * @deprecated in 4.4
Expand Down Expand Up @@ -94,27 +94,37 @@ public boolean isInherited() {
return parent != null; return parent != null;
} }


public boolean isDefault() {
return isDefault;
}

public QProfile setDefault(boolean isDefault) { public QProfile setDefault(boolean isDefault) {
this.isDefault = isDefault; this.isDefault = isDefault;
return this; return this;
} }


public String getRulesUpdatedAt() {
return rulesUpdatedAt;
}

public QProfile setRulesUpdatedAt(String rulesUpdatedAt) {
this.rulesUpdatedAt = rulesUpdatedAt;
return this;
}

public static QProfile from(QualityProfileDto dto) { public static QProfile from(QualityProfileDto dto) {
return new QProfile() return new QProfile()
.setId(dto.getId()) .setId(dto.getId())
.setKey(dto.getKey()) .setKey(dto.getKey())
.setName(dto.getName()) .setName(dto.getName())
.setLanguage(dto.getLanguage()) .setLanguage(dto.getLanguage())
.setParent(dto.getParentKee()) .setParent(dto.getParentKee())
.setDefault(dto.isDefault()); .setDefault(dto.isDefault())
.setRulesUpdatedAt(dto.getRulesUpdatedAt());
} }


@Override @Override
public String toString() { public String toString() {
return new ReflectionToStringBuilder(this, ToStringStyle.SHORT_PREFIX_STYLE).toString(); return new ReflectionToStringBuilder(this, ToStringStyle.SHORT_PREFIX_STYLE).toString();
} }

public boolean isDefault() {
return isDefault;
}
} }

0 comments on commit 9ca6bac

Please sign in to comment.