summaryrefslogtreecommitdiffstats
path: root/docs/architecture/plantuml/PolicyDatabase.puml
diff options
context:
space:
mode:
Diffstat (limited to 'docs/architecture/plantuml/PolicyDatabase.puml')
-rw-r--r--docs/architecture/plantuml/PolicyDatabase.puml54
1 files changed, 54 insertions, 0 deletions
diff --git a/docs/architecture/plantuml/PolicyDatabase.puml b/docs/architecture/plantuml/PolicyDatabase.puml
new file mode 100644
index 00000000..3597324e
--- /dev/null
+++ b/docs/architecture/plantuml/PolicyDatabase.puml
@@ -0,0 +1,54 @@
+@startuml
+
+title Indicative Database Layout
+
+!define table(x) class x << (T,#FFAAAA) >>
+!define primary_key(x) <u>x</u>
+hide methods
+hide stereotypes
+
+table(PDP_SUBGROUP) {
+ primary_key(PDP_SUBGROUP_ID)
+ PDP_SUBGROUP_NAME
+ PDP_SUBGROUP_VERSION
+ PDP_TYPE
+ PDP_SERVICE_ENDPOINT
+ POLICY_SET_ID
+ PDP_SUBGROUP_STATE
+}
+
+table(PDP) {
+ primary_key(PDP_ID)
+ PDP_NAME
+ PDP_VERSION
+ PDP_TYPE
+ PDP_ENDPOINT
+ PDP_SUBGROUP_ID
+ POLICY_SET_ID PDP_STATE
+}
+
+table(POLICY_SET) {
+ primary_key(POLICY_SET_ID)
+ POLICY_SET_NAME
+ POLICY_SET_VERSION
+}
+
+table(POLICY_TYPE_IMPL) {
+ primary_key(POLICY_TYPE_IMPL_ID)
+ POLICY_NAME
+ POLICY_VERSION
+ PDP_TYPE POLICY_ARTIFACT
+}
+
+table(POLICY_SET_TO_POLICY_TYPE_IMPL) {
+ POLICY_SET_ID
+ POLICY_TYPE_IMPL_ID
+}
+
+PDP_SUBGROUP::POLICY_SET_ID --> POLICY_SET::POLICY_SET_ID
+PDP::PDP_SUBGROUP_ID --> PDP_SUBGROUP::PDP_SUBGROUP_ID
+PDP::POLICY_SET_ID --> POLICY_SET::POLICY_SET_ID
+POLICY_SET_TO_POLICY_TYPE_IMPL::POLICY_SET_ID --> POLICY_SET::POLICY_SET_ID
+POLICY_SET_TO_POLICY_TYPE_IMPL::POLICY_TYPE_IMPL_ID --> POLICY_TYPE_IMPL::POLICY_TYPE_IMPL_ID
+
+@enduml \ No newline at end of file