Skip to content

Function: toContext()

toContext(input): Context

Wrap a Context (returned as-is) or AbortSignal (adapted) as an SDK Context.

ContextLike

Context

import { databricks } from "@dbx-tools/appkit";
import { getWorkspaceClient } from "@databricks/appkit";
await getWorkspaceClient({}).apiClient.request(
{ path: "/api/2.0/serving-endpoints", method: "GET", headers: new Headers(), raw: false },
databricks.toContext(request.signal),
);

toContext(controller, input?): Context

Derive an SDK Context from controller.signal, optionally tying input into the controller so the controller becomes the single cancellation source for downstream SDK calls:

  • AbortSignal: aborting it propagates into controller (and from there into every SDK call you pass the returned context to).
  • Context: its cancellationToken is tied into controller, and its other fields (logger, opName, rootClassName, rootFnName, opId) are preserved in the returned Context. The returned context’s cancellationToken is replaced with one backed by controller.signal.

The tie is one-way (parent -> child): aborting controller directly does NOT cancel input. So a request-level cancel (your loop’s try/finally { controller.abort() }) won’t tear down a caller-supplied AbortSignal it didn’t own.

AbortController

ContextLike

Context