func (attr *AttrSetBalance) SetBalance(b *engine.Balance) { if b == nil { return } if attr.Directions != nil { b.Directions = utils.StringMapFromSlice(*attr.Directions) } if attr.Value != nil { b.Value = *attr.Value } if attr.ExpiryTime != nil { b.ExpirationDate = attr.expTime } if attr.RatingSubject != nil { b.RatingSubject = *attr.RatingSubject } if attr.Categories != nil { b.Categories = utils.StringMapFromSlice(*attr.Categories) } if attr.DestinationIDs != nil { b.DestinationIds = utils.StringMapFromSlice(*attr.DestinationIDs) } if attr.SharedGroups != nil { b.SharedGroups = utils.StringMapFromSlice(*attr.SharedGroups) } if attr.TimingIDs != nil { b.TimingIDs = utils.StringMapFromSlice(*attr.TimingIDs) } if attr.Weight != nil { b.Weight = *attr.Weight } if attr.Blocker != nil { b.Blocker = *attr.Blocker } if attr.Disabled != nil { b.Disabled = *attr.Disabled } b.SetDirty() // Mark the balance as dirty since we have modified and it should be checked by action triggers }