Correct verify CGREvent in case of nil and add constants in engine package

This commit is contained in:
TeoV
2019-05-28 12:31:53 +03:00
committed by Dan Christian Bogos
parent bdc57998f0
commit 120060d95f
5 changed files with 38 additions and 22 deletions

View File

@@ -269,7 +269,7 @@ func (alS *AttributeService) processEvent(args *AttrArgsProcessEvent) (
func (alS *AttributeService) V1GetAttributeForEvent(args *AttrArgsProcessEvent,
attrPrfl *AttributeProfile) (err error) {
if args.CGREvent == nil {
return utils.NewErrMandatoryIeMissing("CGREvent")
return utils.NewErrMandatoryIeMissing(utils.CGREventString)
}
attrPrf, err := alS.attributeProfileForEvent(args)
if err != nil {
@@ -284,8 +284,11 @@ func (alS *AttributeService) V1GetAttributeForEvent(args *AttrArgsProcessEvent,
func (alS *AttributeService) V1ProcessEvent(args *AttrArgsProcessEvent,
reply *AttrSProcessEventReply) (err error) {
if args.CGREvent == nil || args.Event == nil {
return utils.NewErrMandatoryIeMissing("Event")
if args.CGREvent == nil {
return utils.NewErrMandatoryIeMissing(utils.CGREventString)
}
if args.Event == nil {
return utils.NewErrMandatoryIeMissing(utils.Event)
}
if args.ProcessRuns == nil || *args.ProcessRuns == 0 {
args.ProcessRuns = utils.IntPointer(alS.processRuns)

View File

@@ -311,10 +311,13 @@ func (sS *StatService) processEvent(args *StatsArgsProcessEvent) (statQueueIDs [
// V1ProcessEvent implements StatV1 method for processing an Event
func (sS *StatService) V1ProcessEvent(args *StatsArgsProcessEvent, reply *[]string) (err error) {
if missing := utils.MissingStructFields(args, []string{"Tenant", "ID"}); len(missing) != 0 { //Params missing
if args.CGREvent == nil {
return utils.NewErrMandatoryIeMissing(utils.CGREventString)
}
if missing := utils.MissingStructFields(args, []string{utils.Tenant, utils.ID}); len(missing) != 0 { //Params missing
return utils.NewErrMandatoryIeMissing(missing...)
} else if args.CGREvent == nil || args.Event == nil {
return utils.NewErrMandatoryIeMissing("Event")
} else if args.Event == nil {
return utils.NewErrMandatoryIeMissing(utils.Event)
}
if ids, err := sS.processEvent(args); err != nil {
return err
@@ -326,10 +329,13 @@ func (sS *StatService) V1ProcessEvent(args *StatsArgsProcessEvent, reply *[]stri
// V1StatQueuesForEvent implements StatV1 method for processing an Event
func (sS *StatService) V1GetStatQueuesForEvent(args *StatsArgsProcessEvent, reply *[]string) (err error) {
if missing := utils.MissingStructFields(args, []string{"Tenant", "ID"}); len(missing) != 0 { //Params missing
if args.CGREvent == nil {
return utils.NewErrMandatoryIeMissing(utils.CGREventString)
}
if missing := utils.MissingStructFields(args, []string{utils.Tenant, utils.ID}); len(missing) != 0 { //Params missing
return utils.NewErrMandatoryIeMissing(missing...)
} else if args.CGREvent == nil || args.Event == nil {
return utils.NewErrMandatoryIeMissing("Event")
} else if args.Event == nil {
return utils.NewErrMandatoryIeMissing(utils.Event)
}
var sQs StatQueues
if sQs, err = sS.matchingStatQueuesForEvent(args); err != nil {
@@ -346,7 +352,7 @@ func (sS *StatService) V1GetStatQueuesForEvent(args *StatsArgsProcessEvent, repl
// V1GetQueueStringMetrics returns the metrics of a Queue as string values
func (sS *StatService) V1GetQueueStringMetrics(args *utils.TenantID, reply *map[string]string) (err error) {
if missing := utils.MissingStructFields(args, []string{"Tenant", "ID"}); len(missing) != 0 { //Params missing
if missing := utils.MissingStructFields(args, []string{utils.Tenant, utils.ID}); len(missing) != 0 { //Params missing
return utils.NewErrMandatoryIeMissing(missing...)
}
sq, err := sS.dm.GetStatQueue(args.Tenant, args.ID, true, true, "")
@@ -368,7 +374,7 @@ func (sS *StatService) V1GetQueueStringMetrics(args *utils.TenantID, reply *map[
// V1GetFloatMetrics returns the metrics as float64 values
func (sS *StatService) V1GetQueueFloatMetrics(args *utils.TenantID, reply *map[string]float64) (err error) {
if missing := utils.MissingStructFields(args, []string{"Tenant", "ID"}); len(missing) != 0 { //Params missing
if missing := utils.MissingStructFields(args, []string{utils.Tenant, utils.ID}); len(missing) != 0 { //Params missing
return utils.NewErrMandatoryIeMissing(missing...)
}
sq, err := sS.dm.GetStatQueue(args.Tenant, args.ID, true, true, "")

View File

@@ -489,12 +489,12 @@ type optsGetSuppliers struct {
// V1GetSupplierProfilesForEvent returns the list of valid supplier IDs
func (spS *SupplierService) V1GetSuppliers(args *ArgsGetSuppliers, reply *SortedSuppliers) (err error) {
if args.CGREvent == nil {
return utils.NewErrMandatoryIeMissing(utils.Event)
return utils.NewErrMandatoryIeMissing(utils.CGREventString)
}
if missing := utils.MissingStructFields(args.CGREvent, []string{"Tenant", "ID"}); len(missing) != 0 {
if missing := utils.MissingStructFields(args.CGREvent, []string{utils.Tenant, utils.ID}); len(missing) != 0 {
return utils.NewErrMandatoryIeMissing(missing...)
} else if args.CGREvent.Event == nil {
return utils.NewErrMandatoryIeMissing("Event")
return utils.NewErrMandatoryIeMissing(utils.Event)
}
if spS.attributeS != nil {
attrArgs := &AttrArgsProcessEvent{
@@ -523,10 +523,10 @@ func (spS *SupplierService) V1GetSuppliers(args *ArgsGetSuppliers, reply *Sorted
// V1GetSupplierProfiles returns the list of valid supplier profiles
func (spS *SupplierService) V1GetSupplierProfilesForEvent(args *utils.CGREventWithArgDispatcher, reply *[]*SupplierProfile) (err error) {
if missing := utils.MissingStructFields(args.CGREvent, []string{"Tenant", "ID"}); len(missing) != 0 {
if missing := utils.MissingStructFields(args.CGREvent, []string{utils.Tenant, utils.ID}); len(missing) != 0 {
return utils.NewErrMandatoryIeMissing(missing...)
} else if args.CGREvent.Event == nil {
return utils.NewErrMandatoryIeMissing("Event")
return utils.NewErrMandatoryIeMissing(utils.Event)
}
sPs, err := spS.matchingSupplierProfilesForEvent(args.CGREvent, false)
if err != nil {

View File

@@ -340,10 +340,13 @@ func (tS *ThresholdService) processEvent(args *ArgsProcessEvent) (thresholdsIDs
// V1ProcessEvent implements ThresholdService method for processing an Event
func (tS *ThresholdService) V1ProcessEvent(args *ArgsProcessEvent, reply *[]string) (err error) {
if missing := utils.MissingStructFields(args, []string{"Tenant", "ID"}); len(missing) != 0 { //Params missing
if args.CGREvent == nil {
return utils.NewErrMandatoryIeMissing(utils.CGREventString)
}
if missing := utils.MissingStructFields(args, []string{utils.Tenant, utils.ID}); len(missing) != 0 { //Params missing
return utils.NewErrMandatoryIeMissing(missing...)
} else if args.CGREvent == nil || args.CGREvent.Event == nil {
return utils.NewErrMandatoryIeMissing("Event")
} else if args.CGREvent.Event == nil {
return utils.NewErrMandatoryIeMissing(utils.Event)
}
if ids, err := tS.processEvent(args); err != nil {
return err
@@ -355,10 +358,13 @@ func (tS *ThresholdService) V1ProcessEvent(args *ArgsProcessEvent, reply *[]stri
// V1GetThresholdsForEvent queries thresholds matching an Event
func (tS *ThresholdService) V1GetThresholdsForEvent(args *ArgsProcessEvent, reply *Thresholds) (err error) {
if missing := utils.MissingStructFields(args, []string{"Tenant", "ID"}); len(missing) != 0 { //Params missing
if args.CGREvent == nil {
return utils.NewErrMandatoryIeMissing(utils.CGREventString)
}
if missing := utils.MissingStructFields(args, []string{utils.Tenant, utils.ID}); len(missing) != 0 { //Params missing
return utils.NewErrMandatoryIeMissing(missing...)
} else if args.CGREvent == nil || args.CGREvent.Event == nil {
return utils.NewErrMandatoryIeMissing("Event")
} else if args.CGREvent.Event == nil {
return utils.NewErrMandatoryIeMissing(utils.Event)
}
var ts Thresholds
if ts, err = tS.matchingThresholdsForEvent(args); err == nil {

View File

@@ -584,6 +584,7 @@ const (
PasiveSessionPrefix = "psv"
ApierV = "ApierV"
MetaApier = "*apier"
CGREventString = "CGREvent"
)
// Migrator Action