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
}