func()

in operationsbus/hooks.go [104:129]


func (h *HookedApiOperation) Run(ctx context.Context) error {
	logger := ctxlogger.GetLogger(ctx)
	var herr error
	logger.Info("Running BeforeRun hooks.")
	for _, hook := range h.OperationHooks {
		herr = hook.BeforeRun(ctx, h.Operation)
		if herr != nil {
			logger.Error("Something went wrong running a BeforeRun hook: " + herr.Error())
			return herr
		}
	}

	logger.Info("Running operation run.")
	err := h.Operation.Run(ctx)

	logger.Info("Running AfterRun hooks.")
	for _, hook := range h.OperationHooks {
		herr = hook.AfterRun(ctx, h.Operation, err)
		if herr != nil {
			logger.Error("Something went wrong running a AfterRun hook: " + herr.Error())
			return herr
		}
	}

	return err
}