You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 30 Next »

References

CPS-2155 - Getting issue details... STATUS

Assumptions

#AssumptionNotes
1

Issues & Decisions


IssueNotes Decision
1dataaccepttype Do we need to consider this parameter in our NCMP internal Java interface?The controller should accept/reject dataaccepttype. From the client application

The Controller will validate and set the Default as necessary kieran mccarthy Sourabh Sourabh Kolawole Adebisi-Adeolokun Toine Siebelink 

2datacontenttype Do we need to consider this parameter in our NCMP internal Java interface?NCMP should maintain the content type as received and not modify datacontenttype.

NCMP should maintain what content type as received and not modify   kieran mccarthy Sourabh Sourabh Kolawole Adebisi-Adeolokun Toine Siebelink 

3

attributes This has plural but all examples contain a single String, why?

kieran mccarthy & Rafael to come back with a 'definition' and 'example

Kolawole Adebisi-Adeolokun to follow up with stakeholders on decision by 19/03/2024

4

The study mentions 'fields and attributes". None of the examples use 'fields'. We can see only 'value' Objects (in the write use cases)

kieran mccarthy & Rafael to come back with a 'definition' and 'example


Read and Write data jobs are 2 deff. objects.  


Kolawole Adebisi-Adeolokun to follow up with stakeholders on decision by 19/03/2024

5

Combine all java api parameters into 1 parameter object?

There is a limit (sonar quality check) of 7 parameter max for a method

Team 
follow common practice and  have a few parameters ie. dataJobId is NOT part of the client request but generated in DCM so it seems logical to keep this separates


Data Structures

                                                         

Proposed Method signature

processDataJob
void processReadDataJob(String dataAcceptType,  String dataContentType, String dataJobId, List<ReadOperation> readOperations)
void processWriteDataJob(String dataAcceptType,  String dataContentType, String dataJobId, List<WriteOperation> writeOperations, Map<String,String> metadata)

Notes

  1. The order of Operations is important and needs to be maintained hence the use of 'List'
  2. The output is 'void' for the scope in this user story, it will be defined later
  3. dataaccepttype and datacontenttype might be needed too, see issue #1 and #2. If required we could combine them to reduce the number of parameter in an object like RestProtocolParameters

Datajob read request

NameDescriptionLocationTypeMandatory

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

NameDescriptionType
path

It is a unique identifier of a managed object (MO) on a network element. 
Defines the resource on which operation is executed. Typically could be Fully Distinguished Name (FDN).

String
op

Describes the operation to execute. The value can be: "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 used when the scope type is BASE_NTH_LEVEL

Integer

Datajob write request

NameDescriptionLocationTypeMandatory

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

NameDescriptionType
path

It is a unique identifier of a managed object (MO) on a network element. 
Defines the resource on which operation is executed. Typically could be Fully Distinguished Name (FDN).

String
op

Describes the operation to execute. The value can be:

"add",
"replace",
"remove",
"action",  

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)

Datajob Write request (rAPP -> DCM)


Proposed JIRAs


Component 

Description

JIRA

Estimates

1
Create implementation proposal for NCMP to provide support for Data jobs qualifier during registration

CPS-2096 - Getting issue details... STATUS


2
Support of Datajobs qualifier during registration

CPS-2084 - Getting issue details... STATUS


3
Create implementation proposal for NCMP to provide Java interface that can support Data jobs request

CPS-2097 - Getting issue details... STATUS


4
Define a java based datastructure for DataJob

CPS-2155 - Getting issue details... STATUS


5
NCMP to provide support for data producer identifier during registration

6



7



8



9



10



11



12



13





  • No labels