Reduce cyclomatic complexity of some methods

Extract loops to additional methods to simplify the code.

Change-Id: I46267fb2571de4fa641537ad2c59924efd801cd8
diff --git a/src/main/java/com/ericsson/gerrit/plugins/projectgroupstructure/DefaultAccessRights.java b/src/main/java/com/ericsson/gerrit/plugins/projectgroupstructure/DefaultAccessRights.java
index a4b56c1..17dedb6 100644
--- a/src/main/java/com/ericsson/gerrit/plugins/projectgroupstructure/DefaultAccessRights.java
+++ b/src/main/java/com/ericsson/gerrit/plugins/projectgroupstructure/DefaultAccessRights.java
@@ -33,6 +33,7 @@
 import com.google.inject.Singleton;
 import java.io.IOException;
 import java.nio.file.Path;
+import java.util.Arrays;
 import java.util.Set;
 import java.util.regex.Pattern;
 import org.eclipse.jgit.errors.ConfigInvalidException;
@@ -112,29 +113,34 @@
     for (String refName : defaultAccessRightsConfig.getSubsections(ProjectConfig.ACCESS)) {
       if (RefConfigSection.isValid(refName) && isValidRegex(refName)) {
         AccessSection as = config.getAccessSection(refName, true);
-        for (String varName :
-            defaultAccessRightsConfig.getStringList(
-                ProjectConfig.ACCESS, refName, "exclusiveGroupPermissions")) {
-          for (String n : varName.split("[, \t]{1,}")) {
-            if (Permission.isPermission(n)) {
-              as.getPermission(n, true).setExclusiveGroup(true);
-            }
-          }
-        }
-        String ownerGroupName = getOwerGroupName(project);
-        for (String value : defaultAccessRightsConfig.getNames(ProjectConfig.ACCESS, refName)) {
-          if (Permission.isPermission(value)) {
-            Permission perm = as.getPermission(value, true);
-            setPermissionRules(ownerGroupName, perm, refName, value);
-          } else {
-            log.error("Invalid permission {}", value);
-          }
-        }
+        getPermissions(refName, as);
+        setPermissions(refName, as, getOwnerGroupName(project));
       }
     }
   }
 
-  private String getOwerGroupName(ProjectState project) {
+  private void getPermissions(String refName, AccessSection as) {
+    for (String varName :
+        defaultAccessRightsConfig.getStringList(
+            ProjectConfig.ACCESS, refName, "exclusiveGroupPermissions")) {
+      Arrays.stream(varName.split("[, \t]{1,}"))
+          .filter(Permission::isPermission)
+          .forEach(n -> as.getPermission(n, true).setExclusiveGroup(true));
+    }
+  }
+
+  private void setPermissions(String refName, AccessSection as, String ownerGroupName) {
+    for (String value : defaultAccessRightsConfig.getNames(ProjectConfig.ACCESS, refName)) {
+      if (Permission.isPermission(value)) {
+        Permission perm = as.getPermission(value, true);
+        setPermissionRules(ownerGroupName, perm, refName, value);
+      } else {
+        log.error("Invalid permission {}", value);
+      }
+    }
+  }
+
+  private String getOwnerGroupName(ProjectState project) {
     Set<AccountGroup.UUID> owners = project.getAllOwners();
     if (!owners.isEmpty()) {
       return groupCache.get(owners.iterator().next()).getName();