X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=E2Manager%2Fservices%2Frnib_data_service.go;h=c1bf97b7d8463efad8bd6724956ec305130d525a;hb=c7018fe32516829bc267efcc5a20818355768762;hp=e96ba488315866bbf7a439ca0b3e25777d41d8af;hpb=197657e0e814c871b903ef779ad654b13347e430;p=ric-plt%2Fe2mgr.git diff --git a/E2Manager/services/rnib_data_service.go b/E2Manager/services/rnib_data_service.go index e96ba48..c1bf97b 100644 --- a/E2Manager/services/rnib_data_service.go +++ b/E2Manager/services/rnib_data_service.go @@ -52,25 +52,26 @@ type RNibDataService interface { GetGeneralConfiguration() (*entities.GeneralConfiguration, error) UpdateNodebInfoOnConnectionStatusInversion(nodebInfo *entities.NodebInfo, event string) error SaveGeneralConfiguration(config *entities.GeneralConfiguration) error + RemoveEnb(nodebInfo *entities.NodebInfo) error + RemoveServedCells(inventoryName string, servedCells []*entities.ServedCellInfo) error + UpdateEnb(nodebInfo *entities.NodebInfo, servedCells []*entities.ServedCellInfo) error } type rNibDataService struct { - logger *logger.Logger - rnibReader reader.RNibReader - rnibWriter rNibWriter.RNibWriter - maxAttempts int - retryInterval time.Duration - stateChangeMessageChannel string + logger *logger.Logger + rnibReader reader.RNibReader + rnibWriter rNibWriter.RNibWriter + maxAttempts int + retryInterval time.Duration } func NewRnibDataService(logger *logger.Logger, config *configuration.Configuration, rnibReader reader.RNibReader, rnibWriter rNibWriter.RNibWriter) *rNibDataService { return &rNibDataService{ - logger: logger, - rnibReader: rnibReader, - rnibWriter: rnibWriter, - maxAttempts: config.MaxRnibConnectionAttempts, - retryInterval: time.Duration(config.RnibRetryIntervalMs) * time.Millisecond, - stateChangeMessageChannel: config.StateChangeMessageChannel, + logger: logger, + rnibReader: rnibReader, + rnibWriter: rnibWriter, + maxAttempts: config.MaxRnibConnectionAttempts, + retryInterval: time.Duration(config.RnibRetryIntervalMs) * time.Millisecond, } } @@ -83,6 +84,17 @@ func (w *rNibDataService) RemoveServedNrCells(inventoryName string, servedNrCell return err } +func (w *rNibDataService) RemoveEnb(nodebInfo *entities.NodebInfo) error { + w.logger.Infof("#RnibDataService.RemoveEnb - nodebInfo: %s", nodebInfo) + + err := w.retry("RemoveEnb", func() (err error) { + err = w.rnibWriter.RemoveEnb(nodebInfo) + return + }) + + return err +} + func (w *rNibDataService) UpdateGnbCells(nodebInfo *entities.NodebInfo, servedNrCells []*entities.ServedNRCell) error { w.logger.Infof("#RnibDataService.UpdateGnbCells - nodebInfo: %s, servedNrCells: %s", nodebInfo, servedNrCells) @@ -294,6 +306,24 @@ func (w *rNibDataService) SaveGeneralConfiguration(config *entities.GeneralConfi return err } +func (w *rNibDataService) RemoveServedCells(inventoryName string, servedCells []*entities.ServedCellInfo) error { + err := w.retry("RemoveServedCells", func() (err error) { + err = w.rnibWriter.RemoveServedCells(inventoryName, servedCells) + return + }) + + return err +} + +func (w *rNibDataService) UpdateEnb(nodebInfo *entities.NodebInfo, servedCells []*entities.ServedCellInfo) error { + err := w.retry("UpdateEnb", func() (err error) { + err = w.rnibWriter.UpdateEnb(nodebInfo, servedCells) + return + }) + + return err +} + func (w *rNibDataService) PingRnib() bool { err := w.retry("GetListNodebIds", func() (err error) { _, err = w.rnibReader.GetListNodebIds() @@ -304,10 +334,10 @@ func (w *rNibDataService) PingRnib() bool { } func (w *rNibDataService) UpdateNodebInfoOnConnectionStatusInversion(nodebInfo *entities.NodebInfo, event string) error { - w.logger.Infof("#RnibDataService.UpdateNodebInfoOnConnectionStatusInversion - nodebInfo: %s", nodebInfo) + w.logger.Infof("#RnibDataService.UpdateNodebInfoOnConnectionStatusInversion - event: %s, nodebInfo: %s", event, nodebInfo) err := w.retry("UpdateNodebInfoOnConnectionStatusInversion", func() (err error) { - err = w.rnibWriter.UpdateNodebInfoOnConnectionStatusInversion(nodebInfo, w.stateChangeMessageChannel, event) + err = w.rnibWriter.UpdateNodebInfoOnConnectionStatusInversion(nodebInfo, event) return })