X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Forg%2Fonap%2Fmusic%2Fdatastore%2FPreparedQueryObject.java;h=fdac50be8e8d51b6da9bdb945fd163b10f4066b4;hb=ea39a71e28f2772da7d467a410d43a7ddd8d163d;hp=9b10963014822a03b684b1e5d872fa7d00deebce;hpb=fa56ad63a720ab32cb90142f5e690930103a82fe;p=music.git diff --git a/src/main/java/org/onap/music/datastore/PreparedQueryObject.java b/src/main/java/org/onap/music/datastore/PreparedQueryObject.java index 9b109630..fdac50be 100644 --- a/src/main/java/org/onap/music/datastore/PreparedQueryObject.java +++ b/src/main/java/org/onap/music/datastore/PreparedQueryObject.java @@ -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; @@ -60,7 +89,28 @@ public class PreparedQueryObject { } public String getOperation() { - return operation; + if (operation!=null) return operation; + if (query.length()==0) return null; + String queryStr = query.toString().toLowerCase(); + String firstOp = null; + int firstOpChar = query.length(); + if (queryStr.indexOf("insert")>-1 && queryStr.indexOf("insert")-1 && queryStr.indexOf("update")-1 && queryStr.indexOf("delete")-1 && queryStr.indexOf("select")(); - this.query = new StringBuilder(); - } - - /** - * @return + * @return values to be set as part of the prepared query */ public List 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,12 +168,9 @@ public class PreparedQueryObject { } /** - * @return + * @return the query */ public String getQuery() { return this.query.toString(); } - - - }