Documentation
¶
Overview ¶
Package notifyprefs is the persistence layer for per-user notification preferences: the PostgreSQL implementation of notification.PrefsStore, backed by the user_notification_prefs table.
The preference model itself (modes, categories, defaults) lives in pkg/notification, so the enqueue path and the HTTP surface share one vocabulary without depending on where the rows are kept.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type PostgresStore ¶
type PostgresStore struct {
// contains filtered or unexported fields
}
PostgresStore implements notification.PrefsStore backed by user_notification_prefs.
func NewPostgresStore ¶
func NewPostgresStore(db *sql.DB) *PostgresStore
NewPostgresStore creates a PostgreSQL-backed preferences store.
func (*PostgresStore) Get ¶
func (s *PostgresStore) Get(ctx context.Context, email string) (notification.Prefs, error)
Get returns the stored preferences or notification.DefaultPrefs when absent.
func (*PostgresStore) Set ¶
func (s *PostgresStore) Set(ctx context.Context, email string, u notification.PrefsUpdate) (notification.Prefs, error)
Set applies u over the user's current (or default) preferences and upserts the result.