...
Assumptions
# | Assumption | Notes | Sign-off |
---|---|---|---|
1 | Message driven interfaces are already covered and do not require modification | ||
2 | FDN when part of URI's can be % encoded | ||
3 | Error handling remains as-is for cm handle |
Issues & Decisions
Issue | Notes | Decision | ||||||||
---|---|---|---|---|---|---|---|---|---|---|
1 | CmNotificationSubscription kafka interface | Requires determination on coverage2 | To split or not to split | Exact resource path required or partial match is accepted Exact match example: Incoming: "CmHandle='a/b/c/d', Resource=''" Outgoing: "CmHandleID='Ch-1', Resource='a/b/c/d'" Partial match example: Incoming: "CmHandle='a/b', Resource=''" Outgoing: "CmHandleID='Ch-1', Resource='a/b/c/d'" Append match example: Incoming: "CmHandle='a/b', Resource=''e/f" Outgoing: "CmHandleID='Ch-1', Resource='a/b/c/d/e/f'" | 3 | Throw exception for non-exact match | Throw CmHandleNotFound when incoming FDN does not contain perfect resource match | **Should split based on URI** | ||
2 | Cover interfaces currently under development | see interfaces : CPS-E-09.e, CPS-E-10, CPS-E-11 |
Interfaces
Interface |
---|
Interface Description |
---|
Notes |
---|
Desision | Sign-off |
---|---|
1 | CPS-E-05 |
NCMP REST Interface | |||
2 | CPS-E-08.e |
3 | CPS-E-09.e |
YES*
New Requirement for Montreal
Ongoing - See issue #3 | |||
4 | CPS-E-10 |
Asynchronous . Data Jobs (bulk request). 3GPP SBMA (Service Based Management Architecture) Compliant Interface (using FDNs) | Ongoing - See issue #3 | ||
5 | CPS-E-11 |
Synchronous Single FDN request 3GPP SBMA (Service Based Management Architecture) Compliant Interface (using FDNs) | Ongoing - See issue #3 | ||||
6 | CPS-NCMP-I-01 | Sync & Model API | |||
7 | DMI-I-01 |
DMI Plugin REST Interface | Discuss interface implementation | ||
8 | Application Management Interfaces |
Does not communicate or interact with cmHandles | N/A | N/A |
Endpoints
CPS-E-05
URI | Rest Method | Description | Notes | Decision | |
---|---|---|---|---|---|
1 | /v1/ch/{cm-handle}/data/ds/{datastore-name} | DELETE | Delete resource data from pass-through running for a given cm handle | Alternate ID in URI | |
2 | /v1/ch/{cm-handle}/data/ds/{datastore-name} | GET | Get resource data for given cm handle | Alternate ID in URI | |
3 | /v1/ch/{cm-handle}/data/ds/{datastore-name} | PATCH | Patch resource data from pass-through running for the given cm handle | Alternate ID in URI | |
4 | /v1/ch/{cm-handle}/data/ds/{datastore-name} | POST | create resource data from pass-through running for given cm handle | Alternate ID in URI | |
5 | /v1/ch/{cm-handle}/data/ds/{datastore-name} | PUT | Update resource data from pass-through running for the given cm handle | Alternate ID in URI | |
6 | /v1/data | POST | Execute a data operation for group of cm handle ids | Alternate ID as part of target IDs | |
7 | /v1/ch/{cm-handle}/data/ds/{datastore-name}/query | GET | Query resource data for a given cm handle | Alternate ID in URI | |
8 | /v1/ch/{cm-handle}/modules | GET | fetch all module references (name and revision) for a given cm handle | Alternate ID in URI | |
9 | /v1/ch/{cm-handle}/modules/definitions | GET | Get module definitions (module name, revision, yang resource) with options to filter on module name and revision | Alternate ID in URI | |
10 | /v1/ch/searches | POST | Execute cm handle query search and return a list of cm handle details. | Not applicable in post, Alternate ID would be contained in return | |
11 | /v1/ch/{cm-handle} | GET | Retrieve CM handle details and properties by cm handle id | Alternate ID in URI | |
12 | /v1/ch/{cm-handle}/properties | GET | Get CM handle properties by cm handle id | Alternate ID in URI | |
13 | /v1/ch/id-searches | POST | Execute cm handle query search and return a list of cm handle ids. | Not applicable in post or return | |
14 | /v1/ch/{cm-handle}/data-sync | PUT | Set the data sync enabled flag to true or false for a specified Cm-Handle. This will in turn set the data sync state to UNSYNCHRONIZED and NONE_REQUESTED respectfully. | Alternate ID in URI |
...
URI | Rest Method | Description | Notes | Decision | |
---|---|---|---|---|---|
1 | /ncmp/v1/ch/{cm-handle}/state | GET | Get CM handle state by cm handle id | Alternate ID in URI |
CPS-E-09.e - New Requirement for Montreal
...
CPS-E-10 - Not Yet Implemented
...
CPS-E-11 - Not Yet Implemented
URI |
CPS-NCMP-I-01
URI | Rest Method | Description | Notes | Decision | |
---|---|---|---|---|---|
1 | /ncmpInventory/v1/ch | POST | Register a DMI Plugin with any new, updated or removed CM Handles | Already Supported - Alternate IDs are already being registered here. | |
2 | /ncmpInventory/v1/ch/cmHandles | GET | Get all cm handle IDs for a registered DMI plugin | ||
3 | /ncmpInventory/v1/ch/searches | POST | Query and get |
CM Handle Ids for additional properties, public properties and registered DMI plugin (DMI plugin, DMI data plugin, DMI model plugin). |
DMI-I-01
URI | Rest Method | Description | Notes | Decision | |
---|---|---|---|---|---|
1 | /dmi/v1/ch/{cmHandle}/modules | POST | Get all modules for given cm handle | Internal - not applicableMake | |
2 | /dmi/v1/ch/{cmHandle}/moduleResources | POST | Retrieve module resources for one or more modules Internal - not applicable | ||
3 | /dmi/v1/inventory/cmHandles | POST | register given list of cm handles (internal use only) Internal - not applicable | ||
4 | /dmi/v1/ch/{cmHandle}/data/ds/{datastore-name} | POST | Get resource data from passthrough operational or running for a cm handle Internal - not applicable | ||
5 | /dmi/v1/data | POST | Execute a data operation for group of cm handle ids by supplied operation details | Internal - not applicable |
Application Management Interfaces
...
/manage/health/db
...
provides information on database type and connectivity state
...
/manage/health/diskSpace
...
provides information on current disk space usage and threshold configured
...
/manage/health/ping
...
ability to be pinged (always UP)
...
/manage/health/readiness
...
indicates the application completed the initialization stage and ready to accept the requests
...
/manage/health/liveness
...
indicates the application is up and running, no need to restart the container
...
/manage/loggers
...
provides information about all the loggers configured
...
/manage/loggers/{logger-id}
...
retrieves log level settings for requested logger identifier
...
/manage/loggers/{logger-id}
...
updates or resets the log level settings for requested logger identifier
Proposed User Stories
...
- Changes must test for create and update case
...