aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/org/onap/crud/service/CrudGraphDataService.java
diff options
context:
space:
mode:
authorGurjeet Bedi <gurjeetb@amdocs.com>2018-01-07 21:07:50 -0500
committerGurjeet Bedi <gurjeetb@amdocs.com>2018-01-07 21:10:18 -0500
commiteabf0a08faa6581c88c2e4ca5be56d4630891046 (patch)
treef496c735e58fcc249a53eacaccc0456122d03a36 /src/main/java/org/onap/crud/service/CrudGraphDataService.java
parent5132ce03dac867af84eee209659238118f7ca4bc (diff)
OXM which tracks provenance
Support for source-of-truth and last-mod-source-of-truth Issue-ID: AAI-482 Change-Id: Idc7ec47c0561f2dad6f930d0ac0dd3fff9585b4f Signed-off-by: Gurjeet Bedi <gurjeetb@amdocs.com>
Diffstat (limited to 'src/main/java/org/onap/crud/service/CrudGraphDataService.java')
-rw-r--r--src/main/java/org/onap/crud/service/CrudGraphDataService.java12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/main/java/org/onap/crud/service/CrudGraphDataService.java b/src/main/java/org/onap/crud/service/CrudGraphDataService.java
index 49bf370..cd72533 100644
--- a/src/main/java/org/onap/crud/service/CrudGraphDataService.java
+++ b/src/main/java/org/onap/crud/service/CrudGraphDataService.java
@@ -28,6 +28,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import javax.ws.rs.core.HttpHeaders;
import javax.ws.rs.core.Response.Status;
import org.onap.crud.dao.GraphDao;
@@ -36,6 +37,7 @@ import org.onap.crud.entity.Edge;
import org.onap.crud.entity.Vertex;
import org.onap.crud.exception.CrudException;
import org.onap.crud.parser.CrudResponseBuilder;
+import org.onap.crud.util.CrudServiceUtil;
import org.onap.schema.OxmModelValidator;
import org.onap.schema.RelationshipSchemaValidator;
@@ -52,7 +54,7 @@ public class CrudGraphDataService extends AbstractGraphDataService {
return addVertex(version, vertex);
}
- public String addBulk(String version, BulkPayload payload) throws CrudException {
+ public String addBulk(String version, BulkPayload payload, HttpHeaders headers) throws CrudException {
HashMap<String, Vertex> vertices = new HashMap<String, Vertex>();
HashMap<String, Edge> edges = new HashMap<String, Edge>();
String txId = dao.openTransaction();
@@ -75,11 +77,17 @@ public class CrudGraphDataService extends AbstractGraphDataService {
Vertex validatedVertex;
Vertex persistedVertex;
if (opr.getValue().getAsString().equalsIgnoreCase("add")) {
- validatedVertex = OxmModelValidator.validateIncomingUpsertPayload(null, version, vertexPayload.getType(),
+ vertexPayload.setProperties(CrudServiceUtil.mergeHeaderInFoToPayload(vertexPayload.getProperties(),
+ headers, true));
+
+ validatedVertex = OxmModelValidator.validateIncomingUpsertPayload(null, version, vertexPayload.getType(),
vertexPayload.getProperties());
+
// Call champDAO to add the vertex
persistedVertex = dao.addVertex(validatedVertex.getType(), validatedVertex.getProperties(), txId);
} else {
+ vertexPayload.setProperties(CrudServiceUtil.mergeHeaderInFoToPayload(vertexPayload.getProperties(),
+ headers, false));
validatedVertex = OxmModelValidator.validateIncomingUpsertPayload(vertexPayload.getId(), version,
vertexPayload.getType(), vertexPayload.getProperties());
// Call champDAO to update the vertex