X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=E2Manager%2Fhandlers%2Fhttpmsghandlers%2Fdelete_all_request_handler.go;h=869890a5c021cc472171fd5f31970945c4364b03;hb=32d7f427aab3ca627b8c9c5ded15b9517200cde3;hp=7edc13c2d4168a75a59a4b243070cc499875ebae;hpb=90d22a6de7e3321dbd90083a5d093541e5e53c75;p=ric-plt%2Fe2mgr.git diff --git a/E2Manager/handlers/httpmsghandlers/delete_all_request_handler.go b/E2Manager/handlers/httpmsghandlers/delete_all_request_handler.go index 7edc13c..869890a 100644 --- a/E2Manager/handlers/httpmsghandlers/delete_all_request_handler.go +++ b/E2Manager/handlers/httpmsghandlers/delete_all_request_handler.go @@ -67,9 +67,9 @@ func (h *DeleteAllRequestHandler) Handle(request models.Request) (models.IRespon return nil, err } - err = h.rmClient.DissociateAllRans(e2tAddresses) + dissocErr := h.rmClient.DissociateAllRans(e2tAddresses) - if err != nil { + if dissocErr != nil { h.logger.Warnf("#DeleteAllRequestHandler.Handle - routing manager failure. continue flow.") } @@ -95,6 +95,11 @@ func (h *DeleteAllRequestHandler) Handle(request models.Request) (models.IRespon } if allRansAreShutDown { + + if dissocErr != nil { + return models.NewRedButtonPartialSuccessResponseModel("Operation succeeded, except Routing Manager failure"), nil + } + return nil, nil } @@ -102,7 +107,16 @@ func (h *DeleteAllRequestHandler) Handle(request models.Request) (models.IRespon h.logger.Infof("#DeleteAllRequestHandler.Handle - timer expired") err, _ = h.updateNodebs(h.updateNodebInfoShutDown) - return nil, err + + if err != nil { + return nil, err + } + + if dissocErr != nil { + return models.NewRedButtonPartialSuccessResponseModel("Operation succeeded, except Routing Manager failure"), nil + } + + return nil, nil } func (h *DeleteAllRequestHandler) updateNodebs(updateCb func(node *entities.NodebInfo) error) (error, bool) { @@ -120,14 +134,18 @@ func (h *DeleteAllRequestHandler) updateNodebs(updateCb func(node *entities.Node if err != nil { h.logger.Errorf("#DeleteAllRequestHandler.updateNodebs - failed to get nodeB entity for ran name: %s from rNib. error: %s", nbIdentity.InventoryName, err) - continue + return e2managererrors.NewRnibDbError(), false } if node.ConnectionStatus != entities.ConnectionStatus_SHUT_DOWN { allRansAreShutdown = false } - _ = updateCb(node) + err = updateCb(node) + + if err != nil { + return err, false + } } return nil, allRansAreShutdown @@ -169,8 +187,8 @@ func (h *DeleteAllRequestHandler) updateNodebInfo(node *entities.NodebInfo, conn err := h.rnibDataService.UpdateNodebInfo(node) if err != nil { - h.logger.Errorf("#DeleteAllRequestHandler.updateNodebInfo - RAN name: %s - failed saving nodeB entity to rNib. error: %s", node.RanName, err) - return err + h.logger.Errorf("#DeleteAllRequestHandler.updateNodebInfo - RAN name: %s - failed updating nodeB entity in rNib. error: %s", node.RanName, err) + return e2managererrors.NewRnibDbError() } h.logger.Infof("#DeleteAllRequestHandler.updateNodebInfo - RAN name: %s, connection status: %s", node.RanName, connectionStatus)