Skip to content

Commit 6a78c61

Browse files
committed
refactor create builder
1 parent 61a4879 commit 6a78c61

File tree

3 files changed

+11
-9
lines changed

3 files changed

+11
-9
lines changed

packages/core/src/lib/data-query/executor.ts

+6-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import {
22
DataSource,
3+
IncomingHttpHeaders,
34
PrepareParameterFunc,
45
RequestParameter,
56
} from '@vulcan-sql/core/models';
@@ -12,7 +13,8 @@ export interface IExecutor {
1213
createBuilder(
1314
profileName: string,
1415
query: string,
15-
parameterizer: IParameterizer
16+
parameterizer: IParameterizer,
17+
headers?: IncomingHttpHeaders
1618
): Promise<IDataQueryBuilder>;
1719
prepare: PrepareParameterFunc;
1820
}
@@ -39,14 +41,15 @@ export class QueryExecutor implements IExecutor {
3941
public async createBuilder(
4042
profileName: string,
4143
query: string,
42-
parameterizer: IParameterizer
44+
parameterizer: IParameterizer,
45+
headers?: IncomingHttpHeaders
4346
) {
4447
return new DataQueryBuilder({
4548
statement: query,
4649
parameterizer,
4750
dataSource: this.dataSourceFactory(profileName)!,
4851
profileName,
49-
headers: {},
52+
headers: headers || {},
5053
});
5154
}
5255
}

packages/core/src/lib/template-engine/built-in-extensions/cache/cacheTagRunner.ts

+3-4
Original file line numberDiff line numberDiff line change
@@ -48,15 +48,14 @@ export class CacheTagRunner extends TagRunner {
4848
// Set the default vulcan created cache table schema, so we could query the cache table directly, not need user to type schema in the SQL.
4949
query = `set schema=${vulcanCacheSchemaName};`.concat('\n').concat(query);
5050
// Create the builder which access "vulcan.cache" data source for cache layer query
51+
const headers = metadata.getHeaders();
5152
const builder = await this.executor.createBuilder(
5253
cacheProfileName,
5354
query,
54-
parameterizer
55+
parameterizer,
56+
headers
5557
);
5658
context.setVariable(name, builder);
57-
// pass header to builder
58-
const headers = metadata.getHeaders();
59-
if (headers) builder.setHeaders(headers);
6059

6160
// Set parameter back for upstream usage
6261
context.setVariable(PARAMETERIZER_VAR_NAME, parentParameterizer);

packages/core/src/lib/template-engine/built-in-extensions/query-builder/reqTagRunner.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -57,9 +57,9 @@ export class ReqTagRunner extends TagRunner {
5757
builder = await this.executor.createBuilder(
5858
profileName,
5959
query,
60-
parameterizer
60+
parameterizer,
61+
headers
6162
);
62-
if (headers) builder.setHeaders(headers);
6363
context.setVariable(name, builder);
6464
}
6565

0 commit comments

Comments
 (0)