X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Forg%2Fonap%2Fcrud%2Fservice%2FCrudGraphDataService.java;h=cd725332114a511bc7d414732c2d982b56a8b585;hb=eabf0a08faa6581c88c2e4ca5be56d4630891046;hp=268e492623cee09c4a85c98ad9c4166e00a5e36b;hpb=908b4693e5a0a4c2f323dbf518b35e4620f183a1;p=aai%2Fgizmo.git diff --git a/src/main/java/org/onap/crud/service/CrudGraphDataService.java b/src/main/java/org/onap/crud/service/CrudGraphDataService.java index 268e492..cd72533 100644 --- a/src/main/java/org/onap/crud/service/CrudGraphDataService.java +++ b/src/main/java/org/onap/crud/service/CrudGraphDataService.java @@ -28,47 +28,25 @@ 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.aaiutils.oxm.OxmModelLoader; -import org.onap.aai.champcore.ChampGraph; import org.onap.crud.dao.GraphDao; -import org.onap.crud.dao.champ.ChampDao; 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.RelationshipSchemaLoader; import org.onap.schema.RelationshipSchemaValidator; import com.google.gson.JsonElement; -public class CrudGraphDataService { - - private GraphDao dao; - - public CrudGraphDataService(ChampGraph graphImpl) throws CrudException { - this.dao = new ChampDao(graphImpl); - - loadModels(); - } +public class CrudGraphDataService extends AbstractGraphDataService { public CrudGraphDataService(GraphDao dao) throws CrudException { - this.dao = dao; - - loadModels(); - } - - private void loadModels() throws CrudException { - // load the schemas - try { - OxmModelLoader.loadModels(); - } catch (Exception e) { - throw new CrudException(e); - } - RelationshipSchemaLoader.loadModels(); + super(dao); } public String addVertex(String version, String type, VertexPayload payload) throws CrudException { @@ -76,7 +54,7 @@ public class CrudGraphDataService { 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 vertices = new HashMap(); HashMap edges = new HashMap(); String txId = dao.openTransaction(); @@ -99,11 +77,17 @@ public class CrudGraphDataService { 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 @@ -212,20 +196,6 @@ public class CrudGraphDataService { .buildUpsertEdgeResponse(RelationshipSchemaValidator.validateOutgoingPayload(version, addedEdge), version); } - public String getEdge(String version, String id, String type) throws CrudException { - RelationshipSchemaValidator.validateType(version, type); - Edge edge = dao.getEdge(id, type); - - return CrudResponseBuilder.buildGetEdgeResponse(RelationshipSchemaValidator.validateOutgoingPayload(version, edge), - version); - } - - public String getEdges(String version, String type, Map filter) throws CrudException { - RelationshipSchemaValidator.validateType(version, type); - List items = dao.getEdges(type, RelationshipSchemaValidator.resolveCollectionfilter(version, type, filter)); - return CrudResponseBuilder.buildGetEdgesResponse(items, version); - } - public String updateVertex(String version, String id, String type, VertexPayload payload) throws CrudException { Vertex vertex = OxmModelValidator.validateIncomingUpsertPayload(id, version, type, payload.getProperties()); return updateVertex(version, vertex); @@ -284,18 +254,4 @@ public class CrudGraphDataService { return dao.getVertex(id); } - public String getVertex(String version, String id, String type) throws CrudException { - type = OxmModelValidator.resolveCollectionType(version, type); - Vertex vertex = dao.getVertex(id, type); - List edges = dao.getVertexEdges(id); - return CrudResponseBuilder.buildGetVertexResponse(OxmModelValidator.validateOutgoingPayload(version, vertex), edges, - version); - } - - public String getVertices(String version, String type, Map filter) throws CrudException { - type = OxmModelValidator.resolveCollectionType(version, type); - List items = dao.getVertices(type, OxmModelValidator.resolveCollectionfilter(version, type, filter)); - return CrudResponseBuilder.buildGetVerticesResponse(items, version); - } - }