Change Update gNB REST API: Use UpdateNodebInfoHandler & UpdateGnbManager & implement interface methods

Description

Requirements

See the R4 AID - https://wiki.o-ran-sc.org/pages/viewpage.action?pageId=20874584

Few Changes - 

  • Note that we change the signature - instead of resource name "Update" AFTER the RAN Name (resource ID), we replaced it by gnb BEFORE the RAN Name 

  • Note that we enlarge the Cell Object with Additional Cell Information object. all are optional.

  • If fail RNIB - 500 with 500 error

  • Also Insert into the Cell "Table" the Cells. Take care to delete existing Cells that are no longer exist. (We probably did it already in R4...)

  • When Update the RAN - User Set and Publish with the New Channel  like we did in Insert (RAN NAME + action. In this case,. Action = Updated)   

  • See in the Response the new Additional Cell Information returns inside the Get NodeB Response

 

Test Plan

 

Given

When

Then

servedNrCells are missing in request body
OR
servedCellInformation is missing in servedNrCell field in request body

PUT /v1/nodeb/gnb/gnb_208_092_303030 received with an invalid request body

 400 Bad Request
 

 

 
 

DB is down

PUT /v1/nodeb/gnb/gnb_208_092_303030 received with a valid request body (all mandatory fields exist)

 500 Internal Server Error
 

 

 

RAN name from URL doesn't exist in DB

PUT /v1/nodeb/gnb/some_ran received with a valid request body

  404 Not Found
 

RAN with 0 servedNrCells exists in DB

PUT /v1/nodeb/gnb/gnb_208_092_303030 received with a valid request body, 2 servedNrCells: {cellId demo1, nrPci 1}, {cellId demo2, nrPci 2}

 200 OK 

  * SetAndPublish is called with RAN_MANIPULATION channel and <RAN_NAME>_UPDATED event  * Response body includes 2 servedCells, functions weren't deleted

  • RemoveServedNrCells is NOT called

  • Keys are updated in DB: 2 for each cell id key, 2 for each pci key

 RAN with 2 servedNrCells exists in DB

PUT /v1/nodeb/gnb/gnb_208_092_303030 received with a valid request body, 1 servedNrCells {cellId demo3, nrPci 3}

 200 OK 

* Keys are updated in DB * SetAndPublish is called with RAN_MANIPULATION channel and <RAN_NAME>_UPDATED event 

  • Response body includes 1 servedCell

  • RemoveServedNrCells is called

  • Keys are updated in DB: 1 cell id key and 1 pci key are added, two cell id keys and two pci keys are deleted

Attachments

1
100% Done
Loading...

is cloned by

Activity

Show:

Shuky Har-NoyJuly 20, 2020 at 9:48 AM

Discovery 4d

Done

Details

Assignee

Reporter

Story Points

Time tracking

3d 2h logged

Components

Fix versions

Priority

Created May 31, 2020 at 3:04 PM
Updated July 26, 2020 at 2:39 PM
Resolved July 26, 2020 at 2:39 PM