)\r
\r
type E2ResetRequestHandler struct {\r
- rNibDataService services.RNibDataService\r
- rmrSender *rmrsender.RmrSender\r
- logger *logger.Logger\r
- ranResetManager *managers.RanResetManager\r
+ rNibDataService services.RNibDataService\r
+ rmrSender *rmrsender.RmrSender\r
+ logger *logger.Logger\r
+ ranResetManager *managers.RanResetManager\r
+ changeStatusToConnectedRanManager *managers.ChangeStatusToConnectedRanManager\r
}\r
\r
-func NewE2ResetRequestHandler(logger *logger.Logger, rmrSender *rmrsender.RmrSender, rNibDataService services.RNibDataService, ranResetManager *managers.RanResetManager) *E2ResetRequestHandler {\r
+func NewE2ResetRequestHandler(logger *logger.Logger, rmrSender *rmrsender.RmrSender, rNibDataService services.RNibDataService, ranResetManager *managers.RanResetManager, changeStatusToConnectedRanManager *managers.ChangeStatusToConnectedRanManager) *E2ResetRequestHandler {\r
return &E2ResetRequestHandler{\r
- rNibDataService: rNibDataService,\r
- rmrSender: rmrSender,\r
- logger: logger,\r
- ranResetManager: ranResetManager,\r
+ rNibDataService: rNibDataService,\r
+ rmrSender: rmrSender,\r
+ logger: logger,\r
+ ranResetManager: ranResetManager,\r
+ changeStatusToConnectedRanManager: changeStatusToConnectedRanManager,\r
}\r
}\r
\r
e.logger.Infof("#E2ResetRequestHandler.Handle - Ran name: %s", resetRequest.RanName)\r
nodebInfo, err := e.getNodebInfo(resetRequest.RanName)\r
if err != nil {\r
- e.logger.Errorf("#E2ResetRequestNotificationHandler.Handle - failed to get status of RAN: %s from RNIB. Error: %s", resetRequest.RanName, err.Error())\r
+ e.logger.Errorf("#E2ResetRequestHandler.Handle - failed to get status of RAN: %s from RNIB. Error: %s", resetRequest.RanName, err.Error())\r
_, ok := err.(*common.ResourceNotFoundError)\r
if ok {\r
return e2managererrors.NewResourceNotFoundError()\r
return e2managererrors.NewRnibDbError()\r
}\r
\r
- e.logger.Debugf("#E2ResetRequestNotificationHandler.Handle - nodeB entity retrieved. RanName %s, ConnectionStatus %s", nodebInfo.RanName, nodebInfo.ConnectionStatus)\r
+ e.logger.Debugf("#E2ResetRequestHandler.Handle - nodeB entity retrieved. RanName %s, ConnectionStatus %s", nodebInfo.RanName, nodebInfo.ConnectionStatus)\r
\r
ranName := resetRequest.RanName\r
// TODO: remove isResetDone\r
isResetDone, err := e.ranResetManager.ResetRan(ranName)\r
if err != nil {\r
- e.logger.Errorf("#E2ResetRequestNotificationHandler.Handle - failed to update and notify connection status of nodeB entity. RanName: %s. Error: %s", resetRequest.RanName, err.Error())\r
+ e.logger.Errorf("#E2ResetRequestHandler.Handle - failed to update and notify connection status of nodeB entity. RanName: %s. Error: %s", resetRequest.RanName, err.Error())\r
return err\r
} else {\r
if isResetDone {\r
nodebInfoupdated, err1 := e.getNodebInfo(resetRequest.RanName)\r
if err1 != nil {\r
- e.logger.Errorf("#E2ResetRequestNotificationHandler.Handle - failed to get updated nodeB entity. RanName: %s. Error: %s", resetRequest.RanName, err1.Error())\r
+ e.logger.Errorf("#E2ResetRequestHandler.Handle - failed to get updated nodeB entity. RanName: %s. Error: %s", resetRequest.RanName, err1.Error())\r
return err1\r
}\r
- e.logger.Debugf("#E2ResetRequestNotificationHandler.Handle - Reset Done Successfully ran: %s , Connection status updated : %s", ranName, nodebInfoupdated.ConnectionStatus)\r
+ e.logger.Debugf("#E2ResetRequestHandler.Handle - Reset Done Successfully ran: %s , Connection status updated : %s", ranName, nodebInfoupdated.ConnectionStatus)\r
} else {\r
e.logger.Debugf("#E2ResetRequestNotificationHandler.Handle - Reset Failed")\r
errmsg := fmt.Errorf("#E2ResetRequestHandler.Handle - Reset Failed")\r
}\r
}\r
\r
+ //TODO: add timer\r
+\r
+ isConnectedStatus, err := e.changeStatusToConnectedRanManager.ChangeStatusToConnectedRan(ranName)\r
+ if err != nil {\r
+ e.logger.Errorf("#E2ResetRequestHandler.Handle - failed to update and notify connection status of nodeB entity. RanName: %s. Error: %s", resetRequest.RanName, err.Error())\r
+ return err\r
+ } else {\r
+ if isConnectedStatus {\r
+ nodebInfoupdated, err1 := e.getNodebInfo(resetRequest.RanName)\r
+ if err1 != nil {\r
+ e.logger.Errorf("#E2ResetRequestHandler.Handle - failed to get updated nodeB entity. RanName: %s. Error: %s", resetRequest.RanName, err1.Error())\r
+ return err1\r
+ }\r
+ e.logger.Debugf("#E2ResetRequestHandler.Handle - Connection status Set Successfully ran: %s , Connection status updated : %s", ranName, nodebInfoupdated.ConnectionStatus)\r
+ } else {\r
+ e.logger.Debugf("#E2ResetRequestHandler.Handle - Connection status Setting Failed")\r
+ errmsg := fmt.Errorf("#E2ResetRequestHandler.Handle - Connection status Setting Failed")\r
+ return errmsg\r
+ }\r
+ }\r
+\r
+ e.logger.Debugf("#E2ResetRequestHandler.Handle - nodeB entity connected state. RanName %s, ConnectionStatus %s", nodebInfo.RanName, nodebInfo.ConnectionStatus)\r
+\r
return nil\r
}\r
\r
\r
nodebInfo, err := e.rNibDataService.GetNodeb(ranName)\r
if err != nil {\r
- e.logger.Errorf("#E2ResetRequestNotificationHandler.Handle - failed to retrieve nodeB entity. RanName: %s. Error: %s", ranName, err.Error())\r
+ e.logger.Errorf("#E2ResetRequestHandler.Handle - failed to retrieve nodeB entity. RanName: %s. Error: %s", ranName, err.Error())\r
return nil, err\r
}\r
return nodebInfo, nil\r