Interaction between clamp-gui and policy-api
This document is related to the Jira task "POLICY-3470".
Clamp GUI - PolicyService.js endpoints
GET restservices/clds/v2/policies
POST restservices/clds/v2/policies/{policyModelType}/{policyModelVersion}/{policyName}/{policyVersion}
DELETE restservices/clds/v2/policies/{policyModelType}/{policyModelVersion}/{policyName}/{policyVersion}
PUT restservices/clds/v2/policies/pdpDeployment
POST restservices/clds/v2/policies/policytype
Flow GET restservices/clds/v2/policies
clamp-api-v2.xml:
calls "direct:get-all-policies" in policy-flows.xml that calls GET "/policy/api/v1/policies"
calls "direct:get-all-pdp-groups" in policy-flows.xml that calls GET "/policy/pap/v1/pdps"
merges result
Flow POST restservices/clds/v2/policies/{policyModelType}/{policyModelVersion}/{policyName}/{policyVersion}
clamp-api-v2.xml:
calls PolicyModelsService.getPolicyModelTosca: policyModelsRepository.findById (Retrieves the Tosca model Yaml string)
calls PolicyPayload.createPolicyPayload to create a Json body
calls "direct:create-policy" in policy-flows.xml that calls POST "/policy/api/v1/policytypes/{policyModelType}/versions/{policyModelVersion}/policies"
Flow DELETE restservices/clds/v2/policies/{policyModelType}/{policyModelVersion}/{policyName}/{policyVersion}
clamp-api-v2.xml:
calls "direct:undeploy-one-policy-from-pap" in policy-flows.xml that calls DELETE "/policy/pap/v1/pdps/policies/{policyName}/versions/{policyVersion}"
calls "direct:delete-policy" in policy-flows.xml that calls DELETE "/policy/api/v1/policytypes/{policyModelType}/versions/{policyModelVersion}/policies/{policyName}/versions/{policyVersion}"
Flow PUT restservices/clds/v2/policies/pdpDeployment
clamp-api-v2.xml:
calls PdpGroupPayload.generatePdpGroupPayloadFromList to create a Json body
calls "direct:add-multiple-policies-to-pdp-group" in policy-flows.xml that calls POST "/policy/pap/v1/pdps/deployments/batch"
Flow POST restservices/clds/v2/policies/policytype
clamp-api-v2.xml:
calls "direct:create-policy-type" in policy-flows.xml that calls POST "/policy/api/v1/policytypes"
calls PolicyEngineController.synchronizeAllPolicies() that download All PolicyModels
Clamp - @Scheduled(fixedRate = 300000)
calls PolicyEngineServices.synchronizeAllPolicies() that download All PolicyModels and synchronize the clamp database and the policy engine. So it creates the required PolicyModel.
calls PolicyEngineServices.downloadPdpGroups that download All PdpGroups and Update the Pdp Group info in Policy Model DB.
Clamp GUI - UserService.js endpoints
GET restservices/clds/v1/user/getUser
GET restservices/clds/v2/clampInformation
Clamp GUI - ACMService.js endpoints
GET restservices/clds/v2/acm/getToscaInstantiation
POST restservices/clds/v2/acm/postToscaInstanceProperties
DELETE restservices/clds/v2/acm/deleteToscaInstanceProperties?{params)
GET restservices/clds/v2/acm/getInstantiationOrderState?{params)
PUT restservices/clds/v2/acm/putToscaInstantiationStateChange
GET restservices/clds/v2/acm/getToscaTemplate?{params)
POST restservices/clds/v2/acm/commissionToscaTemplate
DELETE restservices/clds/v2/acm/decommissionToscaTemplate?{params)
GET restservices/clds/v2/acm/getCommonOrInstanceProperties
Clamp GUI - LoopActionService.js endpoints
PUT restservices/clds/v2/loop/{svcAction}/{cl_name}
GET restservices/clds/v2/loop/getstatus/{cl_name}
Clamp GUI - LoopService.js endpoints
GET restservices/clds/v2/loop/getAllNames
POST restservices/clds/v2/loop/create/{loopName}?{templateName=templateName}
GET restservices/clds/v2/loop/{loopName}
POST restservices/clds/v2/loop/updateMicroservicePolicy/{loopName}
POST restservices/clds/v2/loop/updateOperationalPolicies/{loopName}
POST restservices/clds/v2/loop/updateGlobalProperties/{loopName}
PUT restservices/clds/v2/loop/refreshOperationalPolicyJsonSchema/{loopName}/{operationalPolicyName}
PUT restservices/clds/v2/loop/refreshMicroServicePolicyJsonSchema/{loopName}/{microServicePolicyName}
PUT restservices/clds/v2/loop/addOperationaPolicy/{loopName}/policyModel/{policyType}/{policyVersion}
PUT restservices/clds/v2/loop/removeOperationaPolicy/{loopName}/policyModel/{policyType}/{policyVersion}/{policyName}
Clamp GUI - PolicyToscaService.js endpoints
GET restservices/clds/v2/policyToscaModels
GET restservices/clds/v2/policyToscaModels/yaml/{policyModelType}/{policyModelVersion}
GET restservices/clds/v2/policyToscaModels/{policyModelType}/{policyModelVersion}
Clamp GUI - TemplateService.js endpoints
GET restservices/clds/v2/loop/getAllNames
GET restservices/clds/v2/templates
GET restservices/clds/v2/dictionary/
GET restservices/clds/v2/dictionary/{dictionaryName}
PUT restservices/clds/v2/dictionary/
PUT restservices/clds/v2/dictionary/{dictionaryName}
DELETE restservices/clds/v2/dictionary/{dictionaryName}
DELETE restservices/clds/v2/dictionary/{dictionaryName}/elements/{dictionaryElement}