...
5.1 Drools native policies supported by the PDP-D engine
5.1.1 Create native DRL
5.1.2 Deploy native DRL
5.1.3 Undeploy native DRL
5.1.4 Delele native DRL
...
Code Block | ||||
---|---|---|---|---|
| ||||
@startuml
autonumber
actor Drools_Policy_Designer as User
participant API
database Policy_DB as DB
participant Nexus
User -> Nexus: develop and deploy dependency JAR to nexus
User -> Nexus: develop and deploy DRL JAR to nexus
User -> API: POST - create TOSCA policy
API -> Nexus: validate JAR existence and Drools controller config
alt non-existence or invalid config
API -> User: JAR non-existence or invalid controller config
else everything is good
API -> DB: store policy in DB
DB -> API: success
API -> User: 200 Success
end
@enduml |
5.1.2 Deploy native DRL
Code Block | ||||
---|---|---|---|---|
| ||||
@startuml
autonumber
actor Drools_Policy_Designer as User
database Policy_DB as DB
participant API
participant PAP
participant DroolsPDP as PDP
participant Nexus
User -> PAP: POST - deploy policy
PAP -> API: GET the policy
API -> DB: read from DB
DB -> API: success
API -> PAP: return the policy
PAP -> PDP: public dmaap - deploy policy
PDP -> Nexus: pull the JAR
Nexus -> PDP: success
PDP -> PDP: instantiate a new drools controller
PDP -> PDP: load DRL and facts into memory
PDP -> PAP: publish dmaap - policy deployed
PAP -> User: 200 success
PAP -> PAP: publish policy update notification
@enduml |
5.1.3 Undeploy native DRL
Code Block | ||||
---|---|---|---|---|
| ||||
@startuml
autonumber
actor Drools_Policy_Designer as User
participant PAP
participant DroolsPDP as PDP
User -> PAP: DELETE - undeploy policy
PAP -> PDP: publish dmaap - undeploy policy
PDP -> PDP: DELETE - disable the controller
PDP -> PAP: publish dmaap - policy undeployed
PAP -> User: 200 success
PAP -> PAP: publish policy update notification
@enduml |
5.1.4 Delele native DRL
Code Block | ||||
---|---|---|---|---|
| ||||
@startuml
autonumber
actor Drools_Policy_Designer as User
participant API
database Policy_DB as DB
participant Nexus
User -> API: DELETE - delete policy
API -> DB: remove policy from DB
DB -> API: success
API -> Nexus: remove JAR from nexus
Nexus -> API: success
API -> User: 200 success
@enduml |
5.2 XACML native policies supported by the PDP-X engine
...