db

package
v1.1.3 Latest Latest
Warning

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

Go to latest
Published: May 22, 2025 License: MIT Imports: 9 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 {
	ReaderDb *sqlx.DB
	// contains filtered or unexported fields
}

func NewDatabase

func NewDatabase(config *SqliteDatabaseConfig, logger logrus.FieldLogger) *Database

func (*Database) ApplyEmbeddedDbSchema

func (d *Database) ApplyEmbeddedDbSchema(version int64) error

func (*Database) Close

func (d *Database) Close() error

func (*Database) DeleteSpammer

func (d *Database) DeleteSpammer(tx *sqlx.Tx, id int64) error

func (*Database) GetSpammer

func (d *Database) GetSpammer(id int64) (*Spammer, error)

func (*Database) GetSpammers

func (d *Database) GetSpammers() ([]*Spammer, error)

func (*Database) GetSpamoorState

func (d *Database) GetSpamoorState(key string, returnValue interface{}) (interface{}, error)

func (*Database) Init

func (d *Database) Init() error

func (*Database) InsertSpammer

func (d *Database) InsertSpammer(tx *sqlx.Tx, spammer *Spammer) error

func (*Database) RunDBTransaction

func (d *Database) RunDBTransaction(handler func(tx *sqlx.Tx) error) error

func (*Database) SetSpamoorState

func (d *Database) SetSpamoorState(tx *sqlx.Tx, key string, value interface{}) error

func (*Database) UpdateSpammer

func (d *Database) UpdateSpammer(tx *sqlx.Tx, spammer *Spammer) error

type Spammer

type Spammer struct {
	ID          int64  `db:"id"`
	Scenario    string `db:"scenario"`
	Name        string `db:"name"`
	Description string `db:"description"`
	Config      string `db:"config"`
	Status      int    `db:"status"`
	CreatedAt   int64  `db:"created_at"`
	State       string `db:"state"`
}

type SpamoorState

type SpamoorState struct {
	Key   string `db:"key"`
	Value string `db:"value"`
}

type SqliteDatabaseConfig

type SqliteDatabaseConfig struct {
	File         string `yaml:"file"`
	MaxOpenConns int    `yaml:"maxOpenConns"`
	MaxIdleConns int    `yaml:"maxIdleConns"`
}

Jump to

Keyboard shortcuts

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