func()

in src/middleware/cache.go [157:178]


func (c *Cache) List() (Todos, error) {
	t := Todos{}
	if !c.enabled {
		return t, ErrCacheMiss
	}
	conn := c.redisPool.Get()
	defer conn.Close()

	s, err := redis.String(conn.Do("GET", "todoslist"))
	if err == redis.ErrNil {
		return Todos{}, ErrCacheMiss
	} else if err != nil {
		return Todos{}, err
	}

	if err := json.Unmarshal([]byte(s), &t); err != nil {
		return Todos{}, err
	}
	c.log("Successfully retrieved todos from cache")

	return t, nil
}