Adding documentation for invoker
[nonrtric/plt/sme.git] / invoker / docs / Obtain Security Method.svg
diff --git a/invoker/docs/Obtain Security Method.svg b/invoker/docs/Obtain Security Method.svg
new file mode 100644 (file)
index 0000000..368bdb0
--- /dev/null
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="511px" preserveAspectRatio="none" style="width:659px;height:511px;background:#FFFFFF;" version="1.1" viewBox="0 0 659 511" width="659px" zoomAndPan="magnify"><defs/><g><rect fill="#DDDDDD" height="499.3203" style="stroke:#181818;stroke-width:0.5;" width="526" x="121" y="6"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="104" x="332" y="18.0669">CAPIF Internal</text><rect fill="#FFC0CB" height="310.7266" style="stroke:#000000;stroke-width:1.5;" width="643" x="10" y="98.2969"/><line style="stroke:#181818;stroke-width:0.5;stroke-dasharray:5.0,5.0;" x1="67" x2="67" y1="81.2969" y2="426.0234"/><line style="stroke:#181818;stroke-width:0.5;stroke-dasharray:5.0,5.0;" x1="163" x2="163" y1="81.2969" y2="426.0234"/><line style="stroke:#181818;stroke-width:0.5;stroke-dasharray:5.0,5.0;" x1="303" x2="303" y1="81.2969" y2="426.0234"/><line style="stroke:#181818;stroke-width:0.5;stroke-dasharray:5.0,5.0;" x1="463" x2="463" y1="81.2969" y2="426.0234"/><line style="stroke:#181818;stroke-width:0.5;stroke-dasharray:5.0,5.0;" x1="586" x2="586" y1="81.2969" y2="426.0234"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="89" x="20" y="77.9951">InvokerClient</text><ellipse cx="67.5" cy="13.5" fill="#E2E2F0" rx="8" ry="8" style="stroke:#181818;stroke-width:0.5;"/><path d="M67.5,21.5 L67.5,48.5 M54.5,29.5 L80.5,29.5 M67.5,48.5 L54.5,63.5 M67.5,48.5 L80.5,63.5 " fill="none" style="stroke:#181818;stroke-width:0.5;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="89" x="20" y="438.0186">InvokerClient</text><ellipse cx="67.5" cy="449.8203" fill="#E2E2F0" rx="8" ry="8" style="stroke:#181818;stroke-width:0.5;"/><path d="M67.5,457.8203 L67.5,484.8203 M54.5,465.8203 L80.5,465.8203 M67.5,484.8203 L54.5,499.8203 M67.5,484.8203 L80.5,499.8203 " fill="none" style="stroke:#181818;stroke-width:0.5;"/><rect fill="#E2E2F0" height="30.2969" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="77" x="125" y="50"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="63" x="132" y="69.9951">capifcore</text><rect fill="#E2E2F0" height="30.2969" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="77" x="125" y="425.0234"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="63" x="132" y="445.0186">capifcore</text><rect fill="#E2E2F0" height="30.2969" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="117" x="245" y="50"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="103" x="252" y="69.9951">securityservice</text><rect fill="#E2E2F0" height="30.2969" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="117" x="245" y="425.0234"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="103" x="252" y="445.0186">securityservice</text><rect fill="#E2E2F0" height="30.2969" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="113" x="407" y="50"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="99" x="414" y="69.9951">invokerservice</text><rect fill="#E2E2F0" height="30.2969" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="113" x="407" y="425.0234"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="99" x="414" y="445.0186">invokerservice</text><rect fill="#E2E2F0" height="30.2969" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="113" x="530" y="50"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="99" x="537" y="69.9951">publishservice</text><rect fill="#E2E2F0" height="30.2969" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="113" x="530" y="425.0234"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="99" x="537" y="445.0186">publishservice</text><path d="M10,98.2969 L74,98.2969 L74,105.4297 L64,115.4297 L10,115.4297 L10,98.2969 " fill="#FFC0CB" style="stroke:#000000;stroke-width:1.5;"/><rect fill="none" height="310.7266" style="stroke:#000000;stroke-width:1.5;" width="643" x="10" y="98.2969"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="19" x="25" y="111.3638">alt</text><text fill="#000000" font-family="sans-serif" font-size="11" font-weight="bold" lengthAdjust="spacing" textLength="113" x="89" y="110.5073">[Security Service]</text><polygon fill="#181818" points="291.5,162.8281,301.5,166.8281,291.5,170.8281,295.5,166.8281" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="67.5" x2="297.5" y1="166.8281" y2="166.8281"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="160" x="74.5" y="131.4966">Request security method</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="95" x="78.5" y="146.6294">for service with</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="155" x="78.5" y="161.7622">SecurityService Request</text><polygon fill="#181818" points="451.5,191.9609,461.5,195.9609,451.5,199.9609,455.5,195.9609" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="303.5" x2="457.5" y1="195.9609" y2="195.9609"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="136" x="310.5" y="190.895">Is invoker registered?</text><polygon fill="#181818" points="314.5,221.0938,304.5,225.0938,314.5,229.0938,310.5,225.0938" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="308.5" x2="462.5" y1="225.0938" y2="225.0938"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="17" x="320.5" y="220.0278">Ok</text><polygon fill="#181818" points="574.5,250.2266,584.5,254.2266,574.5,258.2266,578.5,254.2266" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="303.5" x2="580.5" y1="254.2266" y2="254.2266"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="131" x="310.5" y="249.1606">Is service published?</text><polygon fill="#181818" points="314.5,279.3594,304.5,283.3594,314.5,287.3594,310.5,283.3594" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="308.5" x2="585.5" y1="283.3594" y2="283.3594"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="17" x="320.5" y="278.2935">Ok</text><polygon fill="#181818" points="574.5,323.625,584.5,327.625,574.5,331.625,578.5,327.625" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="303.5" x2="580.5" y1="327.625" y2="327.625"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="222" x="310.5" y="307.4263">Determine the security method for</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="164" x="314.5" y="322.5591">each service API interface</text><polygon fill="#181818" points="314.5,352.7578,304.5,356.7578,314.5,360.7578,310.5,356.7578" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="308.5" x2="585.5" y1="356.7578" y2="356.7578"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="181" x="320.5" y="351.6919">Compatible security method</text><polygon fill="#181818" points="78.5,397.0234,68.5,401.0234,78.5,405.0234,74.5,401.0234" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="72.5" x2="302.5" y1="401.0234" y2="401.0234"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="165" x="84.5" y="380.8247">SecurityService Response</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="208" x="88.5" y="395.9575">with compatible security method</text><!--MD5=[7e91cf5d9c1c92a05b382ae10f455965]
+@startuml Obtain Security Method\r
+actor InvokerClient\r
+\r
+box "CAPIF Internal"\r
+participant capifcore\r
+participant securityservice\r
+participant invokerservice\r
+participant publishservice\r
+\r
+end box\r
+\r
+alt#Pink #Pink Security Service\r
+    InvokerClient->securityservice: Request security method\n for service with\n SecurityService Request\r
+    securityservice->invokerservice: Is invoker registered?\r
+    invokerservice->securityservice: Ok\r
+    securityservice->publishservice: Is service published?\r
+    publishservice->securityservice: Ok\r
+    securityservice->publishservice: Determine the security method for\n each service API interface\r
+    publishservice->securityservice: Compatible security method\r
+    securityservice->InvokerClient: SecurityService Response\n with compatible security method\r
+end\r
+\r
+@enduml\r
+
+PlantUML version 1.2022.7(Mon Aug 22 19:01:30 CEST 2022)
+(GPL source distribution)
+Java Runtime: OpenJDK Runtime Environment
+JVM: OpenJDK 64-Bit Server VM
+Default Encoding: UTF-8
+Language: en
+Country: null
+--></g></svg>
\ No newline at end of file