diff options
Diffstat (limited to 'aai-core/src/main/java/org/onap/aai/query/builder/GremlinQueryBuilder.java')
-rw-r--r-- | aai-core/src/main/java/org/onap/aai/query/builder/GremlinQueryBuilder.java | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/aai-core/src/main/java/org/onap/aai/query/builder/GremlinQueryBuilder.java b/aai-core/src/main/java/org/onap/aai/query/builder/GremlinQueryBuilder.java index fcfeb268..712a1ddb 100644 --- a/aai-core/src/main/java/org/onap/aai/query/builder/GremlinQueryBuilder.java +++ b/aai-core/src/main/java/org/onap/aai/query/builder/GremlinQueryBuilder.java @@ -57,7 +57,7 @@ public abstract class GremlinQueryBuilder<E> extends QueryBuilder<E> { private static final String ARGUMENT2 = "#!#argument#!#"; private static final String HAS = ".has('"; private static final String SINGLE_QUOTE = "'"; - private static final String ESCAPE_SINGLE_QUOTE = "\\'"; + private static final String ESCAPE_SINGLE_QUOTE = "\\\'"; private GremlinGroovyShell gremlinGroovy = new GremlinGroovyShell(); private GraphTraversal<?, ?> completeTraversal = null; protected List<String> list = null; @@ -119,11 +119,20 @@ public abstract class GremlinQueryBuilder<E> extends QueryBuilder<E> { String term = ""; if (value != null && !(value instanceof String)) { String valueString = value.toString(); + if (valueString.indexOf('\'') != -1) { value = valueString.replace(SINGLE_QUOTE, ESCAPE_SINGLE_QUOTE); } LOGGER.trace("Inside getVerticesByProperty(): key = {}, value = {}", key, value); term = value.toString(); + } else if (value != null && value instanceof String) { + String valueString = value.toString(); + + if (valueString.indexOf('\'') != -1) { + value = valueString.replace(SINGLE_QUOTE, ESCAPE_SINGLE_QUOTE); + } + LOGGER.trace("Inside getVerticesByProperty(): key = {}, value = {}", key, value); + term = "'" + value + "'"; } else { term = "'" + value + "'"; } |