in model/model_experiment_room.go [32:66]
func (e *ExperimentRoom) Init() error {
// deal ExpRoomBuckets
//e.diversionBucket = NewDiversionBucket(e.Type)
if e.diversionBucket == nil {
if e.BucketType == common.Bucket_Type_UID {
e.diversionBucket = NewUidDiversionBucket(int(e.BucketCount), e.ExpRoomBuckets)
} else if e.BucketType == common.Bucket_Type_UID_HASH {
e.diversionBucket = NewUidHashDiversionBucket(int(e.BucketCount), e.ExpRoomBuckets)
} else if e.BucketType == common.Bucket_Type_Filter {
diversionBucket, err := NewFilterDiversionBucket(e.Filter)
if err != nil {
return err
}
e.diversionBucket = diversionBucket
} else if e.BucketType == common.Bucket_Type_Custom {
e.diversionBucket = NewCustomDiversionBucket()
}
}
// deal DebugUsers
e.debugUserMap = make(map[string]bool, 0)
if e.DebugUsers != "" {
uids := strings.Split(e.DebugUsers, ",")
for _, uid := range uids {
e.debugUserMap[uid] = true
}
}
if len(e.DebugCrowdIdUsers) != 0 {
for _, user := range e.DebugCrowdIdUsers {
e.debugUserMap[user] = true
}
}
return nil
}