]> source.dussan.org Git - sonarqube.git/commitdiff
Fix some quality flaws
authorJulien HENRY <julien.henry@sonarsource.com>
Wed, 4 Dec 2013 08:49:02 +0000 (09:49 +0100)
committerJulien HENRY <julien.henry@sonarsource.com>
Wed, 4 Dec 2013 08:49:27 +0000 (09:49 +0100)
sonar-core/src/main/java/org/sonar/core/permission/PermissionFacade.java
sonar-core/src/main/java/org/sonar/core/permission/PermissionTemplateDao.java
sonar-server/src/main/java/org/sonar/server/permission/InternalPermissionTemplateService.java

index 1ec7ebe6935c8c7b95c747d09263d798ceae37db..c9098cc1c23d78b290b9f5297020db0b11b5f13a 100644 (file)
@@ -225,6 +225,23 @@ public class PermissionFacade implements TaskComponent, ServerComponent {
         matchingTemplates.add(permissionTemplateDto);
       }
     }
+    checkAtMostOneMatchForComponentKey(componentKey, matchingTemplates);
+    if (matchingTemplates.size() == 1) {
+      return matchingTemplates.get(0).getKee();
+    }
+    String qualifierTemplateKey = settings.getString("sonar.permission.template." + qualifier + ".default");
+    if (!StringUtils.isBlank(qualifierTemplateKey)) {
+      return qualifierTemplateKey;
+    }
+
+    String defaultTemplateKey = settings.getString("sonar.permission.template.default");
+    if (StringUtils.isBlank(defaultTemplateKey)) {
+      throw new IllegalStateException("At least one default permission template should be defined");
+    }
+    return defaultTemplateKey;
+  }
+
+  private void checkAtMostOneMatchForComponentKey(final String componentKey, List<PermissionTemplateDto> matchingTemplates) {
     if (matchingTemplates.size() > 1) {
       StringBuilder templatesNames = new StringBuilder();
       for (Iterator<PermissionTemplateDto> it = matchingTemplates.iterator(); it.hasNext();) {
@@ -237,18 +254,6 @@ public class PermissionFacade implements TaskComponent, ServerComponent {
         "The following permission templates have a key pattern that matches the ''{0}'' key: {1}."
           + " The administrator must update them to make sure that only one permission template can be selected for 'foo.project' component.", componentKey,
         templatesNames.toString()));
-    } else if (matchingTemplates.size() == 1) {
-      return matchingTemplates.get(0).getKee();
-    }
-    String qualifierTemplateKey = settings.getString("sonar.permission.template." + qualifier + ".default");
-    if (!StringUtils.isBlank(qualifierTemplateKey)) {
-      return qualifierTemplateKey;
     }
-
-    String defaultTemplateKey = settings.getString("sonar.permission.template.default");
-    if (StringUtils.isBlank(defaultTemplateKey)) {
-      throw new IllegalStateException("At least one default permission template should be defined");
-    }
-    return defaultTemplateKey;
   }
 }
index a320ba0fb7923eeba97681ef6bf75f8d26156824..27fb8b84caaf1f689cdb66b7d4606f44e12b92f0 100644 (file)
@@ -92,7 +92,6 @@ public class PermissionTemplateDao implements TaskComponent, ServerComponent {
     return permissionTemplate;
   }
 
-  @CheckForNull
   public List<PermissionTemplateDto> selectAllPermissionTemplates() {
     SqlSession session = myBatis.openSession();
     try {
index 1a92f1ee1db9ef63fbcc3885aebefb559bb840e7..0d9bff197b2a9b807c12b48429bb53f263a9ae7b 100644 (file)
@@ -79,7 +79,7 @@ public class InternalPermissionTemplateService implements ServerComponent {
   public PermissionTemplate createPermissionTemplate(String name, @Nullable String description, @Nullable String keyPattern) {
     PermissionTemplateUpdater.checkSystemAdminUser();
     validateTemplateName(null, name);
-    validateKeyPattern(null, keyPattern);
+    validateKeyPattern(keyPattern);
     PermissionTemplateDto permissionTemplateDto = permissionTemplateDao.createPermissionTemplate(name, description, keyPattern);
     if (permissionTemplateDto.getId() == null) {
       String errorMsg = "Template creation failed";
@@ -92,7 +92,7 @@ public class InternalPermissionTemplateService implements ServerComponent {
   public void updatePermissionTemplate(Long templateId, String newName, @Nullable String newDescription, @Nullable String newKeyPattern) {
     PermissionTemplateUpdater.checkSystemAdminUser();
     validateTemplateName(templateId, newName);
-    validateKeyPattern(templateId, newKeyPattern);
+    validateKeyPattern(newKeyPattern);
     permissionTemplateDao.updatePermissionTemplate(templateId, newName, newDescription, newKeyPattern);
   }
 
@@ -161,7 +161,7 @@ public class InternalPermissionTemplateService implements ServerComponent {
     }
   }
 
-  private void validateKeyPattern(@Nullable Long templateId, @Nullable String keyPattern) {
+  private void validateKeyPattern(@Nullable String keyPattern) {
     if (StringUtils.isEmpty(keyPattern)) {
       return;
     }