helper

package
v1.1.0 Latest Latest
Warning

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

Go to latest
Published: Jul 8, 2025 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CheckValidTask

func CheckValidTask(task interface{}) error

func CheckValidTaskWithParameters

func CheckValidTaskWithParameters(task interface{}, parameters ...interface{}) error

func GetInputParametersFromTask

func GetInputParametersFromTask(task interface{}) ([]reflect.Type, error)

func GetOutputParametersFromTask

func GetOutputParametersFromTask(task interface{}) ([]reflect.Type, error)

func GetTaskNameFromFunction

func GetTaskNameFromFunction(f interface{}) (string, error)

func GetTaskNameFromInterface

func GetTaskNameFromInterface(task interface{}) (string, error)

func MustStartPostgresContainer

func MustStartPostgresContainer() (func(ctx context.Context, opts ...testcontainers.TerminateOption) error, string, error)

MustStartPostgresContainer starts a PostgreSQL container for testing purposes.

func SetTestDatabaseConfigEnvs

func SetTestDatabaseConfigEnvs(t *testing.T, port string)

Types

type Database

type Database struct {
	Name     string
	Logger   *log.Logger
	Instance *sql.DB
}

Database represents a service that interacts with a database.

func NewDatabase

func NewDatabase(name string, dbConfig *DatabaseConfiguration) *Database

func NewDatabaseWithDB

func NewDatabaseWithDB(name string, dbConnnection *sql.DB) *Database

func NewTestDatabase

func NewTestDatabase(config *DatabaseConfiguration) *Database

func (*Database) AddNotifyFunction

func (d *Database) AddNotifyFunction() error

func (*Database) CheckTableExistance

func (d *Database) CheckTableExistance(tableName string) (bool, error)

func (*Database) Close

func (d *Database) Close() error

Close closes the database connection. It logs a message indicating the disconnection from the specific database. If the connection is successfully closed, it returns nil. If an error occurs while closing the connection, it returns the error.

func (*Database) ConnectToDatabase

func (d *Database) ConnectToDatabase(dbConfig *DatabaseConfiguration, logger *log.Logger)

Internal function for the service creation to connect to a database. DatabaseConfiguration must contain uri, username and password.

func (*Database) CreateCombinedIndex

func (d *Database) CreateCombinedIndex(tableName string, columnName1 string, columnName2 string) error

func (*Database) CreateIndex

func (d *Database) CreateIndex(tableName string, columnName string) error

func (*Database) CreateIndexes

func (d *Database) CreateIndexes(tableName string, columnNames ...string) error

func (*Database) CreateUniqueCombinedIndex

func (d *Database) CreateUniqueCombinedIndex(tableName string, columnName1 string, columnName2 string) error

func (*Database) DropIndex

func (d *Database) DropIndex(tableName string, jsonMapKey string) error

func (*Database) Health

func (d *Database) Health() map[string]string

Health checks the health of the database connection by pinging the database. It returns a map with keys indicating various health statistics.

type DatabaseConfiguration

type DatabaseConfiguration struct {
	Host          string
	Port          string
	Database      string
	Username      string
	Password      string
	Schema        string
	WithTableDrop bool
}

func NewDatabaseConfiguration

func NewDatabaseConfiguration() (*DatabaseConfiguration, error)

func (*DatabaseConfiguration) DatabaseConnectionString

func (d *DatabaseConfiguration) DatabaseConnectionString() string

Jump to

Keyboard shortcuts

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