bootstrap

package
v0.0.0-...-ecc908a Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CloseMongoConnection

func CloseMongoConnection() error

func CloseMysqlConnection

func CloseMysqlConnection(db *mysql.DB) error

func ClosePostgresConnection

func ClosePostgresConnection(db *pq.DB) error

func CloseRedisClient

func CloseRedisClient(db *redis.DB) error

func ConfigLoad

func ConfigLoad(option configs.Option) (*configs.Config, error)

func NewCollector

func NewCollector(
	config otelcollector.Config,
	appInfo configs.Application,
	serverInfo configs.HTTPServer,
) (contract.Collector, error)

func NewInMemory

func NewInMemory() *inmemory.DB

func NewLogger

func NewLogger(configApp configs.Application, configLogger jsonfilelogger.Config) contract.Logger

func NewMongoConnection

func NewMongoConnection()

func NewMysqlConnection

func NewMysqlConnection(c mysql.Config) (*mysql.DB, error)

func NewPostgresConnection

func NewPostgresConnection(c pq.Config) (*pq.DB, error)

func NewRedisClient

func NewRedisClient(c redis.Config) (*redis.DB, error)

func NewTracer

func NewTracer(
	config oteltracer.Config,
	appInfo configs.Application,
	serverInfo configs.HTTPServer,
) (contract.Tracer, error)

func ShutdownCollector

func ShutdownCollector(ctx context.Context, collector contract.Collector) error

func ShutdownTracer

func ShutdownTracer(ctx context.Context, trc contract.Tracer) error

Types

type Application

type Application struct {
	Config    *configs.Config
	Logger    contract.Logger
	Trc       contract.Tracer
	Collector contract.Collector
	Cache     Cache
	DB        DB
	Usecase   *Usecase
}

func App

func App(config *configs.Config) (*Application, error)

func (*Application) CloseMysqlConnection

func (a *Application) CloseMysqlConnection() error

func (*Application) CloseRedisClientConnection

func (a *Application) CloseRedisClientConnection() error

func (*Application) ShutdownCollector

func (a *Application) ShutdownCollector(ctx context.Context) error

func (*Application) ShutdownTracer

func (a *Application) ShutdownTracer(ctx context.Context) error

type Cache

type Cache struct {
	InMem *inmemory.DB
	Redis *redis.DB
}

type DB

type DB struct {
	MySQL    *mysql.DB
	Postgres *pq.DB
}

type Usecase

type Usecase struct {
	AuthIntr *authusecase.Interactor
	UserIntr *userusecase.Interactor
	TaskIntr *taskusecase.Interactor
}

func NewUsecase

func NewUsecase(
	config *configs.Config,
	_ contract.Logger,
	trc contract.Tracer,
	cache Cache,
	db DB,
) *Usecase

Jump to

Keyboard shortcuts

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