Added OrderedNavigableMap implementation

This commit is contained in:
Trial97
2020-05-05 14:11:48 +03:00
committed by Dan Christian Bogos
parent a14dbaeb49
commit 80cdfe78c9
29 changed files with 3296 additions and 63 deletions

View File

@@ -1804,7 +1804,7 @@ func (dm *DataManager) GetAttributeProfile(tenant, id string, cacheRead, cacheWr
}
}
isInline := false
for typeAttr := range utils.AttrInlineTypes.Data() {
for typeAttr := range utils.AttrInlineTypes {
if strings.HasPrefix(id, typeAttr) {
isInline = true
break

View File

@@ -129,16 +129,16 @@ func (fltr *Filter) Compile() (err error) {
return
}
var supportedFiltersType *utils.StringSet = utils.NewStringSet([]string{utils.MetaString, utils.MetaPrefix, utils.MetaSuffix,
var supportedFiltersType utils.StringSet = utils.NewStringSet([]string{utils.MetaString, utils.MetaPrefix, utils.MetaSuffix,
utils.MetaTimings, utils.MetaRSR, utils.MetaDestinations,
utils.MetaEmpty, utils.MetaExists, utils.MetaLessThan, utils.MetaLessOrEqual,
utils.MetaGreaterThan, utils.MetaGreaterOrEqual, utils.MetaEqual,
utils.MetaNotEqual})
var needsFieldName *utils.StringSet = utils.NewStringSet([]string{utils.MetaString, utils.MetaPrefix,
var needsFieldName utils.StringSet = utils.NewStringSet([]string{utils.MetaString, utils.MetaPrefix,
utils.MetaSuffix, utils.MetaTimings, utils.MetaDestinations, utils.MetaLessThan,
utils.MetaEmpty, utils.MetaExists, utils.MetaLessOrEqual, utils.MetaGreaterThan,
utils.MetaGreaterOrEqual, utils.MetaEqual, utils.MetaNotEqual})
var needsValues *utils.StringSet = utils.NewStringSet([]string{utils.MetaString, utils.MetaPrefix,
var needsValues utils.StringSet = utils.NewStringSet([]string{utils.MetaString, utils.MetaPrefix,
utils.MetaSuffix, utils.MetaTimings, utils.MetaRSR, utils.MetaDestinations,
utils.MetaLessThan, utils.MetaLessOrEqual, utils.MetaGreaterThan, utils.MetaGreaterOrEqual,
utils.MetaEqual, utils.MetaNotEqual})

View File

@@ -181,7 +181,7 @@ func (me MapEvent) Clone() (mp MapEvent) {
// AsMapString returns a map[string]string out of mp, ignoring specific fields if needed
// most used when needing to export extraFields
func (me MapEvent) AsMapString(ignoredFlds *utils.StringSet) (mp map[string]string) {
func (me MapEvent) AsMapString(ignoredFlds utils.StringSet) (mp map[string]string) {
mp = make(map[string]string)
if ignoredFlds == nil {
ignoredFlds = utils.NewStringSet(nil)

View File

@@ -240,7 +240,7 @@ func (se *SafEvent) AsMapInterface() (mp map[string]interface{}) {
// AsMapString returns a map[string]string out of mp, ignoring specific fields if needed
// most used when needing to export extraFields
func (se *SafEvent) AsMapString(ignoredFlds *utils.StringSet) (mp map[string]string) {
func (se *SafEvent) AsMapString(ignoredFlds utils.StringSet) (mp map[string]string) {
se.RLock()
mp = se.Me.AsMapString(ignoredFlds)
se.RUnlock()

View File

@@ -1081,7 +1081,7 @@ func (iDB *InternalDB) GetCDRs(filter *utils.CDRsFilter, remove bool) (cdrs []*C
}
// find indexed fields
var cdrMpIDs *utils.StringSet
var cdrMpIDs utils.StringSet
// Apply string filter
for _, fltrSlc := range pairSlice {
if len(fltrSlc.ids) == 0 {
@@ -1158,7 +1158,7 @@ func (iDB *InternalDB) GetCDRs(filter *utils.CDRsFilter, remove bool) (cdrs []*C
}
paginatorOffsetCounter := 0
for key := range cdrMpIDs.Data() {
for key := range cdrMpIDs {
x, ok := iDB.db.Get(utils.CDRsTBL, key)
if !ok || x == nil {
return nil, 0, utils.ErrNotFound