Merge "MDCLOG Implementation with Dynamic log-level changes"
[ric-plt/e2mgr.git] / E2Manager / managers / notificationmanager / notification_manager.go
index 70b81ed..cd284d5 100644 (file)
 // 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/rmrCgo"
-       "e2mgr/services"
-       "fmt"
        "time"
 )
 
 type NotificationManager struct {
+       logger                      *logger.Logger
        notificationHandlerProvider *rmrmsghandlerprovider.NotificationHandlerProvider
 }
 
-func NewNotificationManager(rnibDataService services.RNibDataService, ranReconnectionManager *managers.RanReconnectionManager) *NotificationManager {
-       notificationHandlerProvider := rmrmsghandlerprovider.NewNotificationHandlerProvider(rnibDataService, 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
 }