From 0987fb79dbf1f7f82063d1aad265beaa5cb9918a Mon Sep 17 00:00:00 2001 From: TeoV Date: Mon, 27 May 2019 15:18:10 +0300 Subject: [PATCH] Replacing CGREvent with *CGRevent when inherited for StatService --- apier/v1/stats_it_test.go | 12 ++++++------ dispatchers/stats.go | 4 ++-- dispatchers/stats_it_test.go | 10 +++++----- engine/account.go | 4 ++-- engine/balances.go | 4 ++-- engine/cdrs.go | 2 +- engine/stats.go | 8 ++++---- engine/stats_test.go | 6 +++--- sessions/sessions.go | 8 ++++---- 9 files changed, 29 insertions(+), 29 deletions(-) diff --git a/apier/v1/stats_it_test.go b/apier/v1/stats_it_test.go index 19554490c..5262429df 100644 --- a/apier/v1/stats_it_test.go +++ b/apier/v1/stats_it_test.go @@ -171,7 +171,7 @@ func testV1STSProcessEvent(t *testing.T) { var reply []string expected := []string{"Stats1"} args := engine.StatsArgsProcessEvent{ - CGREvent: utils.CGREvent{ + CGREvent: &utils.CGREvent{ Tenant: "cgrates.org", ID: "event1", Event: map[string]interface{}{ @@ -224,7 +224,7 @@ func testV1STSProcessEvent(t *testing.T) { } args2 := engine.StatsArgsProcessEvent{ - CGREvent: utils.CGREvent{ + CGREvent: &utils.CGREvent{ Tenant: "cgrates.org", ID: "event2", Event: map[string]interface{}{ @@ -238,7 +238,7 @@ func testV1STSProcessEvent(t *testing.T) { t.Errorf("Expecting: %+v, received: %+v", expected, reply) } args3 := engine.StatsArgsProcessEvent{ - CGREvent: utils.CGREvent{ + CGREvent: &utils.CGREvent{ Tenant: "cgrates.org", ID: "event3", Event: map[string]interface{}{ @@ -520,7 +520,7 @@ func testV1STSProcessMetricsWithFilter(t *testing.T) { var reply2 []string expected := []string{"CustomStatProfile"} args := engine.StatsArgsProcessEvent{ - CGREvent: utils.CGREvent{ + CGREvent: &utils.CGREvent{ Tenant: "cgrates.org", ID: "event1", Event: map[string]interface{}{ @@ -546,7 +546,7 @@ func testV1STSProcessMetricsWithFilter(t *testing.T) { } //second process args = engine.StatsArgsProcessEvent{ - CGREvent: utils.CGREvent{ + CGREvent: &utils.CGREvent{ Tenant: "cgrates.org", ID: "event2", Event: map[string]interface{}{ @@ -602,7 +602,7 @@ func BenchmarkSTSV1SetEvent(b *testing.B) { var reply string b.StartTimer() for i := 0; i < b.N; i++ { - if err := stsV1Rpc.Call(utils.StatSv1ProcessEvent, evs[rand.Intn(len(evs))], + if err := stsV1Rpc.Call(utils.StatSv1ProcessEvent, &evs[rand.Intn(len(evs))], &reply); err != nil { b.Error(err) } else if reply != utils.OK { diff --git a/dispatchers/stats.go b/dispatchers/stats.go index 4f6b2e6b9..2ddbbd48c 100755 --- a/dispatchers/stats.go +++ b/dispatchers/stats.go @@ -60,7 +60,7 @@ func (dS *DispatcherService) StatSv1GetStatQueuesForEvent(args *engine.StatsArgs if args.ArgDispatcher != nil { routeID = args.ArgDispatcher.RouteID } - return dS.Dispatch(&args.CGREvent, utils.MetaStats, routeID, + return dS.Dispatch(args.CGREvent, utils.MetaStats, routeID, utils.StatSv1GetStatQueuesForEvent, args, reply) } @@ -103,7 +103,7 @@ func (dS *DispatcherService) StatSv1ProcessEvent(args *engine.StatsArgsProcessEv if args.ArgDispatcher != nil { routeID = args.ArgDispatcher.RouteID } - return dS.Dispatch(&args.CGREvent, utils.MetaStats, routeID, + return dS.Dispatch(args.CGREvent, utils.MetaStats, routeID, utils.StatSv1ProcessEvent, args, reply) } diff --git a/dispatchers/stats_it_test.go b/dispatchers/stats_it_test.go index 4bd88a790..8542180cd 100755 --- a/dispatchers/stats_it_test.go +++ b/dispatchers/stats_it_test.go @@ -88,7 +88,7 @@ func testDspStsGetStatFailover(t *testing.T) { var metrics map[string]string expected := []string{"Stats1"} args := engine.StatsArgsProcessEvent{ - CGREvent: utils.CGREvent{ + CGREvent: &utils.CGREvent{ Tenant: "cgrates.org", ID: "event1", Event: map[string]interface{}{ @@ -159,7 +159,7 @@ func testDspStsPing(t *testing.T) { func testDspStsTestAuthKey(t *testing.T) { var reply []string args := engine.StatsArgsProcessEvent{ - CGREvent: utils.CGREvent{ + CGREvent: &utils.CGREvent{ Tenant: "cgrates.org", ID: "event1", Event: map[string]interface{}{ @@ -200,7 +200,7 @@ func testDspStsTestAuthKey2(t *testing.T) { var metrics map[string]string expected := []string{"Stats2"} args := engine.StatsArgsProcessEvent{ - CGREvent: utils.CGREvent{ + CGREvent: &utils.CGREvent{ Tenant: "cgrates.org", ID: "event1", Event: map[string]interface{}{ @@ -243,7 +243,7 @@ func testDspStsTestAuthKey2(t *testing.T) { } args = engine.StatsArgsProcessEvent{ - CGREvent: utils.CGREvent{ + CGREvent: &utils.CGREvent{ Tenant: "cgrates.org", ID: "event1", Event: map[string]interface{}{ @@ -323,7 +323,7 @@ func testDspStsTestAuthKey3(t *testing.T) { estats = []string{"Stats2"} if err := dispEngine.RCP.Call(utils.StatSv1GetStatQueuesForEvent, &engine.StatsArgsProcessEvent{ - CGREvent: utils.CGREvent{ + CGREvent: &utils.CGREvent{ Tenant: "cgrates.org", ID: "GetStats", Event: map[string]interface{}{ diff --git a/engine/account.go b/engine/account.go index 2fe9ec7f6..0d1f7b4d2 100644 --- a/engine/account.go +++ b/engine/account.go @@ -1083,7 +1083,7 @@ func (acc *Account) AsAccountSummary() *AccountSummary { func (acnt *Account) Publish() { acntTnt := utils.NewTenantID(acnt.ID) - cgrEv := utils.CGREvent{ + cgrEv := &utils.CGREvent{ Tenant: acntTnt.Tenant, ID: utils.GenUUID(), Event: map[string]interface{}{ @@ -1106,7 +1106,7 @@ func (acnt *Account) Publish() { if thresholdS != nil { var tIDs []string if err := thresholdS.Call(utils.ThresholdSv1ProcessEvent, - &ArgsProcessEvent{CGREvent: &cgrEv}, &tIDs); err != nil && + &ArgsProcessEvent{CGREvent: cgrEv}, &tIDs); err != nil && err.Error() != utils.ErrNotFound.Error() { utils.Logger.Warning( fmt.Sprintf(" error: %s processing account event %+v with ThresholdS.", err.Error(), cgrEv)) diff --git a/engine/balances.go b/engine/balances.go index d3813a1dc..07952f87f 100644 --- a/engine/balances.go +++ b/engine/balances.go @@ -690,7 +690,7 @@ func (b *Balance) Publish() { } accountId := b.account.ID acntTnt := utils.NewTenantID(accountId) - cgrEv := utils.CGREvent{ + cgrEv := &utils.CGREvent{ Tenant: acntTnt.Tenant, ID: utils.GenUUID(), Event: map[string]interface{}{ @@ -715,7 +715,7 @@ func (b *Balance) Publish() { } if thresholdS != nil { var tIDs []string - if err := thresholdS.Call(utils.ThresholdSv1ProcessEvent, &ArgsProcessEvent{CGREvent: &cgrEv}, &tIDs); err != nil && + if err := thresholdS.Call(utils.ThresholdSv1ProcessEvent, &ArgsProcessEvent{CGREvent: cgrEv}, &tIDs); err != nil && err.Error() != utils.ErrNotFound.Error() { utils.Logger.Warning( fmt.Sprintf(" error: %s processing balance event %+v with ThresholdS.", diff --git a/engine/cdrs.go b/engine/cdrs.go index bfa5b4e65..eecfba9ac 100644 --- a/engine/cdrs.go +++ b/engine/cdrs.go @@ -365,7 +365,7 @@ func (cdrS *CDRServer) thdSProcessEvent(cgrEv *utils.CGREventWithArgDispatcher) // statSProcessEvent will send the event to StatS if the connection is configured func (cdrS *CDRServer) statSProcessEvent(cgrEv *utils.CGREventWithArgDispatcher) { var reply []string - statArgs := &StatsArgsProcessEvent{CGREvent: *cgrEv.CGREvent} + statArgs := &StatsArgsProcessEvent{CGREvent: cgrEv.CGREvent} if cgrEv.ArgDispatcher != nil { statArgs.ArgDispatcher = cgrEv.ArgDispatcher } diff --git a/engine/stats.go b/engine/stats.go index c5bb0bc33..b24c2f8b7 100644 --- a/engine/stats.go +++ b/engine/stats.go @@ -227,7 +227,7 @@ func (ss *StatService) Call(serviceMethod string, args interface{}, reply interf type StatsArgsProcessEvent struct { StatIDs []string - utils.CGREvent + *utils.CGREvent *utils.ArgDispatcher } @@ -247,7 +247,7 @@ func (sS *StatService) processEvent(args *StatsArgsProcessEvent) (statQueueIDs [ stsIDs = append(stsIDs, sq.ID) lkID := utils.StatQueuePrefix + sq.TenantID() guardian.Guardian.Guard(func() (gRes interface{}, gErr error) { - err = sq.ProcessEvent(&args.CGREvent, sS.filterS) + err = sq.ProcessEvent(args.CGREvent, sS.filterS) return }, config.CgrConfig().GeneralCfg().LockingTimeout, lkID) if err != nil { @@ -313,7 +313,7 @@ func (sS *StatService) processEvent(args *StatsArgsProcessEvent) (statQueueIDs [ func (sS *StatService) V1ProcessEvent(args *StatsArgsProcessEvent, reply *[]string) (err error) { if missing := utils.MissingStructFields(args, []string{"Tenant", "ID"}); len(missing) != 0 { //Params missing return utils.NewErrMandatoryIeMissing(missing...) - } else if args.Event == nil { + } else if args.CGREvent == nil || args.Event == nil { return utils.NewErrMandatoryIeMissing("Event") } if ids, err := sS.processEvent(args); err != nil { @@ -328,7 +328,7 @@ func (sS *StatService) V1ProcessEvent(args *StatsArgsProcessEvent, reply *[]stri func (sS *StatService) V1GetStatQueuesForEvent(args *StatsArgsProcessEvent, reply *[]string) (err error) { if missing := utils.MissingStructFields(args, []string{"Tenant", "ID"}); len(missing) != 0 { //Params missing return utils.NewErrMandatoryIeMissing(missing...) - } else if args.Event == nil { + } else if args.CGREvent == nil || args.Event == nil { return utils.NewErrMandatoryIeMissing("Event") } var sQs StatQueues diff --git a/engine/stats_test.go b/engine/stats_test.go index 9e9d135ee..0a96b680e 100644 --- a/engine/stats_test.go +++ b/engine/stats_test.go @@ -100,7 +100,7 @@ var ( } statsEvs = []*StatsArgsProcessEvent{ { - CGREvent: utils.CGREvent{ + CGREvent: &utils.CGREvent{ Tenant: "cgrates.org", ID: "event1", Event: map[string]interface{}{ @@ -115,7 +115,7 @@ var ( }, }, { - CGREvent: utils.CGREvent{ + CGREvent: &utils.CGREvent{ Tenant: "cgrates.org", ID: "event2", Event: map[string]interface{}{ @@ -129,7 +129,7 @@ var ( }, }, { - CGREvent: utils.CGREvent{ + CGREvent: &utils.CGREvent{ Tenant: "cgrates.org", ID: "event3", Event: map[string]interface{}{ diff --git a/sessions/sessions.go b/sessions/sessions.go index efea862ae..1ed18b6fa 100644 --- a/sessions/sessions.go +++ b/sessions/sessions.go @@ -1873,7 +1873,7 @@ func (sS *SessionS) BiRPCv1AuthorizeEvent(clnt rpcclient.RpcClientConnection, return utils.NewErrNotConnected(utils.StatService) } statArgs := &engine.StatsArgsProcessEvent{ - CGREvent: args.CGREvent, + CGREvent: &args.CGREvent, ArgDispatcher: args.ArgDispatcher, } var statReply []string @@ -2123,7 +2123,7 @@ func (sS *SessionS) BiRPCv1InitiateSession(clnt rpcclient.RpcClientConnection, } var statReply []string statArgs := &engine.StatsArgsProcessEvent{ - CGREvent: args.CGREvent, + CGREvent: &args.CGREvent, ArgDispatcher: args.ArgDispatcher, } if err := sS.statS.Call(utils.StatSv1ProcessEvent, @@ -2447,7 +2447,7 @@ func (sS *SessionS) BiRPCv1TerminateSession(clnt rpcclient.RpcClientConnection, } var statReply []string statArgs := &engine.StatsArgsProcessEvent{ - CGREvent: args.CGREvent, + CGREvent: &args.CGREvent, ArgDispatcher: args.ArgDispatcher, } if err := sS.statS.Call(utils.StatSv1ProcessEvent, @@ -2758,7 +2758,7 @@ func (sS *SessionS) BiRPCv1ProcessEvent(clnt rpcclient.RpcClientConnection, } var statReply []string statArgs := &engine.StatsArgsProcessEvent{ - CGREvent: args.CGREvent, + CGREvent: &args.CGREvent, ArgDispatcher: args.ArgDispatcher, } if err := sS.statS.Call(utils.StatSv1ProcessEvent,