app

package
v0.0.0-...-c524502 Latest Latest
Warning

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

Go to latest
Published: May 5, 2026 License: AGPL-3.0 Imports: 36 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var API_PAGE_SIZE int32 = int32(utils.Must(utils.GetEnvInt("API_PAGE_SIZE", int(api.LIMIT_DEFAULT))))
View Source
var BROKER_MODE = utils.GetEnv("BROKER_MODE", "opaque")
View Source
var CLIENT_DELAY = utils.GetEnv("CLIENT_DELAY", "0ms")
View Source
var DB_DATABASE = utils.GetEnv("DB_DATABASE", "crosslink")
View Source
var DB_EXPLAIN_ANALYZE, _ = utils.GetEnvBool("DB_EXPLAIN_ANALYZE", false)
View Source
var DB_HOST = utils.GetEnv("DB_HOST", "localhost")
View Source
var DB_MIGRATE, _ = utils.GetEnvBool("DB_MIGRATE", true)
View Source
var DB_PASSWORD = utils.GetEnv("DB_PASSWORD", "crosslink")
View Source
var DB_PORT = utils.GetEnv("DB_PORT", "25432")
View Source
var DB_PROVISION, _ = utils.GetEnvBool("DB_PROVISION", false)
View Source
var DB_SCHEMA = utils.GetEnv("DB_SCHEMA", "crosslink_broker")
View Source
var DB_TYPE = utils.GetEnv("DB_TYPE", "postgres")
View Source
var DB_USER = utils.GetEnv("DB_USER", "crosslink")
View Source
var DIRECTORY_ADAPTER = utils.GetEnv("DIRECTORY_ADAPTER", "mock")
View Source
var DIRECTORY_API_URL = utils.GetEnv("DIRECTORY_API_URL", "http://localhost:8081/directory/entries")
View Source
var ENABLE_JSON_LOG = utils.GetEnv("ENABLE_JSON_LOG", "false")
View Source
var HOLDINGS_ADAPTER = utils.GetEnv("HOLDINGS_ADAPTER", "mock")
View Source
var HOLDINGS_ISXN_LOOKUP, _ = utils.GetEnvBool("HOLDINGS_ISXN_LOOKUP", false)
View Source
var HOLDINGS_SRU_URL = common.GetEnvWithDeprecated("HOLDINGS_SRU_URL", "SRU_URL", "http://localhost:8081/sru")
View Source
var HTTP_PORT = utils.Must(utils.GetEnvInt("HTTP_PORT", 8081))
View Source
var LOG_LEVEL = utils.GetEnv("LOG_LEVEL", "INFO")
View Source
var MAX_MESSAGE_SIZE, _ = utils.GetEnvAny("MAX_MESSAGE_SIZE", int(100*1024), func(val string) (int, error) {
	v, err := humanize.ParseBytes(val)
	if err != nil && v > uint64(math.MaxInt) {
		appCtx.Logger().Error("MAX_MESSAGE_SIZE value is too large, using default")
		return 0, fmt.Errorf("value %s is too large", val)
	}
	return int(v), err
})
View Source
var MigrationsFolder = "file://migrations"
View Source
var SHUTDOWN_DELAY, _ = utils.GetEnvAny("SHUTDOWN_DELAY", time.Duration(15*float64(time.Second)), func(val string) (time.Duration, error) {
	d, err := time.ParseDuration(val)
	if err != nil {
		return 0, fmt.Errorf("invalid SHUTDOWN_DELAY value: %s", val)
	}
	return d, nil
})
View Source
var ServeMux *http.ServeMux
View Source
var TENANT_TO_SYMBOL = os.Getenv("TENANT_TO_SYMBOL")

Functions

func AddDefaultHandlers

func AddDefaultHandlers(eventBus events.EventBus, iso18626Client client.Iso18626Client,
	supplierLocator service.SupplierLocator, workflowManager service.WorkflowManager, iso18626Handler handler.Iso18626Handler,
	prActionService prservice.PatronRequestActionService, prApiHandler prapi.PatronRequestApiHandler, sseBroker *api.SseBroker)

func CreateEventBus

func CreateEventBus(eventRepo events.EventRepo) events.EventBus

func CreateEventRepo

func CreateEventRepo(dbPool *pgxpool.Pool) events.EventRepo

func HandleHealthz

func HandleHealthz(w http.ResponseWriter, r *http.Request)

func InitDbPool

func InitDbPool() (*pgxpool.Pool, error)

func Run

func Run(ctx context.Context) error

func RunDbUp

func RunDbUp() error

func StartEventBus

func StartEventBus(ctx context.Context, eventBus events.EventBus) error

func StartServer

func StartServer(ctx Context) error

Types

type Context

type Context struct {
	EventBus       events.EventBus
	IllRepo        ill_db.IllRepo
	EventRepo      events.EventRepo
	DirAdapter     adapter.DirectoryLookupAdapter
	PrRepo         pr_db.PrRepo
	TenantResolver *tenant.TenantResolver
	ApiHandler     api.ApiHandler
	PrApiHandler   prapi.PatronRequestApiHandler
	SseBroker      *api.SseBroker
	PsApiHandler   psapi.PullSlipApiHandler
}

func Init

func Init(ctx context.Context) (Context, error)

Jump to

Keyboard shortcuts

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