MCPcopy Create free account
hub / github.com/dataform-co/dataform / createBigQueryClientProvider

Function createBigQueryClientProvider

cli/api/dbadapters/bigquery.ts:42–61  ·  view source on GitHub ↗
(
  credentials: dataform.IBigQuery
)

Source from the content-addressed store, hash-verified

40export type BigQueryClientProvider = (projectId?: string) => BigQuery;
41
42export function createBigQueryClientProvider(
43 credentials: dataform.IBigQuery
44): BigQueryClientProvider {
45 const clients = new Map<string, BigQuery>();
46 return (projectId?: string) => {
47 projectId = projectId || credentials.projectId;
48 if (!clients.has(projectId)) {
49 clients.set(
50 projectId,
51 new BigQuery({
52 projectId,
53 scopes: EXTRA_GOOGLE_SCOPES,
54 location: credentials.location,
55 credentials: credentials.credentials && JSON.parse(credentials.credentials)
56 })
57 );
58 }
59 return clients.get(projectId);
60 };
61}
62
63export class BigQueryDbAdapter implements IDbAdapter {
64 private bigQueryCredentials: dataform.IBigQuery;

Callers 1

constructorMethod · 0.85

Calls 3

getMethod · 0.80
setMethod · 0.45
parseMethod · 0.45

Tested by

no test coverage detected