in src/middleware/storage.go [76:91]
func (s Storage) Read(id string) (Todo, error) {
t, err := s.cache.Get(id)
if err != nil {
if err == ErrCacheMiss {
t, err = s.sqlstorage.Read(id)
if err != nil {
return t, fmt.Errorf("error getting todo: %v", err)
}
}
if err := s.cache.Save(t); err != nil {
return t, fmt.Errorf("error caching todo : %v", err)
}
}
return t, nil
}