db

package
v0.5.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 17, 2023 License: Apache-2.0 Imports: 6 Imported by: 1

Documentation

Overview

Package db contains config related CRUD functionality.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	Key         string    `db:"key"`
	Value       string    `db:"value"`
	DateCreated time.Time `db:"date_created"`
	DateUpdated time.Time `db:"date_updated"`
}

Config represent the structure we need for moving data between the app and the database.

type Store

type Store struct {
	// contains filtered or unexported fields
}

Store manages the set of APIs for config access.

func NewStore

func NewStore(log *zap.SugaredLogger, db *sqlx.DB) Store

NewStore constructs a data for api access.

func (Store) Create

func (s Store) Create(ctx context.Context, config Config) error

Create inserts a new config into the database.

func (Store) Delete

func (s Store) Delete(ctx context.Context, configKey string) error

Delete removes a config from the database.

func (Store) QueryByKey

func (s Store) QueryByKey(ctx context.Context, configKey string) (Config, error)

QueryByKey gets the specified config from the database.

func (Store) Tran

func (s Store) Tran(tx sqlx.ExtContext) Store

Tran return new Store with transaction in it.

func (Store) Update

func (s Store) Update(ctx context.Context, config Config) error

Update replaces a config document in the database.

func (Store) WithinTran

func (s Store) WithinTran(ctx context.Context, fn func(sqlx.ExtContext) error) error

WithinTran runs passed function and do commit/rollback at the end.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL