X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=plans%2Fso%2Fintegration-etsi-testing%2Fso-simulators%2Faai-simulator%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fso%2Faaisimulator%2Fcontroller%2FOwningEntityController.java;h=c5ade0cb6c837e7b629175c5ece85cf02b88f441;hb=e5ae05042a015c29e454e8c45f902eb414b32afa;hp=4923083dd6e345b1fd3d29f5e7ff050c86877a29;hpb=1f8a4cafe133c19c730701dbcc370cac9a7a7b0c;p=integration%2Fcsit.git diff --git a/plans/so/integration-etsi-testing/so-simulators/aai-simulator/src/main/java/org/onap/so/aaisimulator/controller/OwningEntityController.java b/plans/so/integration-etsi-testing/so-simulators/aai-simulator/src/main/java/org/onap/so/aaisimulator/controller/OwningEntityController.java index 4923083d..c5ade0cb 100644 --- a/plans/so/integration-etsi-testing/so-simulators/aai-simulator/src/main/java/org/onap/so/aaisimulator/controller/OwningEntityController.java +++ b/plans/so/integration-etsi-testing/so-simulators/aai-simulator/src/main/java/org/onap/so/aaisimulator/controller/OwningEntityController.java @@ -21,6 +21,7 @@ package org.onap.so.aaisimulator.controller; import static org.onap.so.aaisimulator.utils.Constants.OWNING_ENTITY; import static org.onap.so.aaisimulator.utils.Constants.OWNING_ENTITY_URL; +import static org.onap.so.aaisimulator.utils.HttpServiceUtils.getHeaders; import static org.onap.so.aaisimulator.utils.RequestErrorResponseUtils.getRequestErrorResponseEntity; import static org.onap.so.aaisimulator.utils.RequestErrorResponseUtils.getResourceVersion; import java.util.HashMap; @@ -33,9 +34,11 @@ import org.onap.aai.domain.yang.Relationship; import org.onap.so.aaisimulator.models.Format; import org.onap.so.aaisimulator.models.Results; import org.onap.so.aaisimulator.service.providers.OwnEntityCacheServiceProvider; +import org.onap.so.aaisimulator.utils.HttpServiceUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpHeaders; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; @@ -62,7 +65,6 @@ public class OwningEntityController { this.cacheServiceProvider = cacheServiceProvider; } - @PutMapping(value = "{owning-entity-id}", consumes = {MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML}, produces = {MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML}) public ResponseEntity putOwningEntity(@RequestBody final OwningEntity owningEntity, @@ -115,11 +117,20 @@ public class OwningEntityController { @PathVariable("owning-entity-id") final String owningEntityId, final HttpServletRequest request) { LOGGER.info("adding relationship for owning-entity-id: {} ...", owningEntityId); - if (cacheServiceProvider.putOwningEntityRelationShip(owningEntityId, relationship)) { - LOGGER.info("added OwningEntity relationship {} in cache", relationship); - return ResponseEntity.accepted().build(); + + if (relationship.getRelatedLink() != null) { + final String targetBaseUrl = HttpServiceUtils.getBaseUrl(request).toString(); + final HttpHeaders incomingHeader = getHeaders(request); + + final boolean result = cacheServiceProvider.addRelationShip(incomingHeader, targetBaseUrl, + request.getRequestURI(), owningEntityId, relationship); + if (result) { + LOGGER.info("added created bi directional relationship with {}", relationship.getRelatedLink()); + return ResponseEntity.accepted().build(); + } } - LOGGER.error("Couldn't add relationship for {} in cache", owningEntityId); + + LOGGER.error("Unable to add relationship for related link: {}", relationship.getRelatedLink()); return getRequestErrorResponseEntity(request); }