package redis_lua import ( "robotfs/config" "github.com/redis/go-redis/v9" ) type RedisLuaStore struct { UniversalRedisLuaStore } func NewRedisLuaStore() *RedisLuaStore { return &RedisLuaStore{} } func (store *RedisLuaStore) GetName() string { return "redis_lua" } func (store *RedisLuaStore) Initialize(configuration config.Configuration, prefix string) (err error) { return store.initialize( configuration.GetString(prefix+"address"), configuration.GetString(prefix+"username"), configuration.GetString(prefix+"password"), configuration.GetInt(prefix+"database"), configuration.GetStringSlice(prefix+"superLargeDirectories"), ) } func (store *RedisLuaStore) initialize(hostPort string, username, password string, database int, superLargeDirectories []string) (err error) { store.Client = redis.NewClient(&redis.Options{ Addr: hostPort, Username: username, Password: password, DB: database, PoolSize: 100, MinIdleConns: 20, }) store.loadSuperLargeDirectories(superLargeDirectories) return }