X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=pkg%2Fcontrol%2Fsubscription.go;h=b2516bd505c662d70529976306bc21b9399ee087;hb=1683f9183a52f09b35405791ab273e277ae27eb9;hp=f66a1f14a1863f40dddcc3805beeb0a8d68d537c;hpb=14f827331f7ae565d33cdf23c82f7794d3fc2d0d;p=ric-plt%2Fsubmgr.git diff --git a/pkg/control/subscription.go b/pkg/control/subscription.go index f66a1f1..b2516bd 100644 --- a/pkg/control/subscription.go +++ b/pkg/control/subscription.go @@ -21,7 +21,9 @@ package control import ( "gerrit.o-ran-sc.org/r/ric-plt/e2ap/pkg/e2ap" + "gerrit.o-ran-sc.org/r/ric-plt/submgr/pkg/xapptweaks" "gerrit.o-ran-sc.org/r/ric-plt/xapp-frame/pkg/xapp" + "reflect" "sync" ) @@ -34,7 +36,7 @@ type Subscription struct { registry *Registry // Registry ReqId RequestId // ReqId (Requestor Id + Seq Nro a.k.a subsid) Meid *xapp.RMRMeid // Meid/ RanName - EpList RmrEndpointList // Endpoints + EpList xapptweaks.RmrEndpointList // Endpoints TransLock sync.Mutex // Lock transactions, only one executed per time for subs TheTrans TransactionIf // Ongoing transaction SubReqMsg *e2ap.E2APSubscriptionRequest // Subscription information @@ -42,7 +44,7 @@ type Subscription struct { } func (s *Subscription) String() string { - return "subs(" + s.ReqId.String() + "/" + s.Meid.RanName + "/" + s.EpList.String() + ")" + return "subs(" + s.ReqId.String() + "/" + (&xapptweaks.RMRMeid{s.Meid}).String() + "/" + s.EpList.String() + ")" } func (s *Subscription) GetCachedResponse() (interface{}, bool) { @@ -149,11 +151,11 @@ func (s *Subscription) IsMergeable(trans *TransactionXapp, subReqMsg *e2ap.E2APS return false } - if acts.ActionDefinition.Present != actt.ActionDefinition.Present || - acts.ActionDefinition.StyleId != actt.ActionDefinition.StyleId || - acts.ActionDefinition.ParamId != actt.ActionDefinition.ParamId { + if acts.RicActionDefinitionPresent != actt.RicActionDefinitionPresent || + reflect.DeepEqual(acts.ActionDefinitionChoice, actt.ActionDefinitionChoice) == false { return false } + if acts.SubsequentAction.Present != actt.SubsequentAction.Present || acts.SubsequentAction.Type != actt.SubsequentAction.Type || acts.SubsequentAction.TimetoWait != actt.SubsequentAction.TimetoWait {