summaryrefslogtreecommitdiffstats
path: root/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/impl/CassandraElementRepository.java
diff options
context:
space:
mode:
authortalig <talig@amdocs.com>2017-10-23 09:23:14 +0300
committertalig <talig@amdocs.com>2017-10-23 09:23:14 +0300
commitf4398a841ce8c4c185ab75abdf5e5a1c2d8ff784 (patch)
tree05a536d22c52a0b3a8ca5135ea9a17d3be833a24 /openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/impl/CassandraElementRepository.java
parent6c416937323340a10095cfc2eb70229759fc4b92 (diff)
Fix onboarding undo checkout impl
Fix reset in zusammen collaboration plugin, Throw explicit exception in case of zusammen db illegal state. Change-Id: Ic9463517b72c7a89a2de78b86da5679ac57371a6 Issue-ID: SDC-490 Signed-off-by: talig <talig@amdocs.com>
Diffstat (limited to 'openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/impl/CassandraElementRepository.java')
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/impl/CassandraElementRepository.java30
1 files changed, 19 insertions, 11 deletions
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/impl/CassandraElementRepository.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/impl/CassandraElementRepository.java
index c19e8799d1..6cc1350444 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/impl/CassandraElementRepository.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/impl/CassandraElementRepository.java
@@ -16,12 +16,6 @@
package org.openecomp.core.zusammen.plugin.dao.impl;
-import com.datastax.driver.core.ResultSet;
-import com.datastax.driver.core.Row;
-import com.datastax.driver.mapping.annotations.Accessor;
-import com.datastax.driver.mapping.annotations.Param;
-import com.datastax.driver.mapping.annotations.Query;
-import com.google.gson.reflect.TypeToken;
import com.amdocs.zusammen.datatypes.Id;
import com.amdocs.zusammen.datatypes.Namespace;
import com.amdocs.zusammen.datatypes.SessionContext;
@@ -29,6 +23,12 @@ import com.amdocs.zusammen.datatypes.item.Info;
import com.amdocs.zusammen.datatypes.item.Relation;
import com.amdocs.zusammen.plugin.statestore.cassandra.dao.types.ElementEntityContext;
import com.amdocs.zusammen.utils.fileutils.json.JsonUtil;
+import com.datastax.driver.core.ResultSet;
+import com.datastax.driver.core.Row;
+import com.datastax.driver.mapping.annotations.Accessor;
+import com.datastax.driver.mapping.annotations.Param;
+import com.datastax.driver.mapping.annotations.Query;
+import com.google.gson.reflect.TypeToken;
import org.openecomp.core.zusammen.plugin.dao.ElementRepository;
import org.openecomp.core.zusammen.plugin.dao.types.ElementEntity;
@@ -38,22 +38,30 @@ import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.HashSet;
-import java.util.Objects;
import java.util.Optional;
import java.util.Set;
import java.util.stream.Collectors;
public class CassandraElementRepository implements ElementRepository {
+ private static final String VERSION_ELEMENT_NOT_EXIST_ERROR_MSG =
+ "List version elements error: " +
+ "element %s, which appears as an element of item %s version %s, does not exist";
+
@Override
public Collection<ElementEntity> list(SessionContext context,
ElementEntityContext elementContext) {
Set<String> elementIds = getVersionElementIds(context, elementContext);
- return elementIds.stream()
- .map(elementId -> get(context, elementContext, new ElementEntity(new Id(elementId))).get())
- .filter(Objects::nonNull)
- .collect(Collectors.toList());
+ Collection<ElementEntity> elements = new ArrayList<>();
+ for (String elementId : elementIds) {
+ elements.add(get(context, elementContext, new ElementEntity(new Id(elementId)))
+ .orElseThrow(
+ () -> new IllegalStateException(String.format(VERSION_ELEMENT_NOT_EXIST_ERROR_MSG,
+ elementId, elementContext.getItemId().getValue(),
+ getVersionId(elementContext)))));
+ }
+ return elements;
}
@Override