summaryrefslogtreecommitdiff
path: root/packages/core/src/code_assist/server.ts
diff options
context:
space:
mode:
authorTommaso Sciortino <[email protected]>2025-06-16 13:24:42 -0700
committerGitHub <[email protected]>2025-06-16 13:24:42 -0700
commit11f524c1251e1f604c9b64a215b81512e23cd396 (patch)
tree22db8eb9ba1e5e54844d0358035575747daab743 /packages/core/src/code_assist/server.ts
parent42329e0258c0be0248f5d00f6e37ce8f31fbc1f5 (diff)
Propagate abort signal to ccpa generateContent. (#1106)
Diffstat (limited to 'packages/core/src/code_assist/server.ts')
-rw-r--r--packages/core/src/code_assist/server.ts11
1 files changed, 10 insertions, 1 deletions
diff --git a/packages/core/src/code_assist/server.ts b/packages/core/src/code_assist/server.ts
index fc3a0ce2..2c5d6db9 100644
--- a/packages/core/src/code_assist/server.ts
+++ b/packages/core/src/code_assist/server.ts
@@ -53,6 +53,7 @@ export class CodeAssistServer implements ContentGenerator {
const resps = await this.streamEndpoint<CodeAssistResponse>(
'streamGenerateContent',
toCodeAssistRequest(req, this.projectId),
+ req.config?.abortSignal,
);
return (async function* (): AsyncGenerator<GenerateContentResponse> {
for await (const resp of resps) {
@@ -67,6 +68,7 @@ export class CodeAssistServer implements ContentGenerator {
const resp = await this.callEndpoint<CodeAssistResponse>(
'generateContent',
toCodeAssistRequest(req, this.projectId),
+ req.config?.abortSignal,
);
return fromCodeAsistResponse(resp);
}
@@ -99,7 +101,11 @@ export class CodeAssistServer implements ContentGenerator {
throw Error();
}
- async callEndpoint<T>(method: string, req: object): Promise<T> {
+ async callEndpoint<T>(
+ method: string,
+ req: object,
+ signal?: AbortSignal,
+ ): Promise<T> {
const res = await this.auth.request({
url: `${CODE_ASSIST_ENDPOINT}/${CODE_ASSIST_API_VERSION}:${method}`,
method: 'POST',
@@ -109,6 +115,7 @@ export class CodeAssistServer implements ContentGenerator {
},
responseType: 'json',
body: JSON.stringify(req),
+ signal,
});
return res.data as T;
}
@@ -116,6 +123,7 @@ export class CodeAssistServer implements ContentGenerator {
async streamEndpoint<T>(
method: string,
req: object,
+ signal?: AbortSignal,
): Promise<AsyncGenerator<T>> {
const res = await this.auth.request({
url: `${CODE_ASSIST_ENDPOINT}/${CODE_ASSIST_API_VERSION}:${method}`,
@@ -129,6 +137,7 @@ export class CodeAssistServer implements ContentGenerator {
},
responseType: 'stream',
body: JSON.stringify(req),
+ signal,
});
return (async function* (): AsyncGenerator<T> {