X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;ds=sidebyside;f=E2Manager%2Fhandlers%2Fhttpmsghandlers%2Fdelete_enb_request_handler.go;h=161d5c583aaa2362f5663d7f635d20372733104a;hb=5208a1cf953edf958444d41352815073e9ebaf29;hp=c669dd1863c096ac3b4d559435c4bd2cddfdf08d;hpb=64dc6b9da7e913c3ea89671be12a33b6d2b8c6f0;p=ric-plt%2Fe2mgr.git diff --git a/E2Manager/handlers/httpmsghandlers/delete_enb_request_handler.go b/E2Manager/handlers/httpmsghandlers/delete_enb_request_handler.go index c669dd1..161d5c5 100644 --- a/E2Manager/handlers/httpmsghandlers/delete_enb_request_handler.go +++ b/E2Manager/handlers/httpmsghandlers/delete_enb_request_handler.go @@ -22,6 +22,7 @@ package httpmsghandlers import ( "e2mgr/e2managererrors" "e2mgr/logger" + "e2mgr/managers" "e2mgr/models" "e2mgr/services" "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/common" @@ -31,12 +32,14 @@ import ( type DeleteEnbRequestHandler struct { logger *logger.Logger rNibDataService services.RNibDataService + ranListManager managers.RanListManager } -func NewDeleteEnbRequestHandler(logger *logger.Logger, rNibDataService services.RNibDataService) *DeleteEnbRequestHandler { +func NewDeleteEnbRequestHandler(logger *logger.Logger, rNibDataService services.RNibDataService, ranListManager managers.RanListManager) *DeleteEnbRequestHandler { return &DeleteEnbRequestHandler{ logger: logger, rNibDataService: rNibDataService, + ranListManager: ranListManager, } } @@ -64,15 +67,23 @@ func (h *DeleteEnbRequestHandler) Handle(request models.Request) (models.IRespon return nil, e2managererrors.NewRequestValidationError() } + if nodebInfo.GetSetupFromNetwork() { + h.logger.Errorf("#DeleteEnbRequestHandler.Handle - RAN name: %s - can't delete RAN which was created from network.", deleteEnbRequest.RanName) + return nil, e2managererrors.NewRequestValidationError() + } err = h.rNibDataService.RemoveEnb(nodebInfo) - if err != nil { h.logger.Errorf("#DeleteEnbRequestHandler.Handle - RAN name: %s - failed to delete nodeb entity in RNIB. Error: %s", deleteEnbRequest.RanName, err) return nil, e2managererrors.NewRnibDbError() } + err = h.ranListManager.RemoveNbIdentity(entities.Node_ENB, deleteEnbRequest.RanName) + if err != nil { + h.logger.Errorf("#DeleteEnbRequestHandler.Handle - RAN name: %s - failed to delete nbIdentity in RNIB. Error: %s", deleteEnbRequest.RanName, err) + return nil, e2managererrors.NewRnibDbError() + } + h.logger.Infof("#DeleteEnbRequestHandler.Handle - RAN name: %s - deleted successfully.", deleteEnbRequest.RanName) return models.NewNodebResponse(nodebInfo), nil } -