diff options
Diffstat (limited to 'server/models/video/sql/shared/abstract-videos-query-builder.ts')
-rw-r--r-- | server/models/video/sql/shared/abstract-videos-query-builder.ts | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/server/models/video/sql/shared/abstract-videos-query-builder.ts b/server/models/video/sql/shared/abstract-videos-query-builder.ts new file mode 100644 index 000000000..01694e691 --- /dev/null +++ b/server/models/video/sql/shared/abstract-videos-query-builder.ts | |||
@@ -0,0 +1,22 @@ | |||
1 | import { QueryTypes, Sequelize, Transaction } from 'sequelize' | ||
2 | import { logger } from '@server/helpers/logger' | ||
3 | |||
4 | export class AbstractVideosQueryBuilder { | ||
5 | protected sequelize: Sequelize | ||
6 | |||
7 | protected query: string | ||
8 | protected replacements: any = {} | ||
9 | |||
10 | protected runQuery (transaction?: Transaction, nest?: boolean) { | ||
11 | logger.debug('Running videos query.', { query: this.query, replacements: this.replacements }) | ||
12 | |||
13 | const options = { | ||
14 | transaction, | ||
15 | replacements: this.replacements, | ||
16 | type: QueryTypes.SELECT as QueryTypes.SELECT, | ||
17 | nest | ||
18 | } | ||
19 | |||
20 | return this.sequelize.query<any>(this.query, options) | ||
21 | } | ||
22 | } | ||