From b7dfec55755aef4297a5b43f937fae65eb1b6bb4 Mon Sep 17 00:00:00 2001 From: KrupaNagabhushan Date: Mon, 25 Aug 2025 12:31:41 +0100 Subject: [PATCH] TEIV API Uplift modifications Issue-ID: SMO-195 Change-Id: Icdaf74850f6be0cd816c6557d936d6abee53215d Signed-off-by: KrupaNagabhushan --- adapters/pom.xml | 4 +- docs/offeredapis/html/index.html | 27183 +++++++++++++------ docs/offeredapis/index.html | 1446 +- .../topology-exposure-inventory-openapi.json | 2465 +- .../topology-exposure-inventory-openapi.yaml | 738 +- .../rest/controller/ClassifiersRestController.java | 2 +- .../smo/teiv/exposure/data/api/DataService.java | 18 +- .../exposure/data/api/impl/DataServiceImpl.java | 57 +- .../data/rest/controller/DataController.java | 20 +- .../rest/controller/DecoratorsRestController.java | 2 +- .../smo/teiv/exposure/model/api/ModelService.java | 33 +- .../exposure/model/api/impl/ModelServiceImpl.java | 53 +- ...roller.java => PredefinedSchemaController.java} | 40 +- .../controller/UserDefinedSchemaController.java | 113 + .../smo/teiv/exposure/spi/ModelRepository.java | 16 + .../exposure/spi/impl/ModelRepositoryImpl.java | 31 +- .../smo/teiv/exposure/spi/mapper/EntityMapper.java | 10 +- .../exposure/spi/mapper/RelationshipMapper.java | 12 +- .../api/impl/resolver/EntityByDomainResolver.java | 13 +- .../api/impl/resolver/EntityByTypeResolver.java | 12 +- .../resolver/RelationshipByEntityIdResolver.java | 15 +- .../impl/resolver/RelationshipByTypeResolver.java | 14 +- .../org/oran/smo/teiv/utils/TeivConstants.java | 3 +- .../v1/topology-exposure-inventory-openapi.yaml | 738 +- .../api/contract/TopologyExposureApiBase.java | 4 +- .../teiv/exposure/spi/mapper/EntityMapperTest.java | 8 +- .../smo/teiv/groups/TopologyGroupsApiBase.java | 2 +- ...tClassifiers_getTopologyByEntityTypeName.groovy | 14 +- ...01_getClassifiers_getRelationshipsByType.groovy | 8 +- .../02_getClassifiers_getEntitiesByDomain.groovy | 6 +- .../classifiers/03_postClassifiers_merge.groovy | 10 +- .../classifiers/04_postClassifiers_delete.groovy | 18 +- .../exposure/data/00_getAllDomains.groovy | 66 +- .../exposure/data/01_getTopologyEntityTypes.groovy | 200 +- .../data/02_getTopologyByEntityTypeName.groovy | 158 +- .../exposure/data/03_getTopologyById.groovy | 8 +- .../data/04_getAllRelationshipsForEntityId.groovy | 76 +- .../exposure/data/05_getRelationshipTypes.groovy | 306 +- .../exposure/data/06_getRelationshipsByType.groovy | 32 +- .../exposure/data/07_getRelationshipById.groovy | 8 +- .../exposure/data/08_getEntitiesByDomain.groovy | 62 +- ...etDecorators_getTopologyByEntityTypeName.groovy | 8 +- .../01_getDecorators_getRelationshipsByType.groovy | 6 +- .../02_getDecorators_getEntitiesByDomain.groovy | 10 +- .../decorators/03_postDecoratorsMerge.groovy | 22 +- .../decorators/04_postDecoratorsDelete.groovy | 22 +- .../exposure/schemas/00_getAllSchemas.groovy | 97 +- .../exposure/schemas/01_getSchemaContent.groovy | 72 +- .../exposure/schemas/02_postSchemas.groovy | 50 +- .../exposure/schemas/03_deleteSchemas.groovy | 6 +- .../contracts/groups/00_createGroup.groovy | 72 +- .../resources/contracts/groups/01_getGroups.groovy | 10 +- .../contracts/groups/02_getGroupById.groovy | 18 +- .../contracts/groups/03_deleteGroup.groovy | 8 +- .../resources/contracts/groups/04_putGroup.groovy | 10 +- .../contracts/groups/05_getMembers.groovy | 30 +- .../contracts/groups/06_getProvidedMembers.groovy | 14 +- .../groups/07_updateProvidedMembers.groovy | 72 +- .../smo/yangtools/parser/simple/example/Main.java | 2 +- 59 files changed, 25221 insertions(+), 9332 deletions(-) rename teiv/src/main/java/org/oran/smo/teiv/exposure/model/rest/controller/{ModelController.java => PredefinedSchemaController.java} (92%) create mode 100644 teiv/src/main/java/org/oran/smo/teiv/exposure/model/rest/controller/UserDefinedSchemaController.java diff --git a/adapters/pom.xml b/adapters/pom.xml index 4cbd9e5..425557b 100644 --- a/adapters/pom.xml +++ b/adapters/pom.xml @@ -21,8 +21,8 @@ --> + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 4.0.0 org.oran.smo diff --git a/docs/offeredapis/html/index.html b/docs/offeredapis/html/index.html index f9cc62c..926de1b 100644 --- a/docs/offeredapis/html/index.html +++ b/docs/offeredapis/html/index.html @@ -959,7 +959,7 @@ ul.nav-tabs { }; defs["Domains_items_inner"] = { "properties" : { - "name" : { + "domainName" : { "type" : "string" }, "entityTypes" : { @@ -1039,8 +1039,9 @@ ul.nav-tabs { } } }; - defs["EntitiesResponseMessage"] = { + defs["Entities"] = { "title" : "Entities", + "required" : [ "items" ], "type" : "object", "properties" : { "items" : { @@ -1103,7 +1104,7 @@ ul.nav-tabs { defs["EntityTypes_items_inner"] = { "type" : "object", "properties" : { - "name" : { + "entityTypeName" : { "type" : "string" }, "entities" : { @@ -1306,6 +1307,32 @@ ul.nav-tabs { "type" : "integer" } } +}; + defs["ProblemDetails"] = { + "type" : "object", + "properties" : { + "type" : { + "type" : "string", + "description" : "a URI reference according to IETF RFC 3986 that identifies the problem type" + }, + "title" : { + "type" : "string", + "description" : "human-readable summary of the problem type" + }, + "status" : { + "type" : "number", + "description" : "the HTTP status code" + }, + "detail" : { + "type" : "string", + "description" : "human-readable explanation " + }, + "instance" : { + "type" : "string", + "description" : "URI reference that identifies the specific occurrence of the problem" + } + }, + "description" : "A problem detail to carry details in an HTTP response according to RFC 7807" }; defs["RelationshipTypes"] = { "title" : "RelationshipTypes", @@ -1340,7 +1367,7 @@ ul.nav-tabs { defs["RelationshipTypes_items_inner"] = { "type" : "object", "properties" : { - "name" : { + "relationshipTypeName" : { "type" : "string" }, "relationships" : { @@ -1348,15 +1375,16 @@ ul.nav-tabs { } } }; - defs["RelationshipsResponseMessage"] = { + defs["Relationships"] = { "title" : "Relationships", + "required" : [ "items" ], "type" : "object", "properties" : { "items" : { "type" : "array", "items" : { "type" : "object", - "description" : "Refer to yang model for schema definition of topology relationships" + "description" : "'Encapsulated object reference to the data model for schema definition of Topology Relationships" } }, "self" : { @@ -1397,7 +1425,7 @@ ul.nav-tabs { } } }; - defs["SchemaList"] = { + defs["Schemas"] = { "title" : "Schemas", "type" : "object", "properties" : { @@ -1537,6 +1565,36 @@ ul.nav-tabs { } } }; + defs["UserDefinedSchema"] = { + "title" : "UserDefinedSchema", + "type" : "object", + "properties" : { + "name" : { + "type" : "string" + }, + "domain" : { + "type" : "string" + }, + "revision" : { + "type" : "string" + }, + "content" : { + "$ref" : "#/components/schemas/Href" + } + } +}; + defs["UserDefinedSchemas"] = { + "title" : "UserDefinedSchemas", + "type" : "object", + "properties" : { + "items" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/UserDefinedSchema" + } + } + } +}; var errs = {}; @@ -1560,10 +1618,16 @@ ul.nav-tabs {
  • updateClassifier
  • +
  • + updateClassifierDeprecated +
  • updateDecorator
  • +
  • + updateDecoratorDeprecated +
  • getAllDomains @@ -1630,6 +1694,19 @@ ul.nav-tabs {
  • getSchemas
  • + +
  • + createUserDefinedSchema +
  • +
  • + deleteUserDefinedSchema +
  • +
  • + getUserDefinedSchemaByName +
  • +
  • + getUserDefinedSchemas +
  • @@ -1643,7 +1720,7 @@ ul.nav-tabs { - - - - - +
    +
    +
    + +
    + +
    +
    +

    +

    -