func()

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
}