aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJosephKeenan <joseph.keenan@est.tech>2022-01-28 10:02:24 +0000
committerJosephKeenan <joseph.keenan@est.tech>2022-01-28 12:33:28 +0000
commit3c8f982b00c1f20981cecdd25ebb5a027e674cd3 (patch)
treec41f042edcf0e39b496b0faf5814b22c22ac7c63
parenta5ce86d02493f141848f9d609c65883d2198894a (diff)
[TECHDEBT] Align CPS Core REST API Specification and Implementationmr/822/126848/5
Issue-ID: CPS-822 Signed-off-by: JosephKeenan <joseph.keenan@est.tech> Change-Id: Idde7525628f7e1425602069e0d75506ac621113e
-rw-r--r--cps-application/src/test/java/org/onap/cps/architecture/LayeredArchitectureTest.java5
-rw-r--r--cps-rest/docs/openapi/components.yml11
-rw-r--r--cps-rest/docs/openapi/cpsAdmin.yml40
-rw-r--r--cps-rest/docs/openapi/cpsData.yml27
-rw-r--r--cps-rest/docs/openapi/cpsQuery.yml5
5 files changed, 62 insertions, 26 deletions
diff --git a/cps-application/src/test/java/org/onap/cps/architecture/LayeredArchitectureTest.java b/cps-application/src/test/java/org/onap/cps/architecture/LayeredArchitectureTest.java
index bc5ad1896..817bd5835 100644
--- a/cps-application/src/test/java/org/onap/cps/architecture/LayeredArchitectureTest.java
+++ b/cps-application/src/test/java/org/onap/cps/architecture/LayeredArchitectureTest.java
@@ -42,6 +42,7 @@ public class LayeredArchitectureTest {
private static final String SPI_REPOSITORY_PACKAGE = "org.onap.cps.spi.repository..";
private static final String YANG_SCHEMA_PACKAGE = "org.onap.cps.yang..";
private static final String NOTIFICATION_PACKAGE = "org.onap.cps.notification..";
+ private static final String CPS_UTILS_PACKAGE = "org.onap.cps.utils..";
@ArchTest
static final ArchRule restControllerShouldOnlyDependOnRestController =
@@ -49,11 +50,11 @@ public class LayeredArchitectureTest {
.resideInAPackage(REST_CONTROLLER_PACKAGE);
@ArchTest
- static final ArchRule apiOrSpiServiceShouldOnlyBeDependedOnByControllerAndServices =
+ static final ArchRule apiOrSpiServiceShouldOnlyBeDependedOnByControllerAndServicesAndCommonUtilityPackages =
freeze(classes().that().resideInAPackage(API_SERVICE_PACKAGE)
.or().resideInAPackage(SPI_SERVICE_PACKAGE).should().onlyHaveDependentClassesThat()
.resideInAnyPackage(REST_CONTROLLER_PACKAGE, API_SERVICE_PACKAGE, SPI_SERVICE_PACKAGE, NCMP_REST_PACKAGE,
- NCMP_SERVICE_PACKAGE, YANG_SCHEMA_PACKAGE, NOTIFICATION_PACKAGE));
+ NCMP_SERVICE_PACKAGE, YANG_SCHEMA_PACKAGE, NOTIFICATION_PACKAGE, CPS_UTILS_PACKAGE));
@ArchTest
static final ArchRule repositoryShouldOnlyBeDependedOnByServicesAndRepository =
diff --git a/cps-rest/docs/openapi/components.yml b/cps-rest/docs/openapi/components.yml
index ff2816af6..694c2207a 100644
--- a/cps-rest/docs/openapi/components.yml
+++ b/cps-rest/docs/openapi/components.yml
@@ -1,5 +1,6 @@
# ============LICENSE_START=======================================================
# Copyright (c) 2021 Bell Canada.
+# Modifications Copyright (C) 2021-2022 Nordix Foundation
# ================================================================================
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -277,6 +278,16 @@ components:
schema:
type: string
example: my-resource
+ InternalServerError:
+ description: Internal Server Error
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/ErrorMessage"
+ example:
+ status: 500
+ message: Internal Server Error
+ details: Internal Server Error occured
NoContent:
description: No Content
content: {}
diff --git a/cps-rest/docs/openapi/cpsAdmin.yml b/cps-rest/docs/openapi/cpsAdmin.yml
index 869cb6e72..a25f81eaf 100644
--- a/cps-rest/docs/openapi/cpsAdmin.yml
+++ b/cps-rest/docs/openapi/cpsAdmin.yml
@@ -1,5 +1,6 @@
# ============LICENSE_START=======================================================
# Copyright (c) 2021 Bell Canada.
+# Modifications Copyright (C) 2021-2022 Nordix Foundation
# ================================================================================
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -28,13 +29,14 @@ dataspaces:
responses:
'201':
$ref: 'components.yml#/components/responses/Created'
- '400':
- $ref: 'components.yml#/components/responses/BadRequest'
'401':
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
-
+ '409':
+ $ref: 'components.yml#/components/responses/Conflict'
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
delete:
description: Delete a dataspace
tags:
@@ -54,6 +56,8 @@ dataspaces:
$ref: 'components.yml#/components/responses/Forbidden'
'409':
$ref: 'components.yml#/components/responses/Conflict'
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
schemaSet:
post:
@@ -71,7 +75,6 @@ schemaSet:
multipart/form-data:
schema:
$ref: 'components.yml#/components/schemas/MultipartFile'
-
responses:
'201':
$ref: 'components.yml#/components/responses/Created'
@@ -81,6 +84,10 @@ schemaSet:
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
+ '409':
+ $ref: 'components.yml#/components/responses/Conflict'
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
schemaSetBySchemaSetName:
get:
@@ -105,9 +112,8 @@ schemaSetBySchemaSetName:
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
- '404':
- $ref: 'components.yml#/components/responses/NotFound'
-
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
delete:
description: Delete a schema set given a schema set name and a dataspace
tags:
@@ -128,6 +134,8 @@ schemaSetBySchemaSetName:
$ref: 'components.yml#/components/responses/Forbidden'
'409':
$ref: 'components.yml#/components/responses/Conflict'
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
anchorsByDataspace:
get:
@@ -153,9 +161,8 @@ anchorsByDataspace:
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
- '404':
- $ref: 'components.yml#/components/responses/NotFound'
-
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
post:
description: Create a new anchor in the given dataspace
tags:
@@ -175,6 +182,10 @@ anchorsByDataspace:
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
+ '409':
+ $ref: 'components.yml#/components/responses/Conflict'
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
anchorByDataspaceAndAnchorName:
get:
@@ -199,9 +210,8 @@ anchorByDataspaceAndAnchorName:
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
- '404':
- $ref: 'components.yml#/components/responses/NotFound'
-
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
delete:
description: Delete an anchor given an anchor name and a dataspace
tags:
@@ -219,4 +229,6 @@ anchorByDataspaceAndAnchorName:
'401':
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
- $ref: 'components.yml#/components/responses/Forbidden' \ No newline at end of file
+ $ref: 'components.yml#/components/responses/Forbidden'
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError' \ No newline at end of file
diff --git a/cps-rest/docs/openapi/cpsData.yml b/cps-rest/docs/openapi/cpsData.yml
index 15f8a1c71..099512d7d 100644
--- a/cps-rest/docs/openapi/cpsData.yml
+++ b/cps-rest/docs/openapi/cpsData.yml
@@ -1,5 +1,6 @@
# ============LICENSE_START=======================================================
# Copyright (c) 2021 Bell Canada.
+# Modifications Copyright (C) 2021-2022 Nordix Foundation
# ================================================================================
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -44,8 +45,8 @@ nodeByDataspaceAndAnchor:
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
- '404':
- $ref: 'components.yml#/components/responses/NotFound'
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
x-codegen-request-body-name: xpath
listElementByDataspaceAndAnchor:
@@ -78,7 +79,8 @@ listElementByDataspaceAndAnchor:
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
-
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
put:
description: Replace list content under a given parent, anchor and dataspace
tags:
@@ -108,7 +110,8 @@ listElementByDataspaceAndAnchor:
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
-
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
delete:
description: Delete one or all list element(s) for a given anchor and dataspace
deprecated: true
@@ -130,6 +133,8 @@ listElementByDataspaceAndAnchor:
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
nodesByDataspaceAndAnchor:
post:
@@ -161,7 +166,10 @@ nodesByDataspaceAndAnchor:
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
-
+ '409':
+ $ref: 'components.yml#/components/responses/Conflict'
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
patch:
description: Update a data node leaves for a given dataspace and anchor and a parent node xpath
tags:
@@ -191,7 +199,8 @@ nodesByDataspaceAndAnchor:
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
-
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
delete:
description: Delete a datanode for a given dataspace and anchor given a node xpath.
tags:
@@ -212,8 +221,8 @@ nodesByDataspaceAndAnchor:
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
-
-
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
put:
description: Replace a node with descendants for a given dataspace, anchor and a parent node xpath
tags:
@@ -243,3 +252,5 @@ nodesByDataspaceAndAnchor:
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
diff --git a/cps-rest/docs/openapi/cpsQuery.yml b/cps-rest/docs/openapi/cpsQuery.yml
index 4f938aa89..06c9ca2a2 100644
--- a/cps-rest/docs/openapi/cpsQuery.yml
+++ b/cps-rest/docs/openapi/cpsQuery.yml
@@ -1,5 +1,6 @@
# ============LICENSE_START=======================================================
# Copyright (C) 2021 Nordix Foundation
+# Copyright (C) 2021-2022 Nordix Foundation
# ================================================================================
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -44,6 +45,6 @@ nodesByDataspaceAndAnchorAndCpsPath:
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
- '404':
- $ref: 'components.yml#/components/responses/NotFound'
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
x-codegen-request-body-name: xpath