MCPcopy Index your code
hub / github.com/Effect-TS/effect / waitForFinish

Function waitForFinish

packages/platform-node/src/internal/httpClient.ts:159–182  ·  view source on GitHub ↗
(nodeRequest: Http.ClientRequest, request: ClientRequest.HttpClientRequest)

Source from the content-addressed store, hash-verified

157 })
158
159const waitForFinish = (nodeRequest: Http.ClientRequest, request: ClientRequest.HttpClientRequest) =>
160 Effect.async<void, Error.RequestError>((resume) => {
161 function onError(cause: Error) {
162 resume(Effect.fail(
163 new Error.RequestError({
164 request,
165 reason: "Transport",
166 cause
167 })
168 ))
169 }
170 nodeRequest.once("error", onError)
171
172 function onFinish() {
173 nodeRequest.off("error", onError)
174 resume(Effect.void)
175 }
176 nodeRequest.once("finish", onFinish)
177
178 return Effect.sync(() => {
179 nodeRequest.off("error", onError)
180 nodeRequest.off("finish", onFinish)
181 })
182 })
183
184class ClientResponseImpl extends HttpIncomingMessageImpl<Error.ResponseError>
185 implements ClientResponse.HttpClientResponse

Callers 1

sendBodyFunction · 0.85

Calls 1

syncMethod · 0.80

Tested by

no test coverage detected