Removed cdr struct

This commit is contained in:
andronache98
2022-02-17 13:28:56 +02:00
committed by Dan Christian Bogos
parent df412e55fb
commit 7e80fe008f
10 changed files with 0 additions and 3588 deletions

View File

@@ -19,10 +19,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>
package engine
import (
"fmt"
"time"
"github.com/cgrates/cgrates/config"
"github.com/cgrates/cgrates/utils"
)
@@ -195,80 +193,6 @@ func (me MapEvent) AsMapString(ignoredFlds utils.StringSet) (mp map[string]strin
return
}
// AsCDR exports the MapEvent as CDR
func (me MapEvent) AsCDR(cfg *config.CGRConfig, tnt, tmz string) (cdr *CDR, err error) {
cdr = &CDR{Tenant: tnt, Cost: -1.0, ExtraFields: make(map[string]string)}
for k, v := range me {
if !utils.MainCDRFields.Has(k) { // not primary field, populate extra ones
cdr.ExtraFields[k] = utils.IfaceAsString(v)
continue
}
switch k {
default:
// for the momment this return can not be reached because we implemented a case for every MainCDRField
return nil, fmt.Errorf("unimplemented CDR field: <%s>", k)
case utils.RunID:
cdr.RunID = utils.IfaceAsString(v)
case utils.OriginHost:
cdr.OriginHost = utils.IfaceAsString(v)
case utils.Source:
cdr.Source = utils.IfaceAsString(v)
case utils.OriginID:
cdr.OriginID = utils.IfaceAsString(v)
case utils.ToR:
cdr.ToR = utils.IfaceAsString(v)
case utils.RequestType:
cdr.RequestType = utils.IfaceAsString(v)
case utils.Tenant:
cdr.Tenant = utils.IfaceAsString(v)
case utils.Category:
cdr.Category = utils.IfaceAsString(v)
case utils.AccountField:
cdr.Account = utils.IfaceAsString(v)
case utils.Subject:
cdr.Subject = utils.IfaceAsString(v)
case utils.Destination:
cdr.Destination = utils.IfaceAsString(v)
case utils.SetupTime:
if cdr.SetupTime, err = utils.IfaceAsTime(v, tmz); err != nil {
return nil, err
}
case utils.AnswerTime:
if cdr.AnswerTime, err = utils.IfaceAsTime(v, tmz); err != nil {
return nil, err
}
case utils.Usage:
if cdr.Usage, err = utils.IfaceAsDuration(v); err != nil {
return nil, err
}
case utils.Partial:
if cdr.Partial, err = utils.IfaceAsBool(v); err != nil {
return nil, err
}
case utils.PreRated:
if cdr.PreRated, err = utils.IfaceAsBool(v); err != nil {
return nil, err
}
case utils.CostSource:
cdr.CostSource = utils.IfaceAsString(v)
case utils.Cost:
if cdr.Cost, err = utils.IfaceAsFloat64(v); err != nil {
return nil, err
}
case utils.ExtraInfo:
cdr.ExtraInfo = utils.IfaceAsString(v)
case utils.OrderID:
if cdr.OrderID, err = utils.IfaceAsTInt64(v); err != nil {
return nil, err
}
}
}
if cfg != nil {
cdr.AddDefaults(cfg)
}
return
}
// Data returns the MapEvent as a map[string]interface{}
func (me MapEvent) Data() map[string]interface{} {
return me