database

package
v0.0.0-...-8bc3ba8 Latest Latest
Warning

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

Go to latest
Published: Feb 27, 2023 License: Apache-2.0 Imports: 21 Imported by: 0

Documentation

Index

Constants

View Source
const (
	PostgreSQL = "postgres"
	SQLite     = "sqlite"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type ConnectionParams

type ConnectionParams struct {
	MaxOpenConns    int
	MaxIdleConns    int
	ConnMaxLifetime time.Duration
	ConnMaxIdleTime time.Duration
}

type DatabaseManager

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

DatabaseManager contains the database connection, and offers methods for interacting with the database.

func NewDatabaseManager

func NewDatabaseManager(driverName, dataSourceName string, params *ConnectionParams) (*DatabaseManager, error)

NewDatabaseManager takes a database connection string, returns a new initialized SQL database manager.

func (*DatabaseManager) Close

func (dm *DatabaseManager) Close() error

func (*DatabaseManager) GetExternalIdentityUUIDs

func (dm *DatabaseManager) GetExternalIdentityUUIDs() ([]uuid.UUID, error)

func (*DatabaseManager) GetIdentityUUIDs

func (dm *DatabaseManager) GetIdentityUUIDs() ([]uuid.UUID, error)

func (*DatabaseManager) IsReady

func (dm *DatabaseManager) IsReady() error

func (*DatabaseManager) LoadActiveFlag

func (dm *DatabaseManager) LoadActiveFlag(uid uuid.UUID) (active bool, err error)

func (*DatabaseManager) LoadActiveFlagForUpdate

func (dm *DatabaseManager) LoadActiveFlagForUpdate(transactionCtx repository.TransactionCtx, uid uuid.UUID) (bool, error)

func (*DatabaseManager) LoadAuthForUpdate

func (dm *DatabaseManager) LoadAuthForUpdate(transactionCtx repository.TransactionCtx, uid uuid.UUID) (string, error)

func (*DatabaseManager) LoadExternalIdentity

func (dm *DatabaseManager) LoadExternalIdentity(ctx context.Context, uid uuid.UUID) (*ent.ExternalIdentity, error)

func (*DatabaseManager) LoadIdentity

func (dm *DatabaseManager) LoadIdentity(uid uuid.UUID) (*ent.Identity, error)

func (*DatabaseManager) LoadSignatureForUpdate

func (dm *DatabaseManager) LoadSignatureForUpdate(transactionCtx repository.TransactionCtx, uid uuid.UUID) ([]byte, error)

func (*DatabaseManager) SetConnectionParams

func (dm *DatabaseManager) SetConnectionParams(params *ConnectionParams)

func (*DatabaseManager) StartTransaction

func (dm *DatabaseManager) StartTransaction(ctx context.Context) (transactionCtx repository.TransactionCtx, err error)

func (*DatabaseManager) StoreActiveFlag

func (dm *DatabaseManager) StoreActiveFlag(transactionCtx repository.TransactionCtx, uid uuid.UUID, active bool) error

func (*DatabaseManager) StoreAuth

func (dm *DatabaseManager) StoreAuth(transactionCtx repository.TransactionCtx, uid uuid.UUID, auth string) error

func (*DatabaseManager) StoreExternalIdentity

func (dm *DatabaseManager) StoreExternalIdentity(ctx context.Context, extId ent.ExternalIdentity) error

func (*DatabaseManager) StoreIdentity

func (dm *DatabaseManager) StoreIdentity(transactionCtx repository.TransactionCtx, i ent.Identity) error

func (*DatabaseManager) StoreSignature

func (dm *DatabaseManager) StoreSignature(transactionCtx repository.TransactionCtx, uid uuid.UUID, signature []byte) error

type Log

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

Log represents the logger for migrations

func (*Log) Printf

func (l *Log) Printf(format string, v ...interface{})

Printf prints out formatted string into a log

func (*Log) Verbose

func (l *Log) Verbose() bool

Verbose shows if verbose print enabled

type PostgresDatabase

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

func NewPostgresDatabase

func NewPostgresDatabase(dbConn *sql.DB) *PostgresDatabase

func (*PostgresDatabase) GetExternalIdentityUUIDs

func (db *PostgresDatabase) GetExternalIdentityUUIDs(ctx context.Context) ([]uuid.UUID, error)

func (*PostgresDatabase) GetIdentityUUIDs

func (db *PostgresDatabase) GetIdentityUUIDs(ctx context.Context) ([]uuid.UUID, error)

func (*PostgresDatabase) LoadActiveFlag

func (db *PostgresDatabase) LoadActiveFlag(ctx context.Context, uid uuid.UUID) (bool, error)

func (*PostgresDatabase) LoadActiveFlagForUpdate

func (db *PostgresDatabase) LoadActiveFlagForUpdate(tx *sql.Tx, uid uuid.UUID) (bool, error)

func (*PostgresDatabase) LoadAuthForUpdate

func (db *PostgresDatabase) LoadAuthForUpdate(tx *sql.Tx, uid uuid.UUID) (string, error)

func (*PostgresDatabase) LoadExternalIdentity

func (db *PostgresDatabase) LoadExternalIdentity(ctx context.Context, uid uuid.UUID) (ent.ExternalIdentity, error)

func (*PostgresDatabase) LoadIdentity

func (db *PostgresDatabase) LoadIdentity(ctx context.Context, uid uuid.UUID) (ent.Identity, error)

func (*PostgresDatabase) LoadSignatureForUpdate

func (db *PostgresDatabase) LoadSignatureForUpdate(tx *sql.Tx, uid uuid.UUID) ([]byte, error)

func (*PostgresDatabase) StoreActiveFlag

func (db *PostgresDatabase) StoreActiveFlag(tx *sql.Tx, arg StoreActiveFlagParams) error

func (*PostgresDatabase) StoreAuth

func (db *PostgresDatabase) StoreAuth(tx *sql.Tx, arg StoreAuthParams) error

func (*PostgresDatabase) StoreExternalIdentity

func (db *PostgresDatabase) StoreExternalIdentity(ctx context.Context, arg StoreExternalIdentityParams) error

func (*PostgresDatabase) StoreIdentity

func (db *PostgresDatabase) StoreIdentity(tx *sql.Tx, arg StoreIdentityParams) error

func (*PostgresDatabase) StoreSignature

func (db *PostgresDatabase) StoreSignature(tx *sql.Tx, arg StoreSignatureParams) error

type Querier

type Querier interface {
	GetExternalIdentityUUIDs(ctx context.Context) ([]uuid.UUID, error)
	GetIdentityUUIDs(ctx context.Context) ([]uuid.UUID, error)
	LoadActiveFlag(ctx context.Context, uid uuid.UUID) (bool, error)
	LoadActiveFlagForUpdate(tx *sql.Tx, uid uuid.UUID) (bool, error)
	LoadAuthForUpdate(tx *sql.Tx, uid uuid.UUID) (string, error)
	LoadExternalIdentity(ctx context.Context, uid uuid.UUID) (ent.ExternalIdentity, error)
	LoadIdentity(ctx context.Context, uid uuid.UUID) (ent.Identity, error)
	LoadSignatureForUpdate(tx *sql.Tx, uid uuid.UUID) ([]byte, error)
	StoreActiveFlag(tx *sql.Tx, arg StoreActiveFlagParams) error
	StoreAuth(tx *sql.Tx, arg StoreAuthParams) error
	StoreExternalIdentity(ctx context.Context, arg StoreExternalIdentityParams) error
	StoreIdentity(tx *sql.Tx, arg StoreIdentityParams) error
	StoreSignature(tx *sql.Tx, arg StoreSignatureParams) error
	// contains filtered or unexported methods
}

func NewQuerier

func NewQuerier(dbConn *sql.DB, driverName string) Querier

type SqliteDatabase

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

func NewSqliteDatabase

func NewSqliteDatabase(dbConn *sql.DB) *SqliteDatabase

func (*SqliteDatabase) GetExternalIdentityUUIDs

func (db *SqliteDatabase) GetExternalIdentityUUIDs(ctx context.Context) ([]uuid.UUID, error)

func (*SqliteDatabase) GetIdentityUUIDs

func (db *SqliteDatabase) GetIdentityUUIDs(ctx context.Context) ([]uuid.UUID, error)

func (*SqliteDatabase) LoadActiveFlag

func (db *SqliteDatabase) LoadActiveFlag(ctx context.Context, uid uuid.UUID) (bool, error)

func (*SqliteDatabase) LoadActiveFlagForUpdate

func (db *SqliteDatabase) LoadActiveFlagForUpdate(tx *sql.Tx, uid uuid.UUID) (bool, error)

func (*SqliteDatabase) LoadAuthForUpdate

func (db *SqliteDatabase) LoadAuthForUpdate(tx *sql.Tx, uid uuid.UUID) (string, error)

func (*SqliteDatabase) LoadExternalIdentity

func (db *SqliteDatabase) LoadExternalIdentity(ctx context.Context, uid uuid.UUID) (ent.ExternalIdentity, error)

func (*SqliteDatabase) LoadIdentity

func (db *SqliteDatabase) LoadIdentity(ctx context.Context, uid uuid.UUID) (ent.Identity, error)

func (*SqliteDatabase) LoadSignatureForUpdate

func (db *SqliteDatabase) LoadSignatureForUpdate(tx *sql.Tx, uid uuid.UUID) ([]byte, error)

func (*SqliteDatabase) StoreActiveFlag

func (db *SqliteDatabase) StoreActiveFlag(tx *sql.Tx, arg StoreActiveFlagParams) error

func (*SqliteDatabase) StoreAuth

func (db *SqliteDatabase) StoreAuth(tx *sql.Tx, arg StoreAuthParams) error

func (*SqliteDatabase) StoreExternalIdentity

func (db *SqliteDatabase) StoreExternalIdentity(ctx context.Context, arg StoreExternalIdentityParams) error

func (*SqliteDatabase) StoreIdentity

func (db *SqliteDatabase) StoreIdentity(tx *sql.Tx, arg StoreIdentityParams) error

func (*SqliteDatabase) StoreSignature

func (db *SqliteDatabase) StoreSignature(tx *sql.Tx, arg StoreSignatureParams) error

type StoreActiveFlagParams

type StoreActiveFlagParams struct {
	Active bool
	Uid    uuid.UUID
}

type StoreAuthParams

type StoreAuthParams struct {
	AuthToken string
	Uid       uuid.UUID
}

type StoreExternalIdentityParams

type StoreExternalIdentityParams struct {
	Uid       uuid.UUID
	PublicKey []byte
}

type StoreIdentityParams

type StoreIdentityParams struct {
	Uid        uuid.UUID
	PrivateKey []byte
	PublicKey  []byte
	Signature  []byte
	AuthToken  string
	Active     bool
}

type StoreSignatureParams

type StoreSignatureParams struct {
	Signature []byte
	Uid       uuid.UUID
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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