Refactor: Reduce depth of indent

Inline enumerating over enum values

Change-Id: Icff35340d91490b67b05d521f7addc6519d2b47a
diff --git a/core/store/dist/src/main/java/org/onosproject/store/resource/impl/ConsistentLinkResourceStore.java b/core/store/dist/src/main/java/org/onosproject/store/resource/impl/ConsistentLinkResourceStore.java
index 8d617b9..1dad271 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/resource/impl/ConsistentLinkResourceStore.java
+++ b/core/store/dist/src/main/java/org/onosproject/store/resource/impl/ConsistentLinkResourceStore.java
@@ -223,79 +223,82 @@
 
         Map<ResourceType, Set<ResourceAllocation>> free = new HashMap<>();
         final Map<ResourceType, Set<ResourceAllocation>> caps = getResourceCapacity(link);
-        final Iterable<LinkResourceAllocations> allocations = getAllocations(tx, link);
+        final List<LinkResourceAllocations> allocations = ImmutableList.copyOf(getAllocations(tx, link));
 
-        for (ResourceType type : ResourceType.values()) {
-            // there should be class/category of resources
+        Set<ResourceAllocation> bw = caps.get(ResourceType.BANDWIDTH);
+        Set<ResourceAllocation> value = getFreeBandwidthResources(link, bw, allocations);
+        free.put(ResourceType.BANDWIDTH, value);
 
-            switch (type) {
-                case BANDWIDTH:
-                    Set<ResourceAllocation> bw = caps.get(type);
-                    if (bw == null || bw.isEmpty()) {
-                        bw = Sets.newHashSet(new BandwidthResourceAllocation(EMPTY_BW));
-                    }
+        Set<ResourceAllocation> lmd = caps.get(ResourceType.LAMBDA);
+        Set<ResourceAllocation> freeL = getFreeLambdaResources(link, lmd, allocations);
+        free.put(ResourceType.LAMBDA, freeL);
 
-                    BandwidthResourceAllocation cap = (BandwidthResourceAllocation) bw.iterator().next();
-                    double freeBw = cap.bandwidth().toDouble();
+        Set<ResourceAllocation> mpls = caps.get(ResourceType.MPLS_LABEL);
+        Set<ResourceAllocation> freeLabel = getFreeLabelResources(link, mpls, allocations);
+        free.put(ResourceType.MPLS_LABEL, freeLabel);
 
-                    // enumerate current allocations, subtracting resources
-                    double allocatedBw = ImmutableList.copyOf(allocations).stream()
-                            .flatMap(x -> x.getResourceAllocation(link).stream())
-                            .filter(x -> x instanceof BandwidthResourceAllocation)
-                            .map(x -> (BandwidthResourceAllocation) x)
-                            .mapToDouble(x -> x.bandwidth().toDouble())
-                            .sum();
-                    freeBw -= allocatedBw;
-
-                    free.put(type, Sets.newHashSet(
-                            new BandwidthResourceAllocation(new BandwidthResource(Bandwidth.bps(freeBw)))));
-                    break;
-                case LAMBDA:
-                    Set<ResourceAllocation> lmd = caps.get(type);
-                    if (lmd == null || lmd.isEmpty()) {
-                        // nothing left
-                        break;
-                    }
-                    Set<ResourceAllocation> freeL = lmd.stream()
-                            .filter(x -> x instanceof LambdaResourceAllocation)
-                            .collect(Collectors.toSet());
-
-                    // enumerate current allocations, removing resources
-                    List<ResourceAllocation> allocatedLambda = ImmutableList.copyOf(allocations).stream()
-                            .flatMap(x -> x.getResourceAllocation(link).stream())
-                            .filter(x -> x instanceof LambdaResourceAllocation)
-                            .collect(Collectors.toList());
-                    freeL.removeAll(allocatedLambda);
-
-                    free.put(type, freeL);
-                    break;
-                case MPLS_LABEL:
-                    Set<ResourceAllocation> mpls = caps.get(type);
-                    if (mpls == null || mpls.isEmpty()) {
-                        // nothing left
-                        break;
-                    }
-                    Set<ResourceAllocation> freeLabel = mpls.stream()
-                            .filter(x -> x instanceof MplsLabelResourceAllocation)
-                            .collect(Collectors.toSet());
-
-                    // enumerate current allocations, removing resources
-                    List<ResourceAllocation> allocatedLabel = ImmutableList.copyOf(allocations).stream()
-                            .flatMap(x -> x.getResourceAllocation(link).stream())
-                            .filter(x -> x instanceof MplsLabelResourceAllocation)
-                            .collect(Collectors.toList());
-                    freeLabel.removeAll(allocatedLabel);
-
-                    free.put(type, freeLabel);
-                    break;
-                default:
-                    log.debug("unsupported ResourceType {}", type);
-                    break;
-            }
-        }
         return free;
     }
 
