func()

in pkg/files/store/store.go [126:146]


func (s *store) Key(c pcontext.Context) (string, digest.Digest, error) {
	log := pcontext.Logger(c)

	blobUrl := pcontext.BlobUrl(c)
	d, err := s.parser.ParseDigest(blobUrl)
	if err != nil {
		log.Error().Err(err).Msg("store key")
	}

	startIndex := int64(0) // Default to 0 for HEADs.
	if c.Request.Method == "GET" {
		startIndex, err = pcontext.RangeStartIndex(c.Request.Header.Get("Range"))
		if err != nil {
			return "", "", err
		}
	}
	key := files.FileChunkKey(d.String(), startIndex, int64(files.CacheBlockSize))

	log.Info().Str("digest", d.String()).Str("key", key).Msg("store key")
	return key, d, err
}