GelRefreshMaterializedView Class — drizzle-orm Architecture
Architecture documentation for the GelRefreshMaterializedView class in refresh-materialized-view.ts from the drizzle-orm codebase.
Entity Profile
Dependency Diagram
graph TD b2b0bea0_f40b_7c35_fa7c_ae8c5a89bd6c["GelRefreshMaterializedView"] 407d31e6_0821_26fb_d684_39fb0c14d1f7["refresh-materialized-view.ts"] b2b0bea0_f40b_7c35_fa7c_ae8c5a89bd6c -->|defined in| 407d31e6_0821_26fb_d684_39fb0c14d1f7 d3e846c6_84dc_a157_6469_b4a948cc284a["constructor()"] b2b0bea0_f40b_7c35_fa7c_ae8c5a89bd6c -->|method| d3e846c6_84dc_a157_6469_b4a948cc284a eac4161f_bb59_68fc_0fce_179b80370ead["concurrently()"] b2b0bea0_f40b_7c35_fa7c_ae8c5a89bd6c -->|method| eac4161f_bb59_68fc_0fce_179b80370ead ee4f955c_b945_4509_5872_a14e782f95f0["withNoData()"] b2b0bea0_f40b_7c35_fa7c_ae8c5a89bd6c -->|method| ee4f955c_b945_4509_5872_a14e782f95f0 3426a0ca_4fd4_75fa_6380_20c4cd256b3a["getSQL()"] b2b0bea0_f40b_7c35_fa7c_ae8c5a89bd6c -->|method| 3426a0ca_4fd4_75fa_6380_20c4cd256b3a 175d15e4_b2c6_e0cd_ca28_bc73c7e5f18d["toSQL()"] b2b0bea0_f40b_7c35_fa7c_ae8c5a89bd6c -->|method| 175d15e4_b2c6_e0cd_ca28_bc73c7e5f18d 09498e60_64eb_b831_2fb1_2177701ba084["_prepare()"] b2b0bea0_f40b_7c35_fa7c_ae8c5a89bd6c -->|method| 09498e60_64eb_b831_2fb1_2177701ba084 77d070d8_a117_7d68_2600_968192b708c7["prepare()"] b2b0bea0_f40b_7c35_fa7c_ae8c5a89bd6c -->|method| 77d070d8_a117_7d68_2600_968192b708c7
Relationship Graph
Source Code
drizzle-orm/src/gel-core/query-builders/refresh-materialized-view.ts lines 29–100
export class GelRefreshMaterializedView<TQueryResult extends GelQueryResultHKT>
extends QueryPromise<GelQueryResultKind<TQueryResult, never>>
implements RunnableQuery<GelQueryResultKind<TQueryResult, never>, 'gel'>, SQLWrapper
{
static override readonly [entityKind]: string = 'GelRefreshMaterializedView';
private config: {
view: GelMaterializedView;
concurrently?: boolean;
withNoData?: boolean;
};
constructor(
view: GelMaterializedView,
private session: GelSession,
private dialect: GelDialect,
) {
super();
this.config = { view };
}
concurrently(): this {
if (this.config.withNoData !== undefined) {
throw new Error('Cannot use concurrently and withNoData together');
}
this.config.concurrently = true;
return this;
}
withNoData(): this {
if (this.config.concurrently !== undefined) {
throw new Error('Cannot use concurrently and withNoData together');
}
this.config.withNoData = true;
return this;
}
/** @internal */
getSQL(): SQL {
return this.dialect.buildRefreshMaterializedViewQuery(this.config);
}
toSQL(): Query {
const { typings: _typings, ...rest } = this.dialect.sqlToQuery(this.getSQL());
return rest;
}
/** @internal */
_prepare(name?: string): GelPreparedQuery<
PreparedQueryConfig & {
execute: GelQueryResultKind<TQueryResult, never>;
}
> {
return tracer.startActiveSpan('drizzle.prepareQuery', () => {
return this.session.prepareQuery(this.dialect.sqlToQuery(this.getSQL()), undefined, name, true);
});
}
prepare(name: string): GelPreparedQuery<
PreparedQueryConfig & {
execute: GelQueryResultKind<TQueryResult, never>;
}
> {
return this._prepare(name);
}
execute: ReturnType<this['prepare']>['execute'] = (placeholderValues) => {
return tracer.startActiveSpan('drizzle.operation', () => {
return this._prepare().execute(placeholderValues);
});
};
}
Source
Frequently Asked Questions
What is the GelRefreshMaterializedView class?
GelRefreshMaterializedView is a class in the drizzle-orm codebase, defined in drizzle-orm/src/gel-core/query-builders/refresh-materialized-view.ts.
Where is GelRefreshMaterializedView defined?
GelRefreshMaterializedView is defined in drizzle-orm/src/gel-core/query-builders/refresh-materialized-view.ts at line 29.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free