database

package
v0.0.0-...-3dc2a1c Latest Latest
Warning

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

Go to latest
Published: Apr 24, 2024 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Database

type Database struct {
	Connection *sqlx.DB
	SQLQueries embed.FS
}

Database contains DB connection and other dependencies for application.

func New

func New(c *config.Config) (*Database, error)

New returns a new instance of DB connection.

func (*Database) Migrate

func (d *Database) Migrate(schema string) error

Migrate migrates the given DB schema from the embedded SQL file.

func (*Database) QueryAddSecret

func (d *Database) QueryAddSecret(s *Secret) error

QueryAddSecret adds a new secret to the database.

func (*Database) QueryDeleteSecretByKey

func (d *Database) QueryDeleteSecretByKey(key string) error

QueryDeleteSecretByKey deletes a secret by its key from the database.

func (*Database) QueryGetActiveSecrets

func (d *Database) QueryGetActiveSecrets() (secrets []*Secret, err error)

QueryGetActiveSecrets returns the active secrets from the database.

func (*Database) QueryGetExpiredSecrets

func (d *Database) QueryGetExpiredSecrets() (secrets []*Secret, err error)

QueryGetExpiredSecrets returns the expired secrets from the database.

func (*Database) QueryGetSecretByKey

func (d *Database) QueryGetSecretByKey(key string) (secret Secret, err error)

QueryGetSecretByKey returns the secret by its key from the database.

func (*Database) QueryUpdateAccessCodeFieldByKey

func (d *Database) QueryUpdateAccessCodeFieldByKey(key, accessCode string) error

QueryUpdateAccessCodeFieldByKey updates the 'access_code' field of the secret by its key in the database.

func (*Database) QueryUpdateExpiresAtFieldByKey

func (d *Database) QueryUpdateExpiresAtFieldByKey(key string, expiredAt time.Time) error

QueryUpdateExpiresAtFieldByKey updates the 'expires_at' field of the secret by its key in the database.

type Secret

type Secret struct {
	ID                       int       `db:"id"`
	CreatedAt                time.Time `db:"created_at"`
	ExpiresAt                time.Time `db:"expires_at"`
	AccessCode               string    `db:"access_code"`
	Name                     string    `db:"name"`
	Key                      string    `db:"key"`
	Value                    string    `db:"value"`
	IsExpireAfterFirstUnlock bool      `db:"is_expire_after_first_unlock"`
}

Secret represents a secret record.

Jump to

Keyboard shortcuts

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