27 lines
909 B
Go
27 lines
909 B
Go
|
|
package store
|
||
|
|
|
||
|
|
import (
|
||
|
|
"context"
|
||
|
|
"errors"
|
||
|
|
)
|
||
|
|
|
||
|
|
// Postgres is the production Store. Skeleton mirroring the pattern used
|
||
|
|
// by services/approval-service/internal/store/postgres.go: every method
|
||
|
|
// returns errPGUnimplemented until the pgxpool wiring lands. The schema
|
||
|
|
// is authoritative in db/trust/migrations/0005_verification_decisions.*.sql.
|
||
|
|
type Postgres struct {
|
||
|
|
// pool *pgxpool.Pool // kept out of go.mod in the skeleton
|
||
|
|
}
|
||
|
|
|
||
|
|
var errPGUnimplemented = errors.New("postgres store is a skeleton; use NewMemory for Phase 1")
|
||
|
|
|
||
|
|
// NewPostgres returns a zero-value Postgres. Real wiring is Phase 2.
|
||
|
|
func NewPostgres( /* conn string, logger */ ) (*Postgres, error) {
|
||
|
|
return &Postgres{}, nil
|
||
|
|
}
|
||
|
|
|
||
|
|
func (*Postgres) Reserve(_ context.Context, _ Decision) error { return errPGUnimplemented }
|
||
|
|
func (*Postgres) Get(_ context.Context, _ string) (Decision, bool, error) {
|
||
|
|
return Decision{}, false, errPGUnimplemented
|
||
|
|
}
|