const handler = Effect.gen(function* () {
const service = yield* MyService;
const req = yield* HttpServerRequest.HttpServerRequest;
const someImportantParameter = yield* MyService.getValue(/*Something out of my req*/);
return ExampleSchema.make({foo: "bar"});
});
// Falls down to MiddleWare
const MWLive = Layer.effect(
MWProtoType,
Effect.gen(function* () {
yield* Effect.logDebug("STARTUP: Creating MW Layer");
return HttpApp.appendPreResponseHandler((_req, res) => {
return Effect.gen(function* () {
yield* Effect.logDebug("Entering MWLive");
// HERE I WANT TO ACCESS someImportantParameter
return res.pipe(...);
})
})
)
const handler = Effect.gen(function* () {
const service = yield* MyService;
const req = yield* HttpServerRequest.HttpServerRequest;
const someImportantParameter = yield* MyService.getValue(/*Something out of my req*/);
return ExampleSchema.make({foo: "bar"});
});
// Falls down to MiddleWare
const MWLive = Layer.effect(
MWProtoType,
Effect.gen(function* () {
yield* Effect.logDebug("STARTUP: Creating MW Layer");
return HttpApp.appendPreResponseHandler((_req, res) => {
return Effect.gen(function* () {
yield* Effect.logDebug("Entering MWLive");
// HERE I WANT TO ACCESS someImportantParameter
return res.pipe(...);
})
})
)