Table of Contents |
---|
Assumptions
# | Assumption | Notes |
---|---|---|
1 | Message driven interfaces are already covered and do not require modification |
Issues & Decisions
Issue | Notes | Decision | |
---|---|---|---|
1 | CmNotificationSubscription kafka interface | Requires determination on coverage | |
2 | 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 |
Interfaces
Interface | Affected | Requirement | Additional Information | Sign-off | |
---|---|---|---|---|---|
1 | CPS-E-05 | YES | URI | ||
2 | CPS-E-08.e | YES | URI | ||
3 | CPS-E-09.e | YES* | New Requirement for Montreal | *Should be included as part of requirements/planning for interface implementation | |
4 | CPS-E-10 | YES* | Not yet implemented | *Should be included as part of requirements/planning for interface implementation | |
5 | CPS-E-11 | YES* | Not yet implemented | *Should be included as part of requirements/planning for interface implementation | |
6 | CPS-NCMP-I-01 | ||||
7 | DMI-I-01 | NO | No Changes - Alternate ID will be converted to Cmhandle ID when this interface is reached |
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 |
CPS-E-08.e
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
URI | Rest Method | Description | Notes | Decision | |
---|---|---|---|---|---|
1 |
CPS-E-10 - Not Yet Implemented
URI | Rest Method | Description | Notes | Decision | |
---|---|---|---|---|---|
1 |
CPS-E-11 - Not Yet Implemented
URI | Rest Method | Description | Notes | Decision | |
---|---|---|---|---|---|
1 |
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 | ||
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 CMHandleIds 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 applicable | |
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 |
Proposed User Stories
- Update Cmhandle schema to include Alternate ID
- Changes must test for create and update case
- Parse request to extract Alternate ID
- Compare Alternate ID data to CmHandle data and extract match from database
- Pass CmHandle onto existing methods to perform desired requests