import (
"encoding/json"
"fmt"
- "gerrit.o-ran-sc.org/r/ric-plt/xapp-frame/pkg/xapp"
"strings"
"sync"
+
+ "gerrit.o-ran-sc.org/r/ric-plt/xapp-frame/pkg/xapp"
)
type XappRnibIf struct {
e.control = c
e.NbIdMap = make(map[string]string, 0)
e.ReadE2ConfigurationFromRnib()
- e.SubscribeChannels()
+ err := e.SubscribeChannels()
+ if err != nil {
+ xapp.Logger.Error("Init(): SubscribeChannels() failed: %v", err)
+ }
}
func (e *E2IfState) GetE2NodesJson() []byte {
delete(e.NbIdMap, nbId)
e.control.registry.DeleteAllE2Subscriptions(nbId, e.control)
}
+ } else if strings.Contains(events[0], "_UNDER_RESET") {
+ xapp.Logger.Debug("NotificationCb UNDER_RESET len(nbId) == 0 ")
+ e.control.UpdateCounter(cE2StateUnderReset)
+ nbId, err := ExtractNbiIdFromString(events[0])
+ if err != nil {
+ xapp.Logger.Error("NotificationCb _UNDER_RESET %v ", err)
+ return
+ }
+ xapp.Logger.Debug("E2 Under Reset. NbId=%s", nbId)
+ if _, ok := e.NbIdMap[nbId]; ok {
+ e.control.registry.DeleteAllE2Subscriptions(nbId, e.control)
+ }
}
}
} else if strings.Contains(s, "_DISCONNECTED") {
splitStringTbl := strings.Split(s, "_DISCONNECTED")
nbId = splitStringTbl[0]
+ } else if strings.Contains(s, "_UNDER_RESET") {
+ splitStringTbl := strings.Split(s, "_UNDER_RESET")
+ nbId = splitStringTbl[0]
}
if len(nbId) == 0 {
return "", fmt.Errorf("ExtractNbiIdFromString(): len(nbId) == 0 ")