...
- The order of Operations is important and needs to be maintained hence the use of 'List'
- The output is 'void' for the scope in this user story, it will be defined later
dataaccepttype
anddatacontenttype
might be needed too, see issue #1 and #2. If required we could combine them to reduce the number of parameter in an object likeRestProtocolParameters
...
Datajob read request
Name | Description | Location | Type | Mandatory |
---|---|---|---|---|
destination | The destination of the results. ( e.g. S3 Bucket) | Query | string | N |
dataaccepttype | Define the data response accept type. Passible values: · application/vnd.3gpp.object-tree-hierarchical+json (default) · application/vnd.3gpp.object-tree-flat+json | request body | enum | N |
datacontenttype | Define the data request content type. Passible values: · application/3gpp-json-patch+json (default) | request body | enum | N |
data | List of operations to be executed. | request body | List of 3gppReadOperation | Y |
3gppReadOperation
Name | Description | Type |
---|---|---|
path | It is a unique identifier of a managed object (MO) on a network element. | String |
op | Describes the operation to execute. The value can be: |
"replace",
"remove",
"action",
"read" | String | |
operationId | Unique identifier of the operation within the request | Integer |
attributes |
This parameter specifies the attributes of the scoped resources that are returned. | List of String |
fields | This parameter specifies the attribute fields of the scoped resources that are returned. This should be used if an attribute is a struct and only a subset of its fields should be returned. | List of String |
filter | The parameter is used to filter the scoped Managed Objects. Only Managed Objects passing the filter criteria will be fetched. | List of String |
scopeType | ScopeType selects MOs depending on relationships with Base Managed Object. |
enum[BASE_ONLY, BASE_ALL, BASE_NTH_LEVEL, BASE_SUBTREE] | |
scopeLevel | Only |
Only used once
used when the scope type |
is BASE_NTH_LEVEL |
Integer |
The parameter is used to filter the scoped Managed Objects. Only Managed Objects passing the filter criteria will be fetched.
Datajob write request
Name | Description | Location | Type | Mandatory |
---|---|---|---|---|
destination | The destination of the results. ( e.g. S3 Bucket) | Query | string | N |
dataaccepttype | Define the data response accept type. Passible values: · application/vnd.3gpp.object-tree-hierarchical+json (default) · application/vnd.3gpp.object-tree-flat+json | request body | enum | N |
datacontenttype | Define the data request content type. Passible values: · application/3gpp-json-patch+json (default) | request body | enum | N |
data | List of operations to be executed. | request body | List of 3gppPatchOperation | Y |
3gppPatchOperation
Name | Description | Type |
---|---|---|
path | It is a unique identifier of a managed object (MO) on a network element. | String |
op | Describes the operation to execute. The value can be: "add", | String |
operationId | Unique identifier of the operation within the request | Integer |
value | Value of the write operation. NA if op is delete | Object |
Examples from DCM Study
DataJob Read request (rAPP -> DCM)
...
JSON Viewer | ||||
---|---|---|---|---|
| ||||
{ "dataaccepttype": "application/vnd.3gpp.object-tree-hierarchical+json", "datacontenttype": "application/3gpp-json-patch+json", "data": [ { "op": "add", "path": "SubNetwork=Europe/SubNetwork=Ireland/MeContext=NR03gNodeBRadio00003/ManagedElement=NR03gNodeBRadio00003/GNBCUCPFunction=1/EUtraNetwork=1/EUtranFrequency=12", "value": { "id": "12", "attributes": { "userLabel": "label12", "arfcnValueEUtranDl": "12" } } }, { "op": "add", "path": "SubNetwork=Europe/SubNetwork=Ireland/MeContext=NR03gNodeBRadio00003/ManagedElement=NR03gNodeBRadio00003/GNBCUCPFunction=1/EUtraNetwork=1/EUtranFrequency=11", "value": { "id": "11", "attributes": { "userLabel": "label11" } } }, { "op": "replace", "path": "SubNetwork=Europe/SubNetwork=Ireland/MeContext=NR03gNodeBRadio00003/ManagedElement=NR03gNodeBRadio00003/GNBCUCPFunction=1/EUtraNetwork=1/EUtranFrequency=1#/attributes/userLabel", "value": "label1" }, { "op": "remove", "path": "SubNetwork=Europe/SubNetwork=Ireland/MeContext=NR03gNodeBRadio00003/ManagedElement=NR03gNodeBRadio00003/GNBCUCPFunction=1/EUtraNetwork=1/EUtranFrequency=13" }, { "op": "action", "path": "SubNetwork=Europe/SubNetwork=Ireland/MeContext=NR03gNodeBRadio00003/ManagedElement=NR03gNodeBRadio00003", "value": "sync" } ] } |
Proposed JIRAs
Component | Description | JIRA | Estimates | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | Create implementation proposal for NCMP to provide support for Data jobs qualifier during registration |
| ||||||||||||||
2 | Support of Datajobs qualifier during registration |
| ||||||||||||||
3 | Create implementation proposal for NCMP to provide Java interface that can support Data jobs request |
| ||||||||||||||
4 | Define a java based datastructure for DataJob |
| ||||||||||||||
5 | NCMP to provide support for data producer identifier during registration | |||||||||||||||
6 | ||||||||||||||||
7 | ||||||||||||||||
8 | ||||||||||||||||
9 | ||||||||||||||||
10 | ||||||||||||||||
11 | ||||||||||||||||
12 | ||||||||||||||||
13 |