Update documentation - adding security information
[nonrtric/plt/sme.git] / capifcore / docs / diagrams / registerpoviderandpublishservice.plantuml
index b5439ee..eb013c1 100644 (file)
@@ -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,10 +12,30 @@ participant invokerservice
 participant discoverservice
 participant securityservice
 participant eventservice
+participant loggingservice
 end box
 
-alt Regtister rApp as both provider and consumer
-    rAppCatalogue->rAppManager: Register rApp, with rApp\n descriptor specifying which\n services to expose and consume
+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
+end
+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
@@ -33,53 +54,42 @@ alt Regtister rApp as both provider and consumer
         helmmanager->publishservice: Ok
         alt#Orange #Orange Subcribed Event Handling
             publishservice->eventservice: Service published
-            eventservice->rApp: CAPIFEventDetail
+            eventservice->capp: CAPIFEventDetail
         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
-        end
-        invokerservice->capifcore: Services available\n for the invoker
-        capifcore->rAppManager: Invoker with invokerId\n and available services
-    end
+    rAppManager->papp: apiProvDomId,\n apiProvFuncIds,\n and apiId
     rAppManager->rAppCatalogue: Ok
 end
 alt#Yellow #Yellow Discover Services
-    rApp->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->rApp: 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