WIP: docs(pipeline): add design plan for PipelineExecutor class #3
Reference in New Issue
Block a user
No description provided.
Delete Branch "feature/pipeline-executor"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
🧩 Plan:
PipelineExecutor<TContext>
🎯 Ziel
Eine eigenständige, testbare Klasse zur Ausführung einer Middleware- und Handler-Pipeline, die:
next()
-Verhalten abbildetisMiddleware
,isHandler
)Response
zurückliefert🧩 Schnittstelle (API)
🪝 Hook-Schnittstelle (
IPipelineHooks
)name
istundefined
, wenn keine.name
am Handler/Middleware gesetzt istTraceManager
wird dieses Interface implementieren🛠️ Interne Aufgaben / Ablauf
run(...)
beginnt mit AufrufonPipelineStart(ctx)
performance.now()
)next()
-Kette ausonStepStart(name, ctx)
onStepEnd(name, ctx, duration)
onPipelineEnd(ctx, totalDuration)
cfg.decorateResponse(res, ctx)
geschicktcfg.httpErrorHandlers[500](ctx, error)
✅ Vorteile
HttpKernel
ist von Ausführungsdetails entkoppelt📦 Dateiname-Vorschlag
src/Core/PipelineExecutor.ts
odersrc/HttpKernel/PipelineExecutor.ts
View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.