From d507c867823b82426f90288e86c44e95845dd82b Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Wed, 7 May 2014 11:00:11 +0200 Subject: [PATCH] BUG-731: make sure utility classes are not instantiated Change-Id: Icdda7afefa3e67c2b3a1b14ad0bbab565963a779 Signed-off-by: Robert Varga --- .../generator/impl/IntermediateMapping.java | 10 ++++++--- .../yang/parser/util/GroupingSort.java | 22 ++++++++++++++----- 2 files changed, 24 insertions(+), 8 deletions(-) diff --git a/code-generator/binding-generator-impl/src/main/java/org/opendaylight/yangtools/sal/binding/generator/impl/IntermediateMapping.java b/code-generator/binding-generator-impl/src/main/java/org/opendaylight/yangtools/sal/binding/generator/impl/IntermediateMapping.java index d0020cf145..7e2224c336 100644 --- a/code-generator/binding-generator-impl/src/main/java/org/opendaylight/yangtools/sal/binding/generator/impl/IntermediateMapping.java +++ b/code-generator/binding-generator-impl/src/main/java/org/opendaylight/yangtools/sal/binding/generator/impl/IntermediateMapping.java @@ -7,8 +7,6 @@ */ package org.opendaylight.yangtools.sal.binding.generator.impl; -import com.google.common.base.Preconditions; - import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -20,13 +18,18 @@ import org.opendaylight.yangtools.yang.data.api.Node; import org.opendaylight.yangtools.yang.data.impl.CompositeNodeTOImpl; import org.opendaylight.yangtools.yang.data.impl.SimpleNodeTOImpl; -@SuppressWarnings("unchecked") +import com.google.common.base.Preconditions; + public class IntermediateMapping { + private IntermediateMapping() { + throw new UnsupportedOperationException("Utility class should not be instantiated"); + } public static Node toNode(final Map map) { if ((map instanceof Node)) { return ((Node) map); } + @SuppressWarnings("unchecked") final Map nodeMap = ((Map) map); Preconditions.checkArgument(map.size() == 1); final Entry elem = nodeMap.entrySet().iterator().next(); @@ -58,6 +61,7 @@ public class IntermediateMapping { return new SimpleNodeTOImpl(name, null, object); } + @SuppressWarnings("unchecked") public static Node toNodeImpl(final QName name, final Object objects) { if (objects instanceof List) { return _toNodeImpl(name, (List) objects); diff --git a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/util/GroupingSort.java b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/util/GroupingSort.java index 580c6deca1..fb473dfe81 100644 --- a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/util/GroupingSort.java +++ b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/util/GroupingSort.java @@ -7,10 +7,19 @@ */ package org.opendaylight.yangtools.yang.parser.util; -import java.util.*; +import java.util.ArrayList; +import java.util.Collection; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; import org.opendaylight.yangtools.yang.model.api.SchemaPath; -import org.opendaylight.yangtools.yang.parser.builder.api.*; +import org.opendaylight.yangtools.yang.parser.builder.api.AugmentationSchemaBuilder; +import org.opendaylight.yangtools.yang.parser.builder.api.DataNodeContainerBuilder; +import org.opendaylight.yangtools.yang.parser.builder.api.DataSchemaNodeBuilder; +import org.opendaylight.yangtools.yang.parser.builder.api.GroupingBuilder; +import org.opendaylight.yangtools.yang.parser.builder.api.UsesNodeBuilder; import org.opendaylight.yangtools.yang.parser.builder.impl.ChoiceBuilder; import org.opendaylight.yangtools.yang.parser.builder.impl.ChoiceCaseBuilder; import org.opendaylight.yangtools.yang.parser.util.TopologicalSort.Node; @@ -18,7 +27,10 @@ import org.opendaylight.yangtools.yang.parser.util.TopologicalSort.Node; import com.google.common.collect.Maps; import com.google.common.collect.Sets; -public class GroupingSort { +public final class GroupingSort { + private GroupingSort() { + throw new UnsupportedOperationException("Utility class should not be instantiated"); + } /** * Sorts set groupingDefinitions according to the mutual @@ -42,7 +54,7 @@ public class GroupingSort { * @param groupingDefinitions * set of grouping definition which should be sorted according to * mutual dependencies - * @return list of grouping definitiond which are sorted by mutual + * @return list of grouping definitions which are sorted by mutual * dependencies * @throws IllegalArgumentException * if groupingDefinitions @@ -120,7 +132,7 @@ public class GroupingSort { * data node container which can contain some uses of grouping * @return set of uses nodes which were find in container. */ - public static Set getAllUsesNodes(DataNodeContainerBuilder container) { + public static Set getAllUsesNodes(final DataNodeContainerBuilder container) { Set ret = new HashSet<>(); Set usesNodes = container.getUsesNodeBuilders(); ret.addAll(usesNodes); -- 2.36.6