MCPcopy Create free account
hub / github.com/MMadmer/EpicAssetsNotifyBot / loadDeadline

Method loadDeadline

internal/store/sqlite/store.go:329–358  ·  view source on GitHub ↗
(ctx context.Context)

Source from the content-addressed store, hash-verified

327}
328
329func (s *Store) loadDeadline(ctx context.Context) (any, error) {
330 var raw string
331 err := s.db.QueryRowContext(
332 ctx,
333 `SELECT value FROM bot_state WHERE key = ?`,
334 deadlineStateKey,
335 ).Scan(&raw)
336 if err != nil {
337 if errors.Is(err, sql.ErrNoRows) {
338 return nil, nil
339 }
340 return nil, err
341 }
342
343 var payload any
344 decoder := json.NewDecoder(strings.NewReader(raw))
345 decoder.UseNumber()
346 if err := decoder.Decode(&payload); err != nil {
347 log.Printf("sqlite: failed to decode deadline payload: %v", err)
348 return nil, nil
349 }
350
351 switch payload.(type) {
352 case nil, string, map[string]any:
353 return payload, nil
354 default:
355 log.Printf("sqlite: unexpected deadline payload type %T, resetting to empty state", payload)
356 return nil, nil
357 }
358}
359
360func replaceRuntimeSnapshot(ctx context.Context, tx *sql.Tx, snapshot Snapshot) error {
361 for _, stmt := range []string{

Callers 1

LoadSnapshotMethod · 0.95

Implementers 2

Storeinternal/store/sqlite/store.go
sqliteAdapterinternal/app/bootstrap.go

Calls

no outgoing calls

Tested by

no test coverage detected