diff options
Diffstat (limited to 'catalog-dao/src/main/java/org/openecomp/sdc/be/dao/jsongraph/TitanDao.java')
-rw-r--r-- | catalog-dao/src/main/java/org/openecomp/sdc/be/dao/jsongraph/TitanDao.java | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/catalog-dao/src/main/java/org/openecomp/sdc/be/dao/jsongraph/TitanDao.java b/catalog-dao/src/main/java/org/openecomp/sdc/be/dao/jsongraph/TitanDao.java index 2d9c029ea9..387b413dd5 100644 --- a/catalog-dao/src/main/java/org/openecomp/sdc/be/dao/jsongraph/TitanDao.java +++ b/catalog-dao/src/main/java/org/openecomp/sdc/be/dao/jsongraph/TitanDao.java @@ -456,7 +456,11 @@ public class TitanDao { } if (hasNotProps != null && !hasNotProps.isEmpty()) { for (Map.Entry<GraphPropertyEnum, Object> entry : hasNotProps.entrySet()) { - query = query.hasNot(entry.getKey().getProperty(), entry.getValue()); + if(entry.getValue() instanceof List){ + buildMultipleNegateQueryFromList(entry, query); + }else{ + query = query.hasNot(entry.getKey().getProperty(), entry.getValue()); + } } } Iterable<TitanVertex> vertices = query.vertices(); @@ -499,6 +503,15 @@ public class TitanDao { } + + private void buildMultipleNegateQueryFromList(Map.Entry<GraphPropertyEnum, Object> entry, TitanGraphQuery query){ + List<Object> negateList = (List<Object>) entry.getValue(); + for (Object listItem : negateList) { + query.hasNot(entry.getKey().getProperty(), listItem); + } + } + + /** * * @param parentVertex |