diff options
Diffstat (limited to 'src/main/java/org/onap/cps/ncmp/dmi/rest/controller/DmiRestController.java')
-rw-r--r-- | src/main/java/org/onap/cps/ncmp/dmi/rest/controller/DmiRestController.java | 34 |
1 files changed, 32 insertions, 2 deletions
diff --git a/src/main/java/org/onap/cps/ncmp/dmi/rest/controller/DmiRestController.java b/src/main/java/org/onap/cps/ncmp/dmi/rest/controller/DmiRestController.java index 3d49b78e..79c11a4e 100644 --- a/src/main/java/org/onap/cps/ncmp/dmi/rest/controller/DmiRestController.java +++ b/src/main/java/org/onap/cps/ncmp/dmi/rest/controller/DmiRestController.java @@ -24,6 +24,7 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; import java.util.List; import javax.validation.Valid; +import javax.validation.constraints.Min; import lombok.extern.slf4j.Slf4j; import org.onap.cps.ncmp.dmi.model.CmHandles; import org.onap.cps.ncmp.dmi.model.ModuleReference; @@ -89,7 +90,7 @@ public class DmiRestController implements DmiPluginApi, DmiPluginInternalApi { /** * This method fetches the resource for given cm handle using pass - * through option. It filters the response on the basis of depth and field + * through operational. It filters the response on the basis of depth and field * query parameters and returns response. * * @param cmHandle cm handle identifier @@ -106,7 +107,7 @@ public class DmiRestController implements DmiPluginApi, DmiPluginInternalApi { final @Valid OperationalRequest body, final String accept, final @Valid String fields, - final @Valid Integer depth) { + final @Min(1) @Valid Integer depth) { final var modulesListAsJson = dmiService.getResourceDataOperationalForCmHandle(cmHandle, resourceIdentifier, accept, @@ -116,6 +117,35 @@ public class DmiRestController implements DmiPluginApi, DmiPluginInternalApi { return ResponseEntity.ok(modulesListAsJson); } + /** + * This method fetches the resource for given cm handle using pass + * through running. It filters the response on the basis of depth and field + * query parameters and returns response. + * + * @param cmHandle cm handle identifier + * @param resourceIdentifier resource identifier to fetch data + * @param body operational body + * @param accept accept header parameter + * @param fields fields to filter the response data + * @param depth depth parameter for the response + * @return {@code ResponseEntity} response entity + */ + @Override + public ResponseEntity<Object> getResourceDataPassthroughRunningForCmHandle(final String cmHandle, + final String resourceIdentifier, + final @Valid OperationalRequest body, + final String accept, + final @Valid String fields, + final @Min(1) @Valid Integer depth) { + final var modulesListAsJson = dmiService.getResourceDataPassThroughRunningForCmHandle(cmHandle, + resourceIdentifier, + accept, + fields, + depth, + body.getCmHandleProperties()); + return ResponseEntity.ok(modulesListAsJson); + } + private List<ModuleReference> convertRestObjectToJavaApiObject(final ModuleRequestParent moduleRequestParent) { return objectMapper .convertValue(moduleRequestParent.getData().getModules(), new TypeReference<List<ModuleReference>>() { |