Help us shape the future of Go! Take the 2026 Go Developer Survey

backend

package
v0.4.3 Latest Latest
Warning

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

Go to latest
Published: Feb 22, 2025 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// DBString to format connection string to database for postgres
	DBString = "host=%s port=%s dbname=%s user=%s password=%s sslmode=%s"
	// DBKey to identify the configuration JSON key
	DBKey = "db"
)

Variables

This section is empty.

Functions

func PrepareDSN

func PrepareDSN(config JSONConfigurationDB) string

PrepareDSN to generate DB connection string

Types

type DBManager

type DBManager struct {
	Conn   *gorm.DB
	Config *JSONConfigurationDB
	DSN    string
}

DBManager have access to backend

func CreateDBManager

func CreateDBManager(dbConfig JSONConfigurationDB) (*DBManager, error)

CreateDBManager to initialize the DB struct

func CreateDBManagerFile

func CreateDBManagerFile(file string) (*DBManager, error)

CreateDBManager to initialize the DB struct

func (*DBManager) Check

func (db *DBManager) Check() error

Check to verify if connection is open and ready

func (*DBManager) GetDB

func (db *DBManager) GetDB() (*gorm.DB, error)

GetDB to get PostgreSQL DB using GORM

type JSONConfigurationDB

type JSONConfigurationDB struct {
	Host            string `json:"host"`
	Port            string `json:"port"`
	Name            string `json:"name"`
	Username        string `json:"username"`
	Password        string `json:"password"`
	SSLMode         string `json:"sslmode"`
	MaxIdleConns    int    `json:"maxIdleConns"`
	MaxOpenConns    int    `json:"maxOpenConns"`
	ConnMaxLifetime int    `json:"connMaxLifetime"`
	ConnRetry       int    `json:"connRetry"`
}

JSONConfigurationDB to hold all backend configuration values

func LoadConfiguration

func LoadConfiguration(file, key string) (JSONConfigurationDB, error)

LoadConfiguration to load the DB configuration file and assign to variables

Jump to

Keyboard shortcuts

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