package leakybucket import ( "crypto/sha1" "fmt" "sync" ) // Buckets is the struct used to hold buckets in the context of // main.go the idea is to have one struct to rule them all type Buckets struct { Bucket_map sync.Map } // NewBuckets create the Buckets struct func NewBuckets() *Buckets { return &Buckets{ Bucket_map: sync.Map{}, } } func GetKey(bucketCfg BucketFactory, stackkey string) string { return fmt.Sprintf("%x", sha1.Sum([]byte(bucketCfg.Filter+stackkey+bucketCfg.Name))) }