+    private Set<ResourceAllocation> getFreeBandwidthResources(Link link, Set<ResourceAllocation> bw,
+                                                              List<LinkResourceAllocations> allocations) {
+        if (bw == null || bw.isEmpty()) {
+            bw = Sets.newHashSet(new BandwidthResourceAllocation(EMPTY_BW));
+        }
+
+        BandwidthResourceAllocation cap = (BandwidthResourceAllocation) bw.iterator().next();
+        double freeBw = cap.bandwidth().toDouble();
+
+        // enumerate current allocations, subtracting resources
+        double allocatedBw = allocations.stream()
+                .flatMap(x -> x.getResourceAllocation(link).stream())
+                .filter(x -> x instanceof BandwidthResourceAllocation)
+                .map(x -> (BandwidthResourceAllocation) x)
+                .mapToDouble(x -> x.bandwidth().toDouble())
+                .sum();
+        freeBw -= allocatedBw;
+        return Sets.newHashSet(
+                new BandwidthResourceAllocation(new BandwidthResource(Bandwidth.bps(freeBw))));
+    }
+
+    private Set<ResourceAllocation> getFreeLambdaResources(Link link, Set<ResourceAllocation> lmd,
+                                                           List<LinkResourceAllocations> allocations) {
+        if (lmd == null || lmd.isEmpty()) {
+            // nothing left
+            return Collections.emptySet();
+        }
+        Set<ResourceAllocation> freeL = lmd.stream()
+                .filter(x -> x instanceof LambdaResourceAllocation)
+                .collect(Collectors.toSet());
+
+        // enumerate current allocations, removing resources
+        List<ResourceAllocation> allocatedLambda = allocations.stream()
+                .flatMap(x -> x.getResourceAllocation(link).stream())
+                .filter(x -> x instanceof LambdaResourceAllocation)
+                .collect(Collectors.toList());
+        freeL.removeAll(allocatedLambda);
+        return freeL;
+    }
+
+    private Set<ResourceAllocation> getFreeLabelResources(Link link, Set<ResourceAllocation> mpls,
+                                                          List<LinkResourceAllocations> allocations) {
+        if (mpls == null || mpls.isEmpty()) {
+            // nothing left
+            return Collections.emptySet();
+        }
+        Set<ResourceAllocation> freeLabel = mpls.stream()
+                .filter(x -> x instanceof MplsLabelResourceAllocation)
+                .collect(Collectors.toSet());
+
+        // enumerate current allocations, removing resources
+        List<ResourceAllocation> allocatedLabel = allocations.stream()
+                .flatMap(x -> x.getResourceAllocation(link).stream())
+                .filter(x -> x instanceof MplsLabelResourceAllocation)
+                .collect(Collectors.toList());
+        freeLabel.removeAll(allocatedLabel);
+        return freeLabel;
+    }
+
     @Override
     public void allocateResources(LinkResourceAllocations allocations) {
         checkNotNull(allocations);