Model to handle Reset Response
[ric-plt/e2mgr.git] / E2Manager / services / rnib_data_service.go
index c053171..5bb181c 100644 (file)
@@ -1,6 +1,7 @@
 //
 // Copyright 2019 AT&T Intellectual Property
 // Copyright 2019 Nokia
+// Copyright (c) 2020 Samsung Electronics Co., Ltd. All Rights Reserved.
 //
 // Licensed under the Apache License, Version 2.0 (the "License");
 // you may not use this file except in compliance with the License.
@@ -60,6 +61,7 @@ type RNibDataService interface {
        RemoveNbIdentity(nodeType entities.Node_Type, nbIdentity *entities.NbIdentity) error
        AddEnb(nodebInfo *entities.NodebInfo) error
        UpdateNbIdentity(nodeType entities.Node_Type, oldNbIdentities *entities.NbIdentity, newNbIdentities *entities.NbIdentity) error
+       UpdateNbIdentities(nodeType entities.Node_Type, oldNbIdentities []*entities.NbIdentity, newNbIdentities []*entities.NbIdentity) error
 }
 
 type rNibDataService struct {
@@ -402,6 +404,15 @@ func (w *rNibDataService) UpdateNbIdentity(nodeType entities.Node_Type, oldNbIde
        return err
 }
 
+func (w *rNibDataService) UpdateNbIdentities(nodeType entities.Node_Type, oldNbIdentities []*entities.NbIdentity, newNbIdentities []*entities.NbIdentity) error {
+       err := w.retry("UpdateNbIdentities", func() (err error) {
+               err = w.rnibWriter.UpdateNbIdentities(nodeType, oldNbIdentities, newNbIdentities)
+               return
+       })
+
+       return err
+}
+
 func (w *rNibDataService) retry(rnibFunc string, f func() error) (err error) {
        attempts := w.maxAttempts