MCPcopy Create free account
hub / github.com/encoder-run/operator / SetEncodedObject

Method SetEncodedObject

pkg/cache/redis/object.go:37–54  ·  view source on GitHub ↗

SetEncodedObject stores an encoded object in Redis.

(obj plumbing.EncodedObject)

Source from the content-addressed store, hash-verified

35
36// SetEncodedObject stores an encoded object in Redis.
37func (s *ObjectStorage) SetEncodedObject(obj plumbing.EncodedObject) (plumbing.Hash, error) {
38 r, err := obj.Reader()
39 if err != nil {
40 return obj.Hash(), err
41 }
42
43 bytes, err := io.ReadAll(r)
44 if err != nil {
45 return obj.Hash(), err
46 }
47
48 key := fmt.Sprintf("%s:%s", obj.Type(), obj.Hash())
49 if err := s.client.Set(ctx, withNamespace(s.namespacePrefix, objectPrefix, key), bytes, 0).Err(); err != nil {
50 return plumbing.ZeroHash, err
51 }
52
53 return obj.Hash(), nil
54}
55
56// EncodedObject retrieves an encoded object from Redis by its hash.
57func (s *ObjectStorage) EncodedObject(t plumbing.ObjectType, h plumbing.Hash) (plumbing.EncodedObject, error) {

Callers

nothing calls this directly

Calls 1

withNamespaceFunction · 0.85

Tested by

no test coverage detected