@CheckForNull public RuleStatus status() { return RuleStatus.valueOf(getField(RuleIndexDefinition.FIELD_RULE_STATUS)); }
String severity = Severity.defaultSeverity(); String type = null; RuleStatus status = RuleStatus.defaultStatus(); boolean template = false; String gapDescription = null; String s = nodeValue(cursor); if (s != null) { status = RuleStatus.valueOf(s);
@Override public RuleStatus getStatus() { return RuleStatus.defaultStatus(); }
private static void addStatusFacetIfNeeded(SearchOptions options, Map<String, AggregationBuilder> aggregations, StickyFacetBuilder stickyFacetBuilder) { if (options.getFacets().contains(FACET_STATUSES)) { BoolQueryBuilder facetFilter = stickyFacetBuilder.getStickyFacetFilter(FIELD_RULE_STATUS); AggregationBuilder statuses = AggregationBuilders.filter(FACET_STATUSES + "_filter", facetFilter) .subAggregation( AggregationBuilders .terms(FACET_STATUSES) .field(FIELD_RULE_STATUS) .includeExclude(new IncludeExclude(Joiner.on('|').join(ALL_STATUSES_EXCEPT_REMOVED), RuleStatus.REMOVED.toString())) .size(ALL_STATUSES_EXCEPT_REMOVED.size())); aggregations.put(FACET_STATUSES, AggregationBuilders.global(FACET_STATUSES).subAggregation(statuses)); } }
public Common.Rule.Builder formatRule(RuleDefinitionDto rule) { Common.Rule.Builder builder = Common.Rule.newBuilder() .setKey(rule.getKey().toString()) .setName(nullToEmpty(rule.getName())) .setStatus(Common.RuleStatus.valueOf(rule.getStatus().name())); builder.setLang(nullToEmpty(rule.getLanguage())); Language lang = languages.get(rule.getLanguage()); if (lang != null) { builder.setLangName(lang.getName()); } return builder; }
private static boolean matchQuery(RuleDefinitionDto ruleDefinition, RuleQuery ruleQuery) { if (RuleStatus.REMOVED.equals(ruleDefinition.getStatus())) { return false; } String repositoryKey = ruleQuery.getRepositoryKey(); if (ruleQuery.getRepositoryKey() != null && !repositoryKey.equals(ruleDefinition.getRepositoryKey())) { return false; } String key = ruleQuery.getKey(); if (key != null && !key.equals(ruleDefinition.getRuleKey())) { return false; } String configKey = ruleQuery.getConfigKey(); return configKey == null || configKey.equals(ruleDefinition.getConfigKey()); }
public NewRule setStatus(@Nullable RuleStatus s) { this.status = (RuleStatus) ObjectUtils.defaultIfNull(s, RuleStatus.defaultStatus()); return this; }
private static void setStatus(Rules.Rule.Builder ruleResponse, RuleDefinitionDto ruleDto, Set<String> fieldsToReturn) { if (shouldReturnField(fieldsToReturn, FIELD_STATUS) && ruleDto.getStatus() != null) { ruleResponse.setStatus(Common.RuleStatus.valueOf(ruleDto.getStatus().toString())); } }
.setRepositoryKey(rule.getRepositoryKey()) .setSeverity(severity != null ? RulePriority.valueOf(severity) : null) .setStatus(rule.getStatus().name()) .setSystemTags(rule.getSystemTags().toArray(new String[rule.getSystemTags().size()])) .setTags(rule.getTags().toArray(new String[rule.getTags().size()]))
private int updateExistingRule(RuleDefinitionDto ruleDto, NewCustomRule newRule, DbSession dbSession) { if (ruleDto.getStatus().equals(RuleStatus.REMOVED)) { if (newRule.isPreventReactivation()) { throw new ReactivationException(format("A removed rule with the key '%s' already exists", ruleDto.getKey().rule()), ruleDto.getKey()); } else { ruleDto.setStatus(RuleStatus.READY) .setUpdatedAt(system2.now()); dbClient.ruleDao().update(dbSession, ruleDto); } } else { throw new IllegalArgumentException(format("A rule with the key '%s' already exists", ruleDto.getKey().rule())); } return ruleDto.getId(); }
private static RulesDefinition.NewRule loadRule(RulesDefinition.NewExtendedRepository repo, Class clazz, org.sonar.check.Rule ruleAnnotation) { String ruleKey = StringUtils.defaultIfEmpty(ruleAnnotation.key(), clazz.getCanonicalName()); String ruleName = StringUtils.defaultIfEmpty(ruleAnnotation.name(), null); String description = StringUtils.defaultIfEmpty(ruleAnnotation.description(), null); RulesDefinition.NewRule rule = repo.createRule(ruleKey); rule.setName(ruleName).setHtmlDescription(description); rule.setSeverity(ruleAnnotation.priority().name()); rule.setTemplate(ruleAnnotation.cardinality() == Cardinality.MULTIPLE); rule.setStatus(RuleStatus.valueOf(ruleAnnotation.status())); rule.setTags(ruleAnnotation.tags()); List<Field> fields = FieldUtils2.getFields(clazz, true); for (Field field : fields) { loadParameters(rule, field); } return rule; }
newRule.setTemplate(rule.isTemplate()); newRule.setSeverity(rule.getSeverity().toString()); newRule.setStatus(rule.getStatus() == null ? RuleStatus.defaultStatus() : RuleStatus.valueOf(rule.getStatus())); newRule.setTags(rule.getTags()); for (RuleParam param : rule.getParams()) {
@Test public void default_is_ready() { assertThat(RuleStatus.defaultStatus()).isEqualTo(RuleStatus.READY); } }
@Test public void show_rule_with_basic_info() { RuleDefinitionDto rule = db.rules().insert(); RuleParamDto ruleParam = db.rules().insertRuleParam(rule); ShowResponse result = ws.newRequest() .setParam(PARAM_KEY, rule.getKey().toString()) .executeProtobuf(ShowResponse.class); Rule resultRule = result.getRule(); assertThat(resultRule.getKey()).isEqualTo(rule.getKey().toString()); assertThat(resultRule.getRepo()).isEqualTo(rule.getRepositoryKey()); assertThat(resultRule.getName()).isEqualTo(rule.getName()); assertThat(resultRule.getSeverity()).isEqualTo(rule.getSeverityString()); assertThat(resultRule.getStatus().toString()).isEqualTo(rule.getStatus().toString()); assertThat(resultRule.getInternalKey()).isEqualTo(rule.getConfigKey()); assertThat(resultRule.getIsTemplate()).isEqualTo(rule.isTemplate()); assertThat(resultRule.getLang()).isEqualTo(rule.getLanguage()); assertThat(resultRule.getParams().getParamsList()) .extracting(Rule.Param::getKey, Rule.Param::getHtmlDesc, Rule.Param::getDefaultValue) .containsExactlyInAnyOrder(tuple(ruleParam.getName(), ruleParam.getDescription(), ruleParam.getDefaultValue())); }
.setRepositoryKey(ruleDefinition.getRepositoryKey()) .setSeverity(severity != null ? RulePriority.valueOf(severity) : null) .setStatus(ruleDefinition.getStatus().name()) .setSystemTags(ruleDefinition.getSystemTags().toArray(new String[ruleDefinition.getSystemTags().size()])) .setTags(new String[0])
/** * Default value is {@link org.sonar.api.rule.RuleStatus#READY}. The value * {@link org.sonar.api.rule.RuleStatus#REMOVED} is not accepted and raises an * {@link java.lang.IllegalArgumentException}. */ public NewRule setStatus(RuleStatus status) { if (status.equals(RuleStatus.REMOVED)) { throw new IllegalArgumentException(String.format("Status 'REMOVED' is not accepted on rule '%s'", this)); } this.status = status; return this; }
@Override public void handle(Request request, Response response) throws Exception { ruleWsSupport.checkQProfileAdminPermissionOnDefaultOrganization(); String customKey = request.mandatoryParam(PARAM_CUSTOM_KEY); try (DbSession dbSession = dbClient.openSession(false)) { try { NewCustomRule newRule = NewCustomRule.createForCustomRule(customKey, RuleKey.parse(request.mandatoryParam(PARAM_TEMPLATE_KEY))) .setName(request.mandatoryParam(PARAM_NAME)) .setMarkdownDescription(request.mandatoryParam(PARAM_DESCRIPTION)) .setSeverity(request.mandatoryParam(PARAM_SEVERITY)) .setStatus(RuleStatus.valueOf(request.mandatoryParam(PARAM_STATUS))) .setPreventReactivation(request.mandatoryParamAsBoolean(PARAM_PREVENT_REACTIVATION)); String params = request.param(PARAMS); if (!isNullOrEmpty(params)) { newRule.setParameters(KeyValueFormat.parse(params)); } ofNullable(request.param(PARAM_TYPE)).ifPresent(t -> newRule.setType(RuleType.valueOf(t))); writeResponse(dbSession, request, response, ruleCreator.create(dbSession, newRule)); } catch (ReactivationException e) { response.stream().setStatus(HTTP_CONFLICT); writeResponse(dbSession, request, response, e.ruleKey()); } } }
String severity = Severity.defaultSeverity(); String type = null; RuleStatus status = RuleStatus.defaultStatus(); boolean template = false; String gapDescription = null; String s = nodeValue(cursor); if (s != null) { status = RuleStatus.valueOf(s);