X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=E2Manager%2Fhandlers%2Fhttpmsghandlers%2Fsetup_request_handler.go;h=923341114ad320fcc5eed83208a30e29617a1d24;hb=7b3d4e4225b50207370fae28e53f476bea309df8;hp=a792a45384c42a0597feab2d324ca5c82f83b620;hpb=33f84e1a0998af025880be3e8eb087fac34af731;p=ric-plt%2Fe2mgr.git diff --git a/E2Manager/handlers/httpmsghandlers/setup_request_handler.go b/E2Manager/handlers/httpmsghandlers/setup_request_handler.go index a792a45..9233411 100644 --- a/E2Manager/handlers/httpmsghandlers/setup_request_handler.go +++ b/E2Manager/handlers/httpmsghandlers/setup_request_handler.go @@ -13,7 +13,10 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -// + +// This source code is part of the near-RT RIC (RAN Intelligent Controller) +// platform project (RICP). + package httpmsghandlers import ( @@ -21,11 +24,10 @@ import ( "e2mgr/logger" "e2mgr/managers" "e2mgr/models" - "e2mgr/rNibWriter" "e2mgr/rnibBuilders" + "e2mgr/services" "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/common" "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities" - "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/reader" "github.com/go-ozzo/ozzo-validation" "github.com/go-ozzo/ozzo-validation/is" ) @@ -36,48 +38,46 @@ const ( ) type SetupRequestHandler struct { - readerProvider func() reader.RNibReader - writerProvider func() rNibWriter.RNibWriter + rNibDataService services.RNibDataService logger *logger.Logger ranSetupManager *managers.RanSetupManager protocol entities.E2ApplicationProtocol } -func NewSetupRequestHandler(logger *logger.Logger, writerProvider func() rNibWriter.RNibWriter, readerProvider func() reader.RNibReader, +func NewSetupRequestHandler(logger *logger.Logger, rNibDataService services.RNibDataService, ranSetupManager *managers.RanSetupManager, protocol entities.E2ApplicationProtocol) *SetupRequestHandler { return &SetupRequestHandler{ logger: logger, - readerProvider: readerProvider, - writerProvider: writerProvider, + rNibDataService: rNibDataService, ranSetupManager: ranSetupManager, protocol: protocol, } } -func (handler *SetupRequestHandler) Handle(request models.Request) error { +func (handler *SetupRequestHandler) Handle(request models.Request) (models.IResponse, error) { setupRequest := request.(models.SetupRequest) err := handler.validateRequestDetails(setupRequest) if err != nil { - return err + return nil, err } - nodebInfo, err := handler.readerProvider().GetNodeb(setupRequest.RanName) + nodebInfo, err := handler.rNibDataService.GetNodeb(setupRequest.RanName) if err != nil { _, ok := err.(*common.ResourceNotFoundError) if !ok { handler.logger.Errorf("#SetupRequestHandler.Handle - failed to get nodeB entity for ran name: %v from RNIB. Error: %s", setupRequest.RanName, err.Error()) - return e2managererrors.NewRnibDbError() + return nil, e2managererrors.NewRnibDbError() } result := handler.connectNewRan(&setupRequest, handler.protocol) - return result + return nil, result } result := handler.connectExistingRan(nodebInfo) - return result + return nil, result } func (handler *SetupRequestHandler) connectExistingRan(nodebInfo *entities.NodebInfo) error { @@ -101,7 +101,7 @@ func (handler *SetupRequestHandler) connectNewRan(request *models.SetupRequest, nodebInfo, nodebIdentity := rnibBuilders.CreateInitialNodeInfo(request, protocol) - rNibErr := handler.writerProvider().SaveNodeb(nodebIdentity, nodebInfo) + rNibErr := handler.rNibDataService.SaveNodeb(nodebIdentity, nodebInfo) if rNibErr != nil { handler.logger.Errorf("#SetupRequestHandler.connectNewRan - failed to initial nodeb entity for ran name: %v in RNIB. Error: %s", request.RanName, rNibErr.Error()) return e2managererrors.NewRnibDbError()