X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=capifcore%2Fdocs%2Fdiagrams%2Fregisterpoviderandpublishservice.plantuml;h=eb013c1854d26dd19be03ec11203bffbe0fd472f;hb=04bff387835f0464f35bab936f7e572edf8c5346;hp=7d9ff3b06db0422afc6c7c7d4beb8c394f9a3054;hpb=86b2798a9b7dd2ac07eed563d1acbb26c0e5c2be;p=nonrtric%2Fplt%2Fsme.git diff --git a/capifcore/docs/diagrams/registerpoviderandpublishservice.plantuml b/capifcore/docs/diagrams/registerpoviderandpublishservice.plantuml index 7d9ff3b..eb013c1 100644 --- a/capifcore/docs/diagrams/registerpoviderandpublishservice.plantuml +++ b/capifcore/docs/diagrams/registerpoviderandpublishservice.plantuml @@ -1,7 +1,8 @@ @startuml Register Provider actor rAppCatalogue -actor rApp participant rAppManager +participant "consumer rApp" as capp +participant "provider rApp" as papp box "CAPIF Internal" participant capifcore participant providermanager @@ -11,74 +12,84 @@ participant invokerservice participant discoverservice participant securityservice participant eventservice +participant loggingservice end box -rAppCatalogue->rAppManager: Start rApp, with rApp\n descriptor specifying which\n services to expose and consume -alt#paleGreen #paleGreen Provider Enrolment - rAppManager->capifcore: Register provider with\n APIProviderEnrolmentDetails - capifcore->providermanager:Register provider - providermanager->providermanager: Create apiProvDomId\n and apiProvFuncIds\n for provided functions - providermanager->capifcore: Provider with\n apfId and aefIds - capifcore->rAppManager: Provider with\n apfId and aefIds -end -alt#LightBlue #LightBlue Publish Service - rAppManager->capifcore: Publish services\n with providerId\n andServiceAPIDescription - capifcore->publishservice: Publish services - publishservice->providermanager: Are AEFs are\n registered for provider? - providermanager->publishservice: Ok - publishservice->publishservice: Create apiId - publishservice->helmmanager: Install chart - note right: Optional and not decided yet - helmmanager->publishservice: Ok - alt#Orange #Orange Subcribed Event Handling - publishservice->eventservice: Service published - eventservice->rApp: CAPIFEventDetail +alt Register Consumer rApp + rAppCatalogue->rAppManager: Register consumer \nrApp + alt#coral #coral Register Invoker + rAppManager->capifcore: Register invoker with\n APIInvokerEnrolmentDetails + capifcore->invokerservice: Register invoker + invokerservice->invokerservice: Create apiInvokerId and\n onboardingSecret + invokerservice->publishservice: Get available services + publishservice->invokerservice: Available services + invokerservice->capifcore: Services available\n for the invoker + capifcore->rAppManager: Invoker with invokerId\n and available services + end + rAppManager->capp: invokerId and\n available services + rAppManager->rAppCatalogue: Ok + alt#Orange #Orange Subscribe to publishing events + capp->eventservice: Subscribe to events\n with EventSubscription + eventservice->eventservice: Create subscriptionId + eventservice->capp: subscriptionId end - publishservice->capifcore: ServiceAPIDescription\n with apiId - capifcore->rAppManager: ServiceAPIDescription\n with apiId end -alt#coral #coral Register Invoker - rAppManager->capifcore: Register invoker with\n APIInvokerEnrolmentDetails - capifcore->invokerservice: Register invoker - invokerservice->invokerservice: Create apiInvokerId and\n onboardingSecret - invokerservice->publishservice: Get available services - publishservice->invokerservice: Available services - alt#Orange #Orange Subcribed Event Handling - invokerservice->eventservice: Invoker registered - eventservice->rApp: CAPIFEventDetail +alt Register provider rApp + rAppCatalogue->rAppManager: Register rApp, with\n rApp descriptor\n specifying which\n services to expose + alt#paleGreen #paleGreen Provider Enrolment + rAppManager->capifcore: Register provider with\n APIProviderEnrolmentDetails + capifcore->providermanager:Register provider + providermanager->providermanager: Create apiProvDomId\n and apiProvFuncIds\n for provided functions + providermanager->capifcore: Provider with\n apfId and aefIds + capifcore->rAppManager: Provider with\n apfId and aefIds + end + alt#LightBlue #LightBlue Publish Service + rAppManager->capifcore: Publish services\n with providerId\n andServiceAPIDescription + capifcore->publishservice: Publish services + publishservice->providermanager: Are AEFs registered\n for provider? + providermanager->publishservice: Ok + publishservice->publishservice: Create apiId + publishservice->helmmanager: Install chart + note right: Optional and not decided yet + helmmanager->publishservice: Ok + alt#Orange #Orange Subcribed Event Handling + publishservice->eventservice: Service published + eventservice->capp: CAPIFEventDetail + end + publishservice->capifcore: ServiceAPIDescription\n with apiId + capifcore->rAppManager: ServiceAPIDescription\n with apiId end - invokerservice->capifcore: Services available\n for the invoker - capifcore->rAppManager: Invoker with invokerId\n and available services + rAppManager->papp: apiProvDomId,\n apiProvFuncIds,\n and apiId + rAppManager->rAppCatalogue: Ok end -rAppManager->rAppCatalogue: Ok - alt#Yellow #Yellow Discover Services - rAppManager->capifcore: Discover services for an\n invoker with apiInvokerId\n and filter parameters + capp->capifcore: Discover services\n with apiInvokerId\n and filter parameters capifcore->discoverservice: Get services available\n for the invoker discoverservice->invokerservice: Get services available\n for the invoker invokerservice->publishservice: Get available services publishservice->invokerservice: Available services invokerservice->discoverservice: Services available \nfor the invoker discoverservice->capifcore: Services available for the\n invoker matching the\n filter parameters - capifcore->rAppManager: Services available for the\n invoker and matching the\n filter parameters -end - -alt#Pink #Pink Security Service - rApp->securityservice: Request token\n for service with\n AccessTokenReq - securityservice->invokerservice: Is invoker registered? - invokerservice->securityservice: Ok - securityservice->invokerservice: Is secret valid? - invokerservice->securityservice: Ok - securityservice->providermanager: Is function providing\n service registered? - providermanager->securityservice: Ok - securityservice->publishservice: Is service published? - publishservice->securityservice: Ok - securityservice->rApp: AccessTokenRsp with\n token + capifcore->capp: Services available\n matching the\n filter parameters end -alt#Orange #Orange Event Service - rApp->eventservice: Subscribe to event with EventSubscription - eventservice->eventservice: Create subscriptionId - eventservice->rApp: subscriptionId +alt Invoke Service + alt#Pink #Pink Security Service + capp->securityservice: Request token\n for service with\n AccessTokenReq + securityservice->invokerservice: Is invoker registered? + invokerservice->securityservice: Ok + securityservice->invokerservice: Is secret valid? + invokerservice->securityservice: Ok + securityservice->providermanager: Is function providing\n service registered? + providermanager->securityservice: Ok + securityservice->publishservice: Is service published? + publishservice->securityservice: Ok + securityservice->capp: AccessTokenRsp\n with token + end + capp->papp: Invoke service\n with token + alt#Silver #Silver Log invocation + papp->loggingservice: Log invocation\n with InvocationLog + end + papp->capp: Result of\n invocation end @enduml \ No newline at end of file