(bucket *bolt.Bucket, key string, obj any, overwrite bool)
| 338 | } |
| 339 | |
| 340 | func putObject(bucket *bolt.Bucket, key string, obj any, overwrite bool) error { |
| 341 | keyBytes := []byte(key) |
| 342 | |
| 343 | if !overwrite && bucket.Get(keyBytes) != nil { |
| 344 | return fmt.Errorf("object with key %q already exists", key) |
| 345 | } |
| 346 | |
| 347 | data, err := json.Marshal(obj) |
| 348 | if err != nil { |
| 349 | return fmt.Errorf("failed to marshal object with key %q: %w", key, err) |
| 350 | } |
| 351 | |
| 352 | if err := bucket.Put(keyBytes, data); err != nil { |
| 353 | return fmt.Errorf("failed to insert object with key %q: %w", key, err) |
| 354 | } |
| 355 | |
| 356 | return nil |
| 357 | } |
| 358 | |
| 359 | func getObject(bucket *bolt.Bucket, key string, obj any) error { |
| 360 | data := bucket.Get([]byte(key)) |
no test coverage detected
searching dependent graphs…