From 4e596846aa6f1b799487c553d6830004489d96a1 Mon Sep 17 00:00:00 2001 From: lukegleeson Date: Tue, 28 Jun 2022 12:15:33 +0100 Subject: Simplified 'External' lock reason Mapping Refactored LOCKED_MISBEHAVING -> LOCKED_MODULE_SYNC_FAILED CompositeStateMapper will change internal reason LOCKED_MODULE_SYNC_FAILED to external reason LOCKED_MISBEHAVING for client payloads Changed openapi description of lock-reason to reflect only enum currently available LOCKED_MISBEHAVING Issue-ID: CPS-1099 Signed-off-by: lukegleeson Change-Id: I9cda45f6c30b94684ee1c8ad0c49e35a3a824d52 --- .../rest/controller/NetworkCmProxyController.java | 5 +++-- .../cps/ncmp/rest/mapper/CmHandleStateMapper.java | 22 ++++++++++++++++++++-- 2 files changed, 23 insertions(+), 4 deletions(-) (limited to 'cps-ncmp-rest/src/main/java/org/onap/cps') diff --git a/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/NetworkCmProxyController.java b/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/NetworkCmProxyController.java index 33355475d..b20487119 100755 --- a/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/NetworkCmProxyController.java +++ b/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/NetworkCmProxyController.java @@ -286,7 +286,8 @@ public class NetworkCmProxyController implements NetworkCmProxyApi { final CompositeState cmHandleState = networkCmProxyDataService.getCmHandleCompositeState(cmHandleId); final RestOutputCmHandleCompositeState restOutputCmHandleCompositeState = new RestOutputCmHandleCompositeState(); - restOutputCmHandleCompositeState.setState(cmHandleStateMapper.toCmHandleCompositeState(cmHandleState)); + restOutputCmHandleCompositeState.setState( + cmHandleStateMapper.toCmHandleCompositeStateExternalLockReason(cmHandleState)); return ResponseEntity.ok(restOutputCmHandleCompositeState); } @@ -325,7 +326,7 @@ public class NetworkCmProxyController implements NetworkCmProxyApi { restOutputCmHandle.setCmHandle(ncmpServiceCmHandle.getCmHandleId()); cmHandlePublicProperties.add(ncmpServiceCmHandle.getPublicProperties()); restOutputCmHandle.setPublicCmHandleProperties(cmHandlePublicProperties); - restOutputCmHandle.setState(cmHandleStateMapper.toCmHandleCompositeState( + restOutputCmHandle.setState(cmHandleStateMapper.toCmHandleCompositeStateExternalLockReason( ncmpServiceCmHandle.getCompositeState())); return restOutputCmHandle; } diff --git a/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/mapper/CmHandleStateMapper.java b/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/mapper/CmHandleStateMapper.java index ca109d649..55b64ec76 100644 --- a/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/mapper/CmHandleStateMapper.java +++ b/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/mapper/CmHandleStateMapper.java @@ -28,6 +28,7 @@ import org.mapstruct.NullValuePropertyMappingStrategy; import org.onap.cps.ncmp.api.inventory.CompositeState; import org.onap.cps.ncmp.rest.model.CmHandleCompositeState; import org.onap.cps.ncmp.rest.model.DataStores; +import org.onap.cps.ncmp.rest.model.LockReason; import org.onap.cps.ncmp.rest.model.SyncState; @Mapper(componentModel = "spring", nullValueCheckStrategy = NullValueCheckStrategy.ALWAYS, @@ -35,8 +36,8 @@ import org.onap.cps.ncmp.rest.model.SyncState; public interface CmHandleStateMapper { @Mapping(target = "dataSyncState", source = "dataStores", qualifiedByName = "dataStoreToDataSyncState") - @Mapping(target = "lockReason.reason", source = "lockReason.lockReasonCategory") - CmHandleCompositeState toCmHandleCompositeState(CompositeState compositeState); + @Mapping(target = "lockReason", source = "lockReason", qualifiedByName = "toExternalLockReason") + CmHandleCompositeState toCmHandleCompositeStateExternalLockReason(CompositeState compositeState); /** * Convert from CompositeState datastore to RestOutput Datastores. @@ -66,4 +67,21 @@ public interface CmHandleStateMapper { } + /** + * Convert Internal Lock Reason to External Lock Reason. + * + * @param internalLockReason Internal Lock Reason + * + * @return externalLockReason + */ + @Named("toExternalLockReason") + static LockReason toExternalLockReason(CompositeState.LockReason internalLockReason) { + final LockReason externalLockReason = new LockReason(); + if (internalLockReason.getLockReasonCategory() != null) { + externalLockReason.setReason("LOCKED_MISBEHAVING"); + } + externalLockReason.setDetails(internalLockReason.getDetails()); + return externalLockReason; + } + } -- cgit 1.2.3-korg