Fix CS warnings in sal-clustering-commons and enable enforcement
[controller.git] / opendaylight / md-sal / sal-clustering-commons / src / main / java / org / opendaylight / controller / cluster / datastore / node / utils / NodeIdentifierWithPredicatesGenerator.java
index 11386e75a4b82cbb3b3a31ef1049f2db07bed16a..fa9783be0469895339fbb1541e4512a0101ba976 100644 (file)
@@ -8,31 +8,34 @@
 
 package org.opendaylight.controller.cluster.datastore.node.utils;
 
+import java.util.HashMap;
+import java.util.Map;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 import org.opendaylight.yangtools.yang.data.impl.codec.TypeDefinitionAwareCodec;
 import org.opendaylight.yangtools.yang.model.api.DataSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.LeafSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.ListSchemaNode;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
-import java.util.HashMap;
-import java.util.Map;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
+public class NodeIdentifierWithPredicatesGenerator {
+    private static final Logger LOG = LoggerFactory.getLogger(NodeIdentifierWithPredicatesGenerator.class);
+    private static final Pattern PATTERN = Pattern.compile("(.*)\\Q[{\\E(.*)\\Q}]\\E");
 
-public class NodeIdentifierWithPredicatesGenerator{
     private final String id;
-    private static final Pattern pattern = Pattern.compile("(.*)\\Q[{\\E(.*)\\Q}]\\E");
     private final Matcher matcher;
     private final boolean doesMatch;
     private final ListSchemaNode listSchemaNode;
 
-    public NodeIdentifierWithPredicatesGenerator(String id, DataSchemaNode schemaNode){
+    public NodeIdentifierWithPredicatesGenerator(String id, DataSchemaNode schemaNode) {
         this.id = id;
-        matcher = pattern.matcher(this.id);
+        matcher = PATTERN.matcher(this.id);
         doesMatch = matcher.matches();
 
-        if(schemaNode instanceof  ListSchemaNode){
+        if (schemaNode instanceof  ListSchemaNode) {
             this.listSchemaNode = (ListSchemaNode) schemaNode;
         } else {
             this.listSchemaNode = null;
@@ -40,35 +43,36 @@ public class NodeIdentifierWithPredicatesGenerator{
     }
 
 
-    public boolean matches(){
+    public boolean matches() {
         return doesMatch;
     }
 
-    public YangInstanceIdentifier.NodeIdentifierWithPredicates getPathArgument(){
+    public YangInstanceIdentifier.NodeIdentifierWithPredicates getPathArgument() {
         final String group = matcher.group(2);
         final String[] keyValues = group.split(",");
         Map<QName, Object> nameValues = new HashMap<>();
 
-        for(String keyValue : keyValues){
+        for (String keyValue : keyValues) {
             int eqIndex = keyValue.lastIndexOf('=');
             try {
                 final QName key = QNameFactory
                     .create(keyValue.substring(0, eqIndex));
                 nameValues.put(key, getValue(key, keyValue.substring(eqIndex + 1)));
-            } catch(IllegalArgumentException e){
-                System.out.println("Error processing identifier : " + id);
+            } catch (IllegalArgumentException e) {
+                LOG.error("Error processing identifier {}", id, e);
                 throw e;
             }
         }
 
-        return new YangInstanceIdentifier.NodeIdentifierWithPredicates(QNameFactory.create(matcher.group(1)), nameValues);
+        return new YangInstanceIdentifier.NodeIdentifierWithPredicates(
+                QNameFactory.create(matcher.group(1)), nameValues);
     }
 
 
-    private Object getValue(QName key, String value){
-        if(listSchemaNode != null){
-            for(DataSchemaNode node : listSchemaNode.getChildNodes()){
-                if(node instanceof LeafSchemaNode && node.getQName().equals(key)){
+    private Object getValue(QName key, String value) {
+        if (listSchemaNode != null) {
+            for (DataSchemaNode node : listSchemaNode.getChildNodes()) {
+                if (node instanceof LeafSchemaNode && node.getQName().equals(key)) {
                     return TypeDefinitionAwareCodec.from(LeafSchemaNode.class.cast(node).getType()).deserialize(value);
                 }
             }