Merge "Implement ACK in DMI Plugin"
[cps/ncmp-dmi-plugin.git] / docs / architecture.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. http://creativecommons.org/licenses/by/4.0
3 .. Copyright (C) 2021-2024 Nordix Foundation
4 .. _architecture:
5
6 DMI-Plugin Architecture
7 #######################
8
9 .. toctree::
10    :maxdepth: 1
11
12
13 High Level Component Definition and Architectural Relationships
14 ===============================================================
15
16 The DMI-Plugin provides a gateway for registration and syncing of CM Handles within CPS.
17
18 .. image:: _static/cps-r9-ncmp-dmi-plugin-interface-diagram.png
19
20 API definitions
21 ===============
22
23 The DMI-Plugin provides following interfaces.
24
25 .. list-table::
26    :header-rows: 1
27
28    * - Interface name
29      - Interface definition
30      - Interface capabilities
31      - Protocol
32    * - CPS-E-05
33      - Provides external clients with  xNF data access and module information
34      - - Create data
35        - Delete data
36        - Update data
37        - Read data
38        - Query data
39        - Query module references
40      - REST
41    * - CPS-NCMP-I-01
42      - DMI-Plugin Inventory
43      - - Register Plug-in CM-Handles
44        - Health Check API
45      - REST
46    * - DMI-I-01
47      - Provides NCMP with  xNF data access and module information
48      - - Create data
49        - Delete data
50        - Update data
51        - Read data
52        - Query data
53        - Query module references
54      - REST
55    * - DMI-I-02
56      - Provides support for Async Data Subjobs enabling CRUDAQ requests for the paths in the request using the ID of the producer registered by DMI. This enables subnetwork-wide requests
57      - - Create data based on dataProducerId
58        - Read data based on dataProducerId
59        - Update data based on dataProducerId
60        - Delete data based on dataProducerId
61        - Perform action on data based on dataProducerId
62        - Query data based on dataProducerId
63      - REST
64
65 More details on the CPS interface CPS-E-05 which is responsible for the DMI-Plugin can be found on the :ref:`CPS Architecture page<onap-cps:architecture>`