X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=E2Manager%2Fproviders%2Fhttpmsghandlerprovider%2Fincoming_request_handler_provider.go;h=cfbda44ba9e18bbd56bf6682f43b689dc45473ae;hb=90d22a6de7e3321dbd90083a5d093541e5e53c75;hp=e461bfcbaf67e95b11d553a70d9d1b82b638145f;hpb=19e72a51b5edbf108d230093fdf85b42fe5ab470;p=ric-plt%2Fe2mgr.git diff --git a/E2Manager/providers/httpmsghandlerprovider/incoming_request_handler_provider.go b/E2Manager/providers/httpmsghandlerprovider/incoming_request_handler_provider.go index e461bfc..cfbda44 100644 --- a/E2Manager/providers/httpmsghandlerprovider/incoming_request_handler_provider.go +++ b/E2Manager/providers/httpmsghandlerprovider/incoming_request_handler_provider.go @@ -13,51 +13,63 @@ // 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 httpmsghandlerprovider import ( + "e2mgr/clients" "e2mgr/configuration" "e2mgr/e2managererrors" - "e2mgr/handlers" + "e2mgr/handlers/httpmsghandlers" "e2mgr/logger" - "e2mgr/rNibWriter" + "e2mgr/managers" "e2mgr/services" - "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/reader" + "e2mgr/services/rmrsender" + "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities" ) type IncomingRequest string const ( - ShutdownRequest IncomingRequest = "Shutdown" - ResetRequest IncomingRequest = "Reset" + ShutdownRequest IncomingRequest = "Shutdown" + ResetRequest IncomingRequest = "Reset" + X2SetupRequest IncomingRequest = "X2SetupRequest" + EndcSetupRequest IncomingRequest = "EndcSetupRequest" + GetNodebRequest IncomingRequest = "GetNodebRequest" + GetNodebIdListRequest IncomingRequest = "GetNodebIdListRequest" + GetE2TInstancesRequest IncomingRequest = "GetE2TInstancesRequest" ) type IncomingRequestHandlerProvider struct { - requestMap map[IncomingRequest]handlers.RequestHandler + requestMap map[IncomingRequest]httpmsghandlers.RequestHandler logger *logger.Logger } -func NewIncomingRequestHandlerProvider(logger *logger.Logger, rmrService *services.RmrService, config *configuration.Configuration, rNibWriterProvider func() rNibWriter.RNibWriter, - rNibReaderProvider func() reader.RNibReader) *IncomingRequestHandlerProvider { +func NewIncomingRequestHandlerProvider(logger *logger.Logger, rmrSender *rmrsender.RmrSender, config *configuration.Configuration, rNibDataService services.RNibDataService, ranSetupManager *managers.RanSetupManager, e2tInstancesManager managers.IE2TInstancesManager, e2tAssociationManager *managers.E2TAssociationManager, rmClient clients.IRoutingManagerClient) *IncomingRequestHandlerProvider { return &IncomingRequestHandlerProvider{ - requestMap: initRequestHandlerMap(rmrService, config, rNibWriterProvider, rNibReaderProvider), + requestMap: initRequestHandlerMap(logger, rmrSender, config, rNibDataService, ranSetupManager, e2tInstancesManager, e2tAssociationManager, rmClient), logger: logger, } } -func initRequestHandlerMap(rmrService *services.RmrService, config *configuration.Configuration, rNibWriterProvider func() rNibWriter.RNibWriter, - rNibReaderProvider func() reader.RNibReader) map[IncomingRequest]handlers.RequestHandler { +func initRequestHandlerMap(logger *logger.Logger, rmrSender *rmrsender.RmrSender, config *configuration.Configuration, rNibDataService services.RNibDataService, ranSetupManager *managers.RanSetupManager, e2tInstancesManager managers.IE2TInstancesManager, e2tAssociationManager *managers.E2TAssociationManager, rmClient clients.IRoutingManagerClient) map[IncomingRequest]httpmsghandlers.RequestHandler { - return map[IncomingRequest]handlers.RequestHandler{ - ShutdownRequest: handlers.NewDeleteAllRequestHandler(rmrService, config, rNibWriterProvider, rNibReaderProvider), //TODO change to pointer - ResetRequest: handlers.NewX2ResetRequestHandler(rmrService, config, rNibWriterProvider, rNibReaderProvider), //TODO change to pointer + return map[IncomingRequest]httpmsghandlers.RequestHandler{ + ShutdownRequest: httpmsghandlers.NewDeleteAllRequestHandler(logger, rmrSender, config, rNibDataService, e2tInstancesManager, rmClient), + ResetRequest: httpmsghandlers.NewX2ResetRequestHandler(logger, rmrSender, rNibDataService), + X2SetupRequest: httpmsghandlers.NewSetupRequestHandler(logger, rNibDataService, ranSetupManager, entities.E2ApplicationProtocol_X2_SETUP_REQUEST, e2tInstancesManager, e2tAssociationManager), + EndcSetupRequest: httpmsghandlers.NewSetupRequestHandler(logger, rNibDataService, ranSetupManager, entities.E2ApplicationProtocol_ENDC_X2_SETUP_REQUEST, e2tInstancesManager, e2tAssociationManager), + GetNodebRequest: httpmsghandlers.NewGetNodebRequestHandler(logger, rNibDataService), + GetNodebIdListRequest: httpmsghandlers.NewGetNodebIdListRequestHandler(logger, rNibDataService), + GetE2TInstancesRequest: httpmsghandlers.NewGetE2TInstancesRequestHandler(logger, e2tInstancesManager), } } -func (provider IncomingRequestHandlerProvider) GetHandler(requestType IncomingRequest) (handlers.RequestHandler, error) { +func (provider IncomingRequestHandlerProvider) GetHandler(requestType IncomingRequest) (httpmsghandlers.RequestHandler, error) { handler, ok := provider.requestMap[requestType] if !ok {