mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-15 05:09:54 +05:00
Adding *sessionSOriginID StringOpts variables
This commit is contained in:
committed by
Dan Christian Bogos
parent
652d1e68cf
commit
cae468454c
@@ -174,6 +174,7 @@ func newCGRConfig(config []byte) (cfg *CGRConfig, err error) {
|
||||
DebitInterval: []*DynamicDurationOpt{{value: SessionsDebitIntervalDftOpt}},
|
||||
TTLMaxDelay: []*DynamicDurationOpt{{value: SessionsTTLMaxDelayDftOpt}},
|
||||
TTLUsage: []*DynamicDurationPointerOpt{},
|
||||
SessionsOriginID: []*DynamicStringOpt{},
|
||||
},
|
||||
},
|
||||
fsAgentCfg: new(FsAgentCfg),
|
||||
|
||||
@@ -894,6 +894,13 @@ const CGRATES_CFG_JSON = `
|
||||
// "FilterIDs": [],
|
||||
// "Value": ""
|
||||
// }
|
||||
// ],
|
||||
// "*sessionsOriginID": [
|
||||
// {
|
||||
// "Tenant": "*any",
|
||||
// "FilterIDs": [],
|
||||
// "Value": ""
|
||||
// }
|
||||
// ]
|
||||
}
|
||||
},
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -90,6 +90,7 @@ type SessionsOpts struct {
|
||||
DebitInterval []*DynamicDurationOpt
|
||||
TTLMaxDelay []*DynamicDurationOpt
|
||||
TTLUsage []*DynamicDurationPointerOpt
|
||||
SessionsOriginID []*DynamicStringOpt
|
||||
}
|
||||
|
||||
// SessionSCfg is the config section for SessionS
|
||||
@@ -301,6 +302,15 @@ func (sesOpts *SessionsOpts) loadFromJSONCfg(jsnCfg *SessionsOptsJson) (err erro
|
||||
}
|
||||
sesOpts.TTLUsage = append(usage, sesOpts.TTLUsage...)
|
||||
}
|
||||
if jsnCfg.SessionsOriginID != nil {
|
||||
var sessionsOriginID []*DynamicStringOpt
|
||||
sessionsOriginID, err = InterfaceToDynamicStringOpts(jsnCfg.SessionsOriginID)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
sesOpts.SessionsOriginID = append(sessionsOriginID, sesOpts.SessionsOriginID...)
|
||||
}
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
@@ -450,6 +460,7 @@ func (scfg SessionSCfg) AsMapInterface(string) any {
|
||||
utils.MetaTTLLastUsedCfg: scfg.Opts.TTLLastUsed,
|
||||
utils.MetaTTLMaxDelayCfg: scfg.Opts.TTLMaxDelay,
|
||||
utils.MetaTTLUsageCfg: scfg.Opts.TTLUsage,
|
||||
utils.MetaSessionsOriginID: scfg.Opts.SessionsOriginID,
|
||||
}
|
||||
mp := map[string]any{
|
||||
utils.EnabledCfg: scfg.Enabled,
|
||||
@@ -634,6 +645,10 @@ func (sesOpts *SessionsOpts) Clone() (cln *SessionsOpts) {
|
||||
if sesOpts.TTLUsage != nil {
|
||||
usg = CloneDynamicDurationPointerOpt(sesOpts.TTLUsage)
|
||||
}
|
||||
var sID []*DynamicStringOpt
|
||||
if sesOpts.SessionsOriginID != nil {
|
||||
sID = CloneDynamicStringOpt(sesOpts.SessionsOriginID)
|
||||
}
|
||||
return &SessionsOpts{
|
||||
Accounts: acntS,
|
||||
Attributes: attrS,
|
||||
@@ -666,6 +681,7 @@ func (sesOpts *SessionsOpts) Clone() (cln *SessionsOpts) {
|
||||
TTLLastUsed: lastUsed,
|
||||
TTLMaxDelay: maxDelay,
|
||||
TTLUsage: usg,
|
||||
SessionsOriginID: sID,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -852,6 +868,7 @@ type SessionsOptsJson struct {
|
||||
TTLLastUsed []*DynamicInterfaceOpt `json:"*ttlLastUsed"`
|
||||
TTLMaxDelay []*DynamicInterfaceOpt `json:"*ttlMaxDelay"`
|
||||
TTLUsage []*DynamicInterfaceOpt `json:"*ttlUsage"`
|
||||
SessionsOriginID []*DynamicInterfaceOpt `json:"*sessionsOriginID"`
|
||||
}
|
||||
|
||||
// SessionSJsonCfg config section
|
||||
@@ -979,6 +996,9 @@ func diffSessionsOptsJsonCfg(d *SessionsOptsJson, v1, v2 *SessionsOpts) *Session
|
||||
if !DynamicDurationPointerOptEqual(v1.TTLUsage, v2.TTLUsage) {
|
||||
d.TTLUsage = DurationPointerToIfaceDynamicOpts(v2.TTLUsage)
|
||||
}
|
||||
if !DynamicStringOptEqual(v1.SessionsOriginID, v2.SessionsOriginID) {
|
||||
d.SessionsOriginID = DynamicStringToInterfaceOpts(v2.SessionsOriginID)
|
||||
}
|
||||
return d
|
||||
}
|
||||
|
||||
|
||||
@@ -168,10 +168,11 @@ func TestSessionSCfgloadFromJsonCfgCase1(t *testing.T) {
|
||||
value: SessionsDebitIntervalDftOpt,
|
||||
},
|
||||
},
|
||||
TTLLastUsage: []*DynamicDurationPointerOpt{},
|
||||
TTLLastUsed: []*DynamicDurationPointerOpt{},
|
||||
TTLMaxDelay: []*DynamicDurationOpt{{value: SessionsTTLMaxDelayDftOpt}},
|
||||
TTLUsage: []*DynamicDurationPointerOpt{},
|
||||
TTLLastUsage: []*DynamicDurationPointerOpt{},
|
||||
TTLLastUsed: []*DynamicDurationPointerOpt{},
|
||||
TTLMaxDelay: []*DynamicDurationOpt{{value: SessionsTTLMaxDelayDftOpt}},
|
||||
TTLUsage: []*DynamicDurationPointerOpt{},
|
||||
SessionsOriginID: []*DynamicStringOpt{},
|
||||
},
|
||||
}
|
||||
jsonCfg := NewDefaultCGRConfig()
|
||||
@@ -393,6 +394,7 @@ func TestSessionSCfgloadFromJsonCfgCase10(t *testing.T) {
|
||||
Chargeable: []*DynamicBoolOpt{{value: SessionsChargeableDftOpt}},
|
||||
DebitInterval: []*DynamicDurationOpt{{value: SessionsDebitIntervalDftOpt}},
|
||||
ForceUsage: []*DynamicBoolOpt{},
|
||||
SessionsOriginID: []*DynamicStringOpt{},
|
||||
TTLLastUsage: []*DynamicDurationPointerOpt{
|
||||
{
|
||||
value: utils.DurationPointer(1),
|
||||
@@ -554,6 +556,7 @@ func TestSessionSCfgAsMapInterfaceCase1(t *testing.T) {
|
||||
utils.MetaTTLMaxDelayCfg: []*DynamicDurationOpt{{value: SessionsTTLMaxDelayDftOpt}},
|
||||
utils.MetaTTLUsageCfg: []*DynamicDurationPointerOpt{},
|
||||
utils.MetaForceUsageCfg: []*DynamicBoolOpt{},
|
||||
utils.MetaSessionsOriginID: []*DynamicStringOpt{},
|
||||
},
|
||||
}
|
||||
if cgrCfg, err := NewCGRConfigFromJSONStringWithDefaults(cfgJSONStr); err != nil {
|
||||
@@ -680,11 +683,12 @@ func TestSessionSCfgAsMapInterfaceCase2(t *testing.T) {
|
||||
value: SessionsDebitIntervalDftOpt,
|
||||
},
|
||||
},
|
||||
utils.MetaTTLLastUsageCfg: []*DynamicDurationPointerOpt{},
|
||||
utils.MetaTTLLastUsedCfg: []*DynamicDurationPointerOpt{},
|
||||
utils.MetaTTLMaxDelayCfg: []*DynamicDurationOpt{{value: SessionsTTLMaxDelayDftOpt}},
|
||||
utils.MetaTTLUsageCfg: []*DynamicDurationPointerOpt{},
|
||||
utils.MetaForceUsageCfg: []*DynamicBoolOpt{},
|
||||
utils.MetaTTLLastUsageCfg: []*DynamicDurationPointerOpt{},
|
||||
utils.MetaTTLLastUsedCfg: []*DynamicDurationPointerOpt{},
|
||||
utils.MetaTTLMaxDelayCfg: []*DynamicDurationOpt{{value: SessionsTTLMaxDelayDftOpt}},
|
||||
utils.MetaTTLUsageCfg: []*DynamicDurationPointerOpt{},
|
||||
utils.MetaForceUsageCfg: []*DynamicBoolOpt{},
|
||||
utils.MetaSessionsOriginID: []*DynamicStringOpt{},
|
||||
},
|
||||
}
|
||||
cgrCfg, err := NewCGRConfigFromJSONStringWithDefaults(cfgJSONStr)
|
||||
|
||||
@@ -2212,6 +2212,7 @@ const (
|
||||
MetaTTLLastUsedCfg = "*ttlLastUsed"
|
||||
MetaTTLMaxDelayCfg = "*ttlMaxDelay"
|
||||
MetaTTLUsageCfg = "*ttlUsage"
|
||||
MetaSessionsOriginID = "*sessionsOriginID"
|
||||
|
||||
// AnalyzerSCfg
|
||||
CleanupIntervalCfg = "cleanup_interval"
|
||||
|
||||
Reference in New Issue
Block a user