Dumping for all prefixes in agent requests

This commit is contained in:
porosnicuadrian
2021-07-05 18:07:09 +03:00
committed by Dan Christian Bogos
parent 7a954d2733
commit 390613e946
2 changed files with 46 additions and 10 deletions

View File

@@ -105,19 +105,47 @@ func (ar *AgentRequest) FieldAsInterface(fldPath []string) (val interface{}, err
}
val, err = dp.FieldAsInterface(fldPath[1:])
case utils.MetaReq:
val, err = ar.Request.FieldAsInterface(fldPath[1:])
if len(fldPath) != 1 {
val, err = ar.Request.FieldAsInterface(fldPath[1:])
} else {
val = ar.Request
}
case utils.MetaVars:
val, err = ar.Vars.FieldAsInterface(fldPath[1:])
if len(fldPath) != 1 {
val, err = ar.Vars.FieldAsInterface(fldPath[1:])
} else {
val = ar.Vars
}
case utils.MetaCgreq:
val, err = ar.CGRRequest.FieldAsInterface(fldPath[1:])
if len(fldPath) != 1 {
val, err = ar.CGRRequest.FieldAsInterface(fldPath[1:])
} else {
val = ar.CGRRequest
}
case utils.MetaCgrep:
val, err = ar.CGRReply.FieldAsInterface(fldPath[1:])
if len(fldPath) != 1 {
val, err = ar.CGRReply.FieldAsInterface(fldPath[1:])
} else {
val = ar.CGRReply
}
case utils.MetaDiamreq:
val, err = ar.diamreq.FieldAsInterface(fldPath[1:])
if len(fldPath) != 1 {
val, err = ar.diamreq.FieldAsInterface(fldPath[1:])
} else {
val = ar.diamreq
}
case utils.MetaRep:
val, err = ar.Reply.FieldAsInterface(fldPath[1:])
if len(fldPath) != 1 {
val, err = ar.Reply.FieldAsInterface(fldPath[1:])
} else {
val = ar.Reply
}
case utils.MetaTmp:
val, err = ar.tmp.FieldAsInterface(fldPath[1:])
if len(fldPath) != 1 {
val, err = ar.tmp.FieldAsInterface(fldPath[1:])
} else {
val = ar.tmp
}
case utils.MetaUCH:
if cacheVal, ok := engine.Cache.Get(utils.CacheUCH, strings.Join(fldPath[1:], utils.NestingSep)); !ok {
err = utils.ErrNotFound
@@ -125,9 +153,17 @@ func (ar *AgentRequest) FieldAsInterface(fldPath []string) (val interface{}, err
val = cacheVal
}
case utils.MetaOpts:
val, err = ar.Opts.FieldAsInterface(fldPath[1:])
if len(fldPath) != 1 {
val, err = ar.Opts.FieldAsInterface(fldPath[1:])
} else {
val = ar.Opts
}
case utils.MetaCfg:
val, err = ar.Cfg.FieldAsInterface(fldPath[1:])
if len(fldPath) != 1 {
val, err = ar.Cfg.FieldAsInterface(fldPath[1:])
} else {
val = ar.Cfg
}
}
if err != nil {
return

View File

@@ -204,7 +204,7 @@ func (onm *OrderedNavigableMap) Append(fullPath *FullPath, val *DataLeaf) (err e
return
}
// Compose comose the value of the leaf at the given path
// Compose compose the value of the leaf at the given path
// this used with full path and the processed path to not calculate them for every set
func (onm *OrderedNavigableMap) Compose(fullPath *FullPath, val *DataLeaf) (err error) {
if fullPath == nil || len(fullPath.PathSlice) == 0 {