X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=pkg%2Fcontrol%2Fregistry.go;fp=pkg%2Fcontrol%2Fregistry.go;h=b816b61c5d66e2e4632afe8464a33762f6df9128;hb=c9eb08a02821033f198fcde1ea60279b19c5c617;hp=f24dccdded23b9970abe238b272e89a61ee602e9;hpb=14f827331f7ae565d33cdf23c82f7794d3fc2d0d;p=ric-plt%2Fsubmgr.git diff --git a/pkg/control/registry.go b/pkg/control/registry.go index f24dccd..b816b61 100644 --- a/pkg/control/registry.go +++ b/pkg/control/registry.go @@ -22,6 +22,7 @@ package control import ( "fmt" "gerrit.o-ran-sc.org/r/ric-plt/e2ap/pkg/e2ap" + "gerrit.o-ran-sc.org/r/ric-plt/xapp-frame/pkg/models" "gerrit.o-ran-sc.org/r/ric-plt/xapp-frame/pkg/xapp" "sync" "time" @@ -46,6 +47,19 @@ func (r *Registry) Initialize() { } } +func (r *Registry) QueryHandler() (models.SubscriptionList, error) { + r.mutex.Lock() + defer r.mutex.Unlock() + + resp := models.SubscriptionList{} + for _, subs := range r.register { + subs.mutex.Lock() + resp = append(resp, &models.SubscriptionData{SubscriptionID: int64(subs.ReqId.Seq), Meid: subs.Meid.RanName, Endpoint: subs.EpList.StringList()}) + subs.mutex.Unlock() + } + return resp, nil +} + func (r *Registry) allocateSubs(trans *TransactionXapp, subReqMsg *e2ap.E2APSubscriptionRequest) (*Subscription, error) { if len(r.subIds) > 0 { sequenceNumber := r.subIds[0]