Async Error Codes

Assumptions

Assumption

Notes

Assumption

Notes

1

One message can only have one status code



2

Status code is in the data schema of the event (not header)



3

3 digits http inspired



Issues & Decisions

Issue

Notes 

Decision

Issue

Notes 

Decision

1

What are we doing with legacy events 

Asynchronous data requests

Check that error codes are not used previously



2

Proposing code to all of ONAP will be complicated with conflicts + we take on maintainability





Proposal

  1. First proposal is to use the closest HTTP status code for the scenario. (Column 2 only)

  2. Second proposal is to use above but then also provide a proprietary code which we define for that scenario. (Column 2 & 3)

Scenario

status code (Using HTTP)

proprietary code (Outside range of HTTP code to avoid confusion)

Scenario

status code (Using HTTP)

proprietary code (Outside range of HTTP code to avoid confusion)

Subscription created for all CMHandle targets without issue (all accepted)

201 CREATED

600 SUCCESS

Subscription partially created and rejected and/or pending

207 MULTI-STATUS

601 PARTIAL SUCCESS 

CMHandle targets not found for all CMHandles

404 NOT FOUND

603 TARGETS NOT FOUND

Subscription cannot be applied to any CMHandles

406 NOT ACCEPTABLE

604 SUBSCRIPTION NOT APPLICABLE

Subscription Pending for all CMHandles

202 ACCEPTED

602 PENDING



Data Example
{ "data": { "statusCode" : 202, #HTTP ACCEPTED "propCode" : 602, #PENDING, name TBD, Only in proposal 2 } }