...
PlantUML Macro | ||
---|---|---|
| ||
@startuml participant SDC participant DMaaP box "PolicyDesign" #LightBlue participant PolicyDistribution << API_User >> participant PolicyDesign end box autonumber PolicyDistribution --> DMaaP : Subscribe for SDC Notifications\non on Entries of Interest SDC --> DMaaP : New Entry of Interest: EntityA DMaaP --> PolicyDistribution : New Entry of Interest: EntityA PolicyDistribution --> PolicyDesign : Get Policy Reference PolicyDesign --> PolicyDistribution : Return Policy Reference and Metadata PolicyDistribution --> PolicyDistribution : Create Policy Editing and Generation Session activate PolicyDistribution loop PolicyDistribution --> PolicyDesign : Use Policy Type specification to read\nPolicy Parameters from TOSCA specification in CSAR end PolicyDistribution --> PolicyDesign : Generate Policy PolicyDesign --> PolicyDistribution : Policy Generation Result deactivate PolicyDistribution @enduml |
PolicyDesign contains a component PolicyDesignSDCHandler for uses the PolicyDistribution componentfor managing SDC-triggered concrete triggered policy creation and update requests. PolicyDesignSDCHandler PolicyDistribution is an API_User, it uses the Policy Design API to execution for policy creation and update. It reads the information it needs to populate the policy template type from a TOSCA specification in a CSAR received from SDC and then uses this information to automatically generate a policy.
Note that SDC provides a wrapper for the SDC API as a Java Client and also provides a TOSCA parser. See Policy Platform - SDC Service Distribution Software Architecture
In Step 4 above, the PolicyDesignSDCHandler the PolicyDesign must download the CSAR file. If the policy is to be composed from the TOSCA definition, it must also parse the TOSCA definition.
In Step 9 above, the PolicyDesignSDCHandler the PolicyDesign must send back/publish status events to SDC such as DOWNLOAD_OK, DOWNLOAD_ERROR, DEPOLY_OK, DEPOLY_ERROR, NOTIFIED.
...