X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=E2Manager%2Fmanagers%2Fnotificationmanager%2Fnotification_manager.go;h=cd284d52213763b5414c9aae608dc2523f3a9eb3;hb=3bf018b864d8c9f6ff32029dc643f27f71a42f56;hp=319dde74c81fef75e507ab4b7b6ecb6141e33997;hpb=ffd085dd7f0654b84b163a7bfedd3fa89e7b8a71;p=ric-plt%2Fe2mgr.git diff --git a/E2Manager/managers/notificationmanager/notification_manager.go b/E2Manager/managers/notificationmanager/notification_manager.go index 319dde7..cd284d5 100644 --- a/E2Manager/managers/notificationmanager/notification_manager.go +++ b/E2Manager/managers/notificationmanager/notification_manager.go @@ -13,44 +13,43 @@ // 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 notificationmanager import ( "e2mgr/logger" - "e2mgr/managers" "e2mgr/models" "e2mgr/providers/rmrmsghandlerprovider" - "e2mgr/rNibWriter" "e2mgr/rmrCgo" - "fmt" - "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/reader" "time" ) type NotificationManager struct { + logger *logger.Logger notificationHandlerProvider *rmrmsghandlerprovider.NotificationHandlerProvider } -func NewNotificationManager(rnibReaderProvider func() reader.RNibReader, rnibWriterProvider func() rNibWriter.RNibWriter, ranReconnectionManager *managers.RanReconnectionManager) *NotificationManager { - notificationHandlerProvider := rmrmsghandlerprovider.NewNotificationHandlerProvider(rnibReaderProvider, rnibWriterProvider, ranReconnectionManager) - +func NewNotificationManager(logger *logger.Logger, notificationHandlerProvider *rmrmsghandlerprovider.NotificationHandlerProvider) *NotificationManager { return &NotificationManager{ + logger: logger, notificationHandlerProvider: notificationHandlerProvider, } } -//TODO add NEWHandler with log -func (m NotificationManager) HandleMessage(logger *logger.Logger, mbuf *rmrCgo.MBuf, responseChannel chan<- *models.NotificationResponse) { +func (m NotificationManager) HandleMessage(mbuf *rmrCgo.MBuf) error { notificationHandler, err := m.notificationHandlerProvider.GetNotificationHandler(mbuf.MType) if err != nil { - logger.Errorf(fmt.Sprintf("%s", err)) - return + m.logger.Errorf("#NotificationManager.HandleMessage - Error: %s", err) + return err } - notificationRequest := models.NewNotificationRequest(mbuf.Meid, *mbuf.Payload, time.Now(), string(*mbuf.XAction)) - go notificationHandler.Handle(logger, notificationRequest, responseChannel) + notificationRequest := models.NewNotificationRequest(mbuf.Meid, *mbuf.Payload, time.Now(), *mbuf.XAction, mbuf.GetMsgSrc()) + go notificationHandler.Handle(notificationRequest) + return nil }