blob: 03fb12dbe7dbe9305b9b08509f0511ad73dbc389 [file] [log] [blame]
Saryu Shahef28b6d2017-11-14 03:00:56 +00001
2.. This work is licensed under a Creative Commons Attribution 4.0 International License.
3.. http://creativecommons.org/licenses/by/4.0
4
5***************************
6PDP-D Software Architecture
7***************************
8
9.. contents::
10 :depth: 3
11
12Overview
13^^^^^^^^
14
15In ONAP, PDP-D is the Policy component that executes Operational Policies (see `Control Loop Operational Policy`_ ). It uses `drools`_ as the underlying rule based engine to execute policies.
16
17The PDP-D name may not be reflective of its nature, as it is generic middleware, a maven based drools rules based application container.
18
19The PDP-D generic application container is maintained in the policy/drools-pdp repository (https://git.onap.org/policy/drools-pdp).
20
21The Control Loop Operational Policies and support libraries applications are maintained in the policy/drools-applications repository (https://git.onap.org/policy/drools-applications/).
22
23
24PDP-D application container
25^^^^^^^^^^^^^^^^^^^^^^^^^^^
26
27The PDP-D lightweight application container provides generic services to the drools applications (0..n) running on it. (https://git.onap.org/policy/drools-pdp)
28
29There is the distinction of **core** software and optional **extensions** to the core functionality.
30
31Core Software
32-------------
33
34The core critical functionality that always runs in any PDP-D container is maintained in those projects named with the "policy-" prefix. These are:
35- policy-utils (utilities)
36- policy-core (drools libraries interfaces)
37- policy-endpoints (networking)
38- policy-management. (management of the platform)
39
40This is the minimum set of services that any PDP-D application provides to their executing drools-applications.
41
42The intent is that this functionality is kept stable, fast, and minimal. As new development is added, the intent is that this functionality is resilient to breakage as side effects to new development.
43
44Extensions
45----------
46
47Extensions are optional modules that are commonly known as **features** that extends the PDP-D core functionality with new enhancements.
48
49**Features** can be enabled or disabled. When a feature is disabled, it is a *hard disable* with no side effects on the *core functionality*, meaning no additional libraries, configuration, etc. that may have side effects on the core functionality described above.
50
51The current extensions supported are:
52
53- Feature Test Transaction (disabled by default)
54- Feature State Management (disabled by default)
55- Feature EELF (disabled by default)
56- Feature Healthcheck (enabled by default)
57- Feature Session Persistence (disabled by default)
58- Feature Active/Standby Management (disabled by default)
59
60.. seealso:: Please see the individual feature wiki pages for more information
61
62
63.. _Control Loop Operational Policy: https://wiki.onap.org/display/DW/Control+Loop+Operational+Policy
64.. _drools: https://www.drools.org
65
66
67End of Document
68
69.. SSNote: Wiki page ref. https://wiki.onap.org/display/DW/PAP+Software+Architecture
70
71