)\r
\r
type E2ResetRequestNotificationHandler struct {\r
- logger *logger.Logger\r
- rnibDataService services.RNibDataService\r
- config *configuration.Configuration\r
- rmrSender *rmrsender.RmrSender\r
- ranResetManager *managers.RanResetManager\r
+ logger *logger.Logger\r
+ rnibDataService services.RNibDataService\r
+ config *configuration.Configuration\r
+ rmrSender *rmrsender.RmrSender\r
+ ranResetManager *managers.RanResetManager\r
+ changeStatusToConnectedRanManager *managers.ChangeStatusToConnectedRanManager\r
}\r
\r
-func NewE2ResetRequestNotificationHandler(logger *logger.Logger, rnibDataService services.RNibDataService, config *configuration.Configuration, rmrSender *rmrsender.RmrSender, ranResetManager *managers.RanResetManager) *E2ResetRequestNotificationHandler {\r
+func NewE2ResetRequestNotificationHandler(logger *logger.Logger, rnibDataService services.RNibDataService, config *configuration.Configuration, rmrSender *rmrsender.RmrSender, ranResetManager *managers.RanResetManager, changeStatusToConnectedRanManager *managers.ChangeStatusToConnectedRanManager) *E2ResetRequestNotificationHandler {\r
return &E2ResetRequestNotificationHandler{\r
- logger: logger,\r
- rnibDataService: rnibDataService,\r
- config: config,\r
- rmrSender: rmrSender,\r
- ranResetManager: ranResetManager,\r
+ logger: logger,\r
+ rnibDataService: rnibDataService,\r
+ config: config,\r
+ rmrSender: rmrSender,\r
+ ranResetManager: ranResetManager,\r
+ changeStatusToConnectedRanManager: changeStatusToConnectedRanManager,\r
}\r
}\r
\r
e.logger.Infof("#E2ResetRequestNotificationHandler.Handle - RIC_RESET_REQUEST has been parsed successfully %+v", resetRequest)\r
e.handleSuccessfulResponse(ranName, request, resetRequest)\r
\r
- nodebInfo.ConnectionStatus = entities.ConnectionStatus_CONNECTED\r
-\r
- err = e.rnibDataService.UpdateNodebInfoAndPublish(nodebInfo)\r
-\r
+ isConnectedStatus, err := e.changeStatusToConnectedRanManager.ChangeStatusToConnectedRan(ranName)\r
if err != nil {\r
- e.logger.Errorf("#E2ResetRequestNotificationHandler.Handle - failed to update connection status of nodeB entity. RanName: %s. Error: %s", request.RanName, err.Error())\r
+ e.logger.Errorf("#E2ResetRequestNotificationHandler.Handle - failed to update and notify connection status of nodeB entity. RanName: %s. Error: %s", request.RanName, err.Error())\r
+ } else {\r
+ if isConnectedStatus {\r
+ nodebInfoupdated, err1 := e.getNodebInfo(request.RanName)\r
+ if err1 != nil {\r
+ e.logger.Errorf("#E2ResetRequestNotificationHandler.Handle - failed to get updated nodeB entity. RanName: %s. Error: %s", request.RanName, err1.Error())\r
+ }\r
+ e.logger.Debugf("#E2ResetRequestNotificationHandler.Handle - Connection status Set Successfully ran: %s , Connection status updated : %s", ranName, nodebInfoupdated.ConnectionStatus)\r
+ } else {\r
+ e.logger.Debugf("#E2ResetRequestNotificationHandler.Handle - Connection status Setting Failed")\r
+ }\r
}\r
\r
e.logger.Debugf("#E2ResetRequestNotificationHandler.Handle - nodeB entity connected state. RanName %s, ConnectionStatus %s", nodebInfo.RanName, nodebInfo.ConnectionStatus)\r
\r
func (e *E2ResetRequestNotificationHandler) parseE2ResetMessage(payload []byte) (*models.E2ResetRequestMessage, error) {\r
e2resetMessage := models.E2ResetRequestMessage{}\r
- err := xml.Unmarshal(utils.NormalizeXml(payload), &(e2resetMessage.E2APPDU))\r
+ err := xml.Unmarshal(utils.NormalizeXml(payload), &(e2resetMessage.E2ApPDU))\r
\r
if err != nil {\r
e.logger.Errorf("#E2ResetRequestNotificationHandler.Handle - error in parsing request message: %+v", err)\r
return nil, err\r
}\r
- e.logger.Debugf("#E2ResetRequestNotificationHandler.Handle - Unmarshalling is successful %v", e2resetMessage.E2APPDU.InitiatingMessage.ProcedureCode)\r
+ e.logger.Debugf("#E2ResetRequestNotificationHandler.Handle - Unmarshalling is successful %v", e2resetMessage.E2ApPDU.InitiatingMessage.ProcedureCode)\r
return &e2resetMessage, nil\r
}\r
\r