aboutsummaryrefslogtreecommitdiffstats
path: root/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java
diff options
context:
space:
mode:
authortalig <talig@amdocs.com>2017-12-25 15:05:31 +0200
committerVitaly Emporopulo <Vitaliy.Emporopulo@amdocs.com>2017-12-25 14:24:44 +0000
commit05c625fb9c3673d6c60511958f7e051257247c2b (patch)
tree28df153c7f9bdfd5b5682a6ff4cbeced23f30d3c /openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java
parent22f1220c2dda43e3dcbadd70180db521a7984d1d (diff)
Refactor list revisions api
Remove zusammen-api dependency in versioning-api, enhance version zusammen dao impl UT. Issue-ID: SDC-779 Change-Id: Ic792462eac52f1f5129f92ce80d3deb641c90916 Signed-off-by: talig <talig@amdocs.com>
Diffstat (limited to 'openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java')
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/zusammen/VersionZusammenDaoImpl.java33
1 files changed, 29 insertions, 4 deletions
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/zusammen/VersionZusammenDaoImpl.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/zusammen/VersionZusammenDaoImpl.java
index 195973bf5c..32c17dbfce 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/zusammen/VersionZusammenDaoImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/zusammen/VersionZusammenDaoImpl.java
@@ -7,6 +7,7 @@ import com.amdocs.zusammen.datatypes.item.ItemVersion;
import com.amdocs.zusammen.datatypes.item.ItemVersionData;
import com.amdocs.zusammen.datatypes.item.ItemVersionStatus;
import com.amdocs.zusammen.datatypes.item.SynchronizationStatus;
+import com.amdocs.zusammen.datatypes.itemversion.ItemVersionRevisions;
import org.openecomp.core.zusammen.api.ZusammenAdaptor;
import org.openecomp.sdc.common.errors.CoreException;
import org.openecomp.sdc.common.errors.ErrorCategory;
@@ -18,6 +19,7 @@ import org.openecomp.sdc.versioning.dao.types.SynchronizationState;
import org.openecomp.sdc.versioning.dao.types.Version;
import org.openecomp.sdc.versioning.dao.types.VersionState;
+import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
@@ -110,18 +112,27 @@ public class VersionZusammenDaoImpl implements VersionDao {
@Override
public void revert(String itemId, Version version, String revisionId) {
- zusammenAdaptor.revert(createSessionContext(), itemId, version.getId(), revisionId);
+ zusammenAdaptor.revert(createSessionContext(), new Id(itemId), new Id(version.getId()),
+ new Id(revisionId));
}
@Override
public List<Revision> listRevisions(String itemId, Version version) {
- return zusammenAdaptor.listRevisions(createSessionContext(), itemId, version.getId());
+ ItemVersionRevisions itemVersionRevisions = zusammenAdaptor
+ .listRevisions(createSessionContext(), new Id(itemId), new Id(version.getId()));
+
+ return itemVersionRevisions == null || itemVersionRevisions.getItemVersionRevisions() == null ||
+ itemVersionRevisions.getItemVersionRevisions().isEmpty()
+ ? new ArrayList<>()
+ : itemVersionRevisions.getItemVersionRevisions().stream()
+ .map(this::convertRevision)
+ .sorted(this::compareRevisionsTime)
+ .collect(Collectors.toList());
}
private void updateVersionStatus(SessionContext context, Id itemId, Id versionId,
VersionState versionState, ItemVersion itemVersion) {
- if (versionState.getSynchronizationState() != SynchronizationState.UpToDate ||
- versionState.isDirty()) {
+ if (versionState.getSynchronizationState() != SynchronizationState.UpToDate) {
String versionStatus = zusammenAdaptor.getPublicVersion(context, itemId, versionId)
.getData().getInfo().getProperty(ZusammenProperty.STATUS);
itemVersion.getData().getInfo().addProperty(ZusammenProperty.STATUS, versionStatus);
@@ -162,4 +173,18 @@ public class VersionZusammenDaoImpl implements VersionDao {
.withMessage("Version state is unknown").build());
}
}
+
+ private Revision convertRevision(
+ com.amdocs.zusammen.datatypes.itemversion.Revision zusammenRevision) {
+ Revision revision = new Revision();
+ revision.setId(zusammenRevision.getRevisionId().getValue());
+ revision.setTime(zusammenRevision.getTime());
+ revision.setUser(zusammenRevision.getUser());
+ revision.setMessage(zusammenRevision.getMessage());
+ return revision;
+ }
+
+ private int compareRevisionsTime(Revision revision1, Revision revision2) {
+ return revision1.getTime().before(revision2.getTime()) ? 1 : -1;
+ }
}