Merge "Fixed sonar issues in MusicDataStoreHandle.java"
authorThomas Nelson <nelson24@att.com>
Tue, 9 Jul 2019 14:44:36 +0000 (14:44 +0000)
committerGerrit Code Review <gerrit@onap.org>
Tue, 9 Jul 2019 14:44:36 +0000 (14:44 +0000)
src/main/java/org/onap/music/datastore/PreparedQueryObject.java
src/main/java/org/onap/music/rest/RestMusicVersionAPI.java
src/test/java/org/onap/music/datastore/PreparedQueryObjectTest.java

index db317eb..d65096a 100644 (file)
@@ -2,7 +2,7 @@
  * ============LICENSE_START==========================================
  * org.onap.music
  * ===================================================================
- *  Copyright (c) 2017 AT&T Intellectual Property
+ *  Copyright (c) 2017-2019 AT&T Intellectual Property
  * ===================================================================
  *  Licensed under the Apache License, Version 2.0 (the "License");
  *  you may not use this file except in compliance with the License.
@@ -42,6 +42,35 @@ public class PreparedQueryObject {
     private String primaryKeyValue;
 
 
+    /**
+     * Create PreparedQueryObject
+     */
+    public PreparedQueryObject() {
+        this.values = new ArrayList<>();
+        this.query = new StringBuilder();
+    }
+    
+    /**
+     * Create PreparedQueryObject
+     * @param query query portion of the prepared query
+     */
+    public PreparedQueryObject(String query) {
+        this.values = new ArrayList<>();
+        this.query = new StringBuilder(query);
+    }
+    
+    /**
+     * Create PreparedQueryObject
+     * @param query query portion of the prepared query
+     * @param values to be added to the query string as prepared query
+     */
+    public PreparedQueryObject(String query, Object...values) {
+        this.query = new StringBuilder(query);
+        this.values = new ArrayList<>();
+        for (Object value: values) {
+            this.values.add(value);
+        }
+    }
 
     public String getKeyspaceName() {
         return keyspaceName;
@@ -83,28 +112,29 @@ public class PreparedQueryObject {
         this.consistency = consistency;
     }
 
-       /**
-     * 
-     */
-    public PreparedQueryObject() {
-
-        this.values = new ArrayList<>();
-        this.query = new StringBuilder();
-    }
-
     /**
-     * @return
+     * @return values to be set as part of the prepared query
      */
     public List<Object> getValues() {
         return values;
     }
 
     /**
-     * @param o
+     * @param o object to be added as a value to the prepared query, in order
      */
     public void addValue(Object o) {
         this.values.add(o);
     }
+    
+    /**
+     * Add values to the preparedQuery
+     * @param objs ordered list of objects to be added as values to the prepared query
+     */
+    public void addValues(Object... objs) {
+        for (Object obj: objs) {
+            this.values.add(obj);
+        }
+    }
 
     /**
      * @param s
@@ -117,7 +147,7 @@ public class PreparedQueryObject {
     }
 
     /**
-     * @return
+     * @return the query
      */
     public String getQuery() {
         return this.query.toString();
index 94540eb..8c86152 100644 (file)
@@ -3,6 +3,8 @@
  * org.onap.music
  * ===================================================================
  *  Copyright (c) 2017 AT&T Intellectual Property
+ *
+ *  Modifications Copyright (C) 2019 IBM.
  * ===================================================================
  *  Licensed under the Apache License, Version 2.0 (the "License");
  *  you may not use this file except in compliance with the License.
@@ -36,9 +38,6 @@ import org.onap.music.eelf.logging.EELFLoggerDelegate;
 import org.onap.music.main.MusicUtil;
 import org.onap.music.main.ResultType;
 
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 
@@ -48,7 +47,7 @@ import io.swagger.annotations.ApiOperation;
 public class RestMusicVersionAPI {
 
     private EELFLoggerDelegate logger = EELFLoggerDelegate.getLogger(RestMusicVersionAPI.class);
-
+    private static final String MUSIC_KEY = "MUSIC:";
     /**
      * Get the version of MUSIC.
      * @return
@@ -60,7 +59,7 @@ public class RestMusicVersionAPI {
         logger.info("Replying to request for MUSIC version with MUSIC:" + MusicUtil.getVersion());
         response.addHeader("X-latestVersion",MusicUtil.getVersion());
         return new JsonResponse(ResultType.SUCCESS).
-            setMusicVersion("MUSIC:" + MusicUtil.getVersion()).toMap();
+            setMusicVersion(MUSIC_KEY + MusicUtil.getVersion()).toMap();
     }
 
     /**
@@ -75,8 +74,8 @@ public class RestMusicVersionAPI {
         logger.info("Replying to request for MUSIC build with MUSIC:" + MusicUtil.getBuild());
         response.addHeader("X-latestVersion",MusicUtil.getVersion());
         return new JsonResponse(ResultType.SUCCESS)
-            .setMusicBuild("MUSIC:" + MusicUtil.getBuild())
-            .setMusicVersion("MUSIC:" + MusicUtil.getVersion()).toMap();
+            .setMusicBuild(MUSIC_KEY + MusicUtil.getBuild())
+            .setMusicVersion(MUSIC_KEY + MusicUtil.getVersion()).toMap();
     }
 
 
index 71e484a..7ab7d14 100644 (file)
@@ -72,4 +72,30 @@ public class PreparedQueryObjectTest {
         assertEquals("primaryKeyValue", preparedQueryObject.getPrimaryKeyValue());
     }
     
+    @Test
+    public void testAddValue() {
+        preparedQueryObject.addValue("one");
+        assertEquals("one", preparedQueryObject.getValues().get(0));
+    }
+    
+    @Test
+    public void testAddValues() {
+        preparedQueryObject.addValues("one", "two", "three");
+        assertEquals(3, preparedQueryObject.getValues().size());
+        assertEquals("two", preparedQueryObject.getValues().get(1));
+    }
+    
+    @Test
+    public void testConstructorQuery() {
+        preparedQueryObject = new PreparedQueryObject("some query string");
+        assertEquals("some query string", preparedQueryObject.getQuery());
+    }
+    
+    @Test
+    public void testConstructorQueryValues() {
+        preparedQueryObject = new PreparedQueryObject("another query string", "a", "b", "c");
+        assertEquals("another query string", preparedQueryObject.getQuery());
+        assertEquals(3, preparedQueryObject.getValues().size());
+        assertEquals("b", preparedQueryObject.getValues().get(1));
+    }
 }