@l-v-yonsama/multi-platform-database-drivers 0.1.9 → 0.1.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/README.md +6 -0
  2. package/built/src/db/drivers/AwsS3Driver.js +122 -421
  3. package/built/src/db/drivers/AwsS3Driver.js.map +1 -1
  4. package/built/src/db/drivers/BaseDriver.js +61 -67
  5. package/built/src/db/drivers/BaseDriver.js.map +1 -1
  6. package/built/src/db/drivers/MySQLDriver.js +187 -184
  7. package/built/src/db/drivers/MySQLDriver.js.map +1 -1
  8. package/built/src/db/drivers/PostgresDriver.js +173 -186
  9. package/built/src/db/drivers/PostgresDriver.js.map +1 -1
  10. package/built/src/db/drivers/RedisDriver.js +170 -160
  11. package/built/src/db/drivers/RedisDriver.js.map +1 -1
  12. package/built/src/db/resource/DbResource.js +0 -20
  13. package/built/src/db/resource/DbResource.js.map +1 -1
  14. package/built/src/db/resource/MultipleResultSetDataHolder.js +0 -1
  15. package/built/src/db/resource/MultipleResultSetDataHolder.js.map +1 -1
  16. package/built/src/db/resource/ResourceHelper.js +0 -1
  17. package/built/src/db/resource/ResourceHelper.js.map +1 -1
  18. package/built/src/db/resource/ResultSetDataHolder.d.ts +0 -11
  19. package/built/src/db/resource/ResultSetDataHolder.js +0 -42
  20. package/built/src/db/resource/ResultSetDataHolder.js.map +1 -1
  21. package/built/src/db/resource/types/GeneralColumnType.js +0 -20
  22. package/built/src/db/resource/types/GeneralColumnType.js.map +1 -1
  23. package/built/src/db/resource/types/MySQLColumnType.js +0 -7
  24. package/built/src/db/resource/types/MySQLColumnType.js.map +1 -1
  25. package/built/src/db/resource/types/PostgresColumnType.js +0 -2
  26. package/built/src/db/resource/types/PostgresColumnType.js.map +1 -1
  27. package/built/src/service/DBAccessService.js +262 -245
  28. package/built/src/service/DBAccessService.js.map +1 -1
  29. package/built/src/service/DBDriverResolver.js +13 -25
  30. package/built/src/service/DBDriverResolver.js.map +1 -1
  31. package/built/src/service/SQLService.js +0 -4
  32. package/built/src/service/SQLService.js.map +1 -1
  33. package/built/src/service/request/index.d.ts +0 -2
  34. package/package.json +1 -1
package/README.md CHANGED
@@ -5,3 +5,9 @@ docker-compose -f unit-test.yml build
5
5
 
6
6
  docker-compose -f unit-test.yml up -d
7
7
  ```
8
+
9
+ ```sh
10
+ yarn add @l-v-yonsama/multi-platform-database-drivers
11
+ OR
12
+ npm i @l-v-yonsama/multi-platform-database-drivers
13
+ ```
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- /* eslint-disable no-async-promise-executor */
4
- /* eslint-disable @typescript-eslint/no-unused-vars */
3
+ const tslib_1 = require("tslib");
5
4
  const BaseDriver_1 = require("./BaseDriver");
6
5
  const DbResource_1 = require("../resource/DbResource");
7
6
  const ResultSetDataHolder_1 = require("../resource/ResultSetDataHolder");
@@ -11,446 +10,148 @@ class AwsS3Driver extends BaseDriver_1.default {
11
10
  constructor(conRes) {
12
11
  super(conRes);
13
12
  }
14
- async connectSub() {
15
- this.config = {};
16
- this.config.region = 'us-west-1';
17
- if (this.conRes.region) {
18
- this.config.region = this.conRes.region;
19
- }
20
- this.config.credentials = {
21
- accessKeyId: this.conRes.user,
22
- secretAccessKey: this.conRes.password,
23
- };
24
- if (this.conRes.dbType === DBType_1.DBType.Minio) {
25
- this.config.endpoint = this.conRes.url;
26
- this.config.s3ForcePathStyle = 'true';
27
- }
28
- this.s3Client = new client_s3_1.S3Client(this.config);
29
- return this.test(false);
13
+ connectSub() {
14
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
15
+ this.config = {};
16
+ this.config.region = 'us-west-1';
17
+ if (this.conRes.region) {
18
+ this.config.region = this.conRes.region;
19
+ }
20
+ this.config.credentials = {
21
+ accessKeyId: this.conRes.user,
22
+ secretAccessKey: this.conRes.password,
23
+ };
24
+ if (this.conRes.dbType === DBType_1.DBType.Minio) {
25
+ this.config.endpoint = this.conRes.url;
26
+ this.config.s3ForcePathStyle = 'true';
27
+ }
28
+ this.s3Client = new client_s3_1.S3Client(this.config);
29
+ return this.test(false);
30
+ });
30
31
  }
31
- async test(with_connect = false) {
32
- let errorReason = '';
33
- if (with_connect) {
34
- errorReason = await this.connect();
35
- }
36
- if (this.s3Client) {
37
- try {
38
- const a = await this.s3Client.send(new client_s3_1.ListBucketsCommand({}));
32
+ test(with_connect = false) {
33
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
34
+ let errorReason = '';
35
+ if (with_connect) {
36
+ errorReason = yield this.connect();
39
37
  }
40
- catch (e) {
41
- console.error(e);
42
- errorReason = e.message;
38
+ if (this.s3Client) {
39
+ try {
40
+ const a = yield this.s3Client.send(new client_s3_1.ListBucketsCommand({}));
41
+ }
42
+ catch (e) {
43
+ console.error(e);
44
+ errorReason = e.message;
45
+ }
43
46
  }
44
- }
45
- if (with_connect) {
46
- await this.disconnect();
47
- }
48
- return errorReason;
47
+ if (with_connect) {
48
+ yield this.disconnect();
49
+ }
50
+ return errorReason;
51
+ });
49
52
  }
50
- // getSignedUrl(bucket: string, key: string, expire_minutes: number): string {
51
- // const signedUrlExpireSeconds = 60 * expire_minutes;
52
- // const url = this.s3.getSignedUrl('getObject', {
53
- // Bucket: bucket,
54
- // Key: key,
55
- // Expires: signedUrlExpireSeconds,
56
- // });
57
- // return url;
58
- // }
59
- async countTables(tables, options) {
60
- return new Array();
53
+ countTables(tables, options) {
54
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
55
+ return new Array();
56
+ });
61
57
  }
62
58
  abortSearch() {
63
59
  if (this.finder) {
64
60
  this.finder.abort();
65
61
  }
66
62
  }
67
- // async search(
68
- // bucket: string,
69
- // prefix = '',
70
- // options: {
71
- // date_modified_type?: DateModifiedType;
72
- // file_kind_type?: FileKindType;
73
- // name?: string;
74
- // progress_callback?: Function;
75
- // },
76
- // ): Promise<S3KeySearchResult> {
77
- // const ret: S3KeySearchResult = {
78
- // prefix,
79
- // list: new Array<DbS3Key>(),
80
- // ContinuationToken: '',
81
- // };
82
- // return new Promise<S3KeySearchResult>(async (resolve) => {
83
- // try {
84
- // this.finder = this.super_client.listObjects({
85
- // recursive: true,
86
- // s3Params: {
87
- // Bucket: bucket,
88
- // Delimiter: '',
89
- // Prefix: prefix,
90
- // },
91
- // });
92
- // this.finder.on('data', async function (data: any) {
93
- // if (data.Contents) {
94
- // for (let i = 0; i < data.Contents.length; i++) {
95
- // const content = data.Contents[i];
96
- // // {
97
- // // Key: 'HLS/tutorial/1M/abc.m3u8',
98
- // // LastModified: 2018-03-06T04:01:11.000Z,
99
- // // ETag: '"9bcb47a6acdf633f72e113f442c7ba44"',
100
- // // Size: 188,
101
- // // StorageClass: 'STANDARD'
102
- // // }
103
- // const k = content.Key;
104
- // if (k) {
105
- // let valid = true;
106
- // if (valid && options.name) {
107
- // valid = ('' + k).indexOf(options.name) >= 0;
108
- // }
109
- // if (valid && options.date_modified_type) {
110
- // valid = DateModifiedType.isValid(
111
- // options.date_modified_type,
112
- // content.LastModified,
113
- // );
114
- // }
115
- // if (valid && options.file_kind_type) {
116
- // valid = FileKindType.isValid(options.file_kind_type, k + '');
117
- // }
118
- // if (valid) {
119
- // const key = new DbS3Key(k);
120
- // key.updated = content.LastModified;
121
- // // console.log('content.LastModified=', content.LastModified, content.LastModified.getTime());
122
- // key.etag = content.ETag;
123
- // key.size = content.Size;
124
- // key.storage_class = content.StorageClass;
125
- // // output_file_path
126
- // const fResult = await FileUtil.getKeyFile(bucket, k);
127
- // if (fResult.ok) {
128
- // key.output_file_path = fResult.result;
129
- // if (
130
- // options.file_kind_type === FileKindType.Image &&
131
- // key.size &&
132
- // key.size < 100 * 1024
133
- // ) {
134
- // key.base64 = <string>(
135
- // await FileUtil.readFile(fResult.result, 'base64')
136
- // );
137
- // }
138
- // }
139
- // ret.list.push(key);
140
- // }
141
- // }
142
- // }
143
- // }
144
- // });
145
- // this.finder.on('progress', () => {
146
- // if (options.progress_callback) {
147
- // options.progress_callback(
148
- // this.finder.objectsFound,
149
- // this.finder.progressAmount,
150
- // this.finder.dirsFound,
151
- // ret.list.length,
152
- // );
153
- // }
154
- // });
155
- // this.finder.on('end', function () {
156
- // ret.list.sort((a, b) => b.updated.getTime() - a.updated.getTime());
157
- // setTimeout(() => resolve(ret), 500);
158
- // });
159
- // } catch (e) {
160
- // ret.error_message = e.message;
161
- // resolve(ret);
162
- // }
163
- // });
164
- // }
165
- // async agetKeys(
166
- // bucket: string,
167
- // count: number,
168
- // config: { prefix?: string; token?: string; scan_pattern?: string },
169
- // ): Promise<S3KeySearchResult> {
170
- // const opts: S3.ListObjectsV2Request = {
171
- // Bucket: bucket,
172
- // MaxKeys: count,
173
- // Delimiter: '/',
174
- // Prefix: '',
175
- // };
176
- // if (config) {
177
- // if (config.prefix && config.prefix !== '/') {
178
- // opts.Prefix = config.prefix;
179
- // }
180
- // if (config.scan_pattern) {
181
- // opts.Prefix += config.scan_pattern;
182
- // }
183
- // if (config.token) {
184
- // opts.ContinuationToken = config.token;
185
- // }
186
- // }
187
- // const ret: S3KeySearchResult = {
188
- // prefix: config.prefix,
189
- // list: new Array<DbS3Key>(),
190
- // ContinuationToken: '',
191
- // };
192
- // try {
193
- // await this.listAllKeys(opts, count, ret);
194
- // } catch (e) {
195
- // ret.error_message = e.message;
196
- // }
197
- // return ret;
198
- // }
199
- // async asyncS3ListObjectsV2(
200
- // opts: S3.ListObjectsV2Request,
201
- // ): Promise<S3.Types.ListObjectsV2Output> {
202
- // return new Promise<S3.Types.ListObjectsV2Output>((resolve) => {
203
- // this.s3.listObjectsV2(opts, (err, data) => {
204
- // resolve(data);
205
- // });
206
- // });
207
- // }
208
- // async listAllKeys(
209
- // opts: S3.ListObjectsV2Request,
210
- // count: number,
211
- // result: S3KeySearchResult,
212
- // ): Promise<void> {
213
- // try {
214
- // const data = await this.asyncS3ListObjectsV2(opts);
215
- // console.info(LOG_PREFIX, 'data=', data);
216
- // if (data.CommonPrefixes) {
217
- // data.CommonPrefixes.forEach((p: any) => {
218
- // let prefix = p.Prefix;
219
- // // if (opts.Prefix) {
220
- // // prefix = prefix.substring(opts.Prefix.length);
221
- // // }
222
- // const idx = prefix.lastIndexOf('/', prefix.length - 2);
223
- // if (idx > 0) {
224
- // prefix = prefix.substring(idx + 1);
225
- // }
226
- // const dir = new DbS3Key(prefix, true);
227
- // console.log(LOG_PREFIX, 'L306 push', dir);
228
- // result.list.push(dir);
229
- // });
230
- // }
231
- // if (data.Contents) {
232
- // for (let i = 0; i < data.Contents.length; i++) {
233
- // const content = data.Contents[i];
234
- // // {
235
- // // Key: 'HLS/tutorial/1M/abc.m3u8',
236
- // // LastModified: 2018-03-06T04:01:11.000Z,
237
- // // ETag: '"9bcb47a6acdf633f72e113f442c7ba44"',
238
- // // Size: 188,
239
- // // StorageClass: 'STANDARD'
240
- // // }
241
- // let k = content.Key;
242
- // if (opts.Prefix === k && k.endsWith('/')) {
243
- // continue;
244
- // }
245
- // if (k) {
246
- // const idx = k.lastIndexOf('/');
247
- // if (idx > 0 && idx < k.length - 1) {
248
- // k = k.substring(idx + 1);
249
- // }
250
- // const key = new DbS3Key(k);
251
- // key.updated = content.LastModified;
252
- // key.etag = content.ETag;
253
- // key.size = content.Size;
254
- // key.storage_class = content.StorageClass;
255
- // // output_file_path
256
- // const fResult = await FileUtil.getKeyFile(opts.Bucket, k);
257
- // if (fResult.ok) {
258
- // key.output_file_path = fResult.result;
259
- // }
260
- // console.log(LOG_PREFIX, 'L335 push', key);
261
- // result.list.push(key);
262
- // }
263
- // }
264
- // }
265
- // if (data.IsTruncated) {
266
- // const opts2: S3.ListObjectsV2Request = {
267
- // Bucket: opts.Bucket,
268
- // Delimiter: '/',
269
- // Prefix: opts.Prefix,
270
- // MaxKeys: count - result.list.length,
271
- // };
272
- // if (data.NextContinuationToken) {
273
- // opts2.ContinuationToken = data.NextContinuationToken;
274
- // result.ContinuationToken = data.NextContinuationToken;
275
- // }
276
- // await this.listAllKeys(opts2, count - result.list.length, result);
277
- // }
278
- // } catch (e) {
279
- // console.error('L98', e);
280
- // }
281
- // }
282
- // async getKeyRes(bucket: string, prefix: string): Promise<DbS3Key> {
283
- // let key = null;
284
- // try {
285
- // const opts: S3.ListObjectsV2Request = {
286
- // Bucket: bucket,
287
- // MaxKeys: 1,
288
- // Delimiter: '/',
289
- // Prefix: prefix,
290
- // };
291
- // const data = await this.asyncS3ListObjectsV2(opts);
292
- // if (data.Contents && data.Contents.length > 0) {
293
- // const content = data.Contents[0];
294
- // let k = content.Key;
295
- // if (k) {
296
- // const idx = k.lastIndexOf('/');
297
- // if (idx > 0 && idx < k.length - 1) {
298
- // k = k.substring(idx + 1);
299
- // }
300
- // key = new DbS3Key(k);
301
- // key.updated = content.LastModified;
302
- // key.etag = content.ETag;
303
- // key.size = content.Size;
304
- // key.storage_class = content.StorageClass;
305
- // // output_file_path
306
- // const fResult = await FileUtil.getKeyFile(opts.Bucket, k);
307
- // if (fResult.ok) {
308
- // key.output_file_path = fResult.result;
309
- // }
310
- // }
311
- // }
312
- // } catch (e) {
313
- // console.error('L98', e);
314
- // }
315
- // return key;
316
- // }
317
- // async putObject(
318
- // bucket: string,
319
- // key: string,
320
- // file_path: string,
321
- // ): Promise<string | undefined> {
322
- // const params: any = {
323
- // Bucket: bucket,
324
- // Key: key,
325
- // };
326
- // const v = fs.readFileSync(file_path);
327
- // params.Body = v;
328
- // return new Promise<string | undefined>((resolve, reject) => {
329
- // this.s3.putObject(params, (err, data) => {
330
- // resolve(data.ETag);
331
- // });
332
- // });
333
- // }
334
- async getInfomationSchemas(options) {
335
- if (!this.conRes) {
336
- return [];
337
- }
338
- const dbResources = new Array();
339
- const dbDatabase = new DbResource_1.DbDatabase('S3');
340
- dbResources.push(dbDatabase);
341
- try {
342
- const buckets = await this.s3Client.send(new client_s3_1.ListBucketsCommand({}));
343
- if (buckets.Buckets) {
344
- for (const bucket of buckets.Buckets) {
345
- const dbBucket = new DbResource_1.DbS3Bucket(bucket.Name, bucket.CreationDate);
346
- dbDatabase.addChild(dbBucket);
347
- }
63
+ getInfomationSchemas(options) {
64
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
65
+ if (!this.conRes) {
66
+ return [];
348
67
  }
349
- if (buckets.Owner) {
350
- const dbOwner = new DbResource_1.DbS3Owner(buckets.Owner.ID, buckets.Owner.DisplayName);
351
- dbDatabase.addChild(dbOwner);
68
+ const dbResources = new Array();
69
+ const dbDatabase = new DbResource_1.DbDatabase('S3');
70
+ dbResources.push(dbDatabase);
71
+ try {
72
+ const buckets = yield this.s3Client.send(new client_s3_1.ListBucketsCommand({}));
73
+ if (buckets.Buckets) {
74
+ for (const bucket of buckets.Buckets) {
75
+ const dbBucket = new DbResource_1.DbS3Bucket(bucket.Name, bucket.CreationDate);
76
+ dbDatabase.addChild(dbBucket);
77
+ }
78
+ }
79
+ if (buckets.Owner) {
80
+ const dbOwner = new DbResource_1.DbS3Owner(buckets.Owner.ID, buckets.Owner.DisplayName);
81
+ dbDatabase.addChild(dbOwner);
82
+ }
83
+ else {
84
+ }
352
85
  }
353
- else {
354
- // log.info('Owner nothing.')
86
+ catch (e) {
87
+ console.error(e);
355
88
  }
356
- }
357
- catch (e) {
358
- console.error(e);
359
- // reject(e);
360
- }
361
- return dbResources;
89
+ return dbResources;
90
+ });
362
91
  }
363
- async requestSql(sql, options) {
364
- return new ResultSetDataHolder_1.default([]);
92
+ requestSql(sql, options) {
93
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
94
+ return new ResultSetDataHolder_1.default([]);
95
+ });
365
96
  }
366
- // async asyncGetSignedUrl(
367
- // bucket: string,
368
- // key: string,
369
- // ex: number,
370
- // ): Promise<string> {
371
- // const LOG_PREFIX = `【S3:署名付きURL取得】<Bucket:${bucket}> [Key:${key}]`;
372
- // const signedUrlExpireSeconds = ex;
373
- // const url = this.s3.getSignedUrl('getObject', {
374
- // Bucket: bucket,
375
- // Key: key,
376
- // Expires: signedUrlExpireSeconds,
377
- // });
378
- // return url;
379
- // }
380
- // async asyncGet(bucket: string, key: string): Promise<string> {
381
- // const LOG_PREFIX = `【S3:取得】<Bucket:${bucket}> [Key:${key}]`;
382
- // const output_dir_path = await FileUtil.createKeyFolder(bucket, key);
383
- // return new Promise<string>((resolve, reject) => {
384
- // const params = {
385
- // Bucket: bucket,
386
- // Key: key,
387
- // };
388
- // const output_file_path = path.join(output_dir_path, path.basename(key));
389
- // const file = fs.createWriteStream(output_file_path);
390
- // this.s3
391
- // .getObject(params)
392
- // .createReadStream()
393
- // .on('end', () => {
394
- // return resolve(output_file_path);
395
- // })
396
- // .on('error', (error) => {
397
- // return reject(error);
398
- // })
399
- // .pipe(file);
400
- // });
401
- // }
402
- async createBucket({ bucket }) {
403
- await this.s3Client.send(new client_s3_1.CreateBucketCommand({ Bucket: bucket }));
97
+ createBucket({ bucket }) {
98
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
99
+ yield this.s3Client.send(new client_s3_1.CreateBucketCommand({ Bucket: bucket }));
100
+ });
404
101
  }
405
- async getValueByKey({ bucket, key, }) {
406
- // Get the object from the Amazon S3 bucket. It is returned as a ReadableStream.
407
- const data = await this.s3Client.send(new client_s3_1.GetObjectCommand({
408
- Bucket: bucket,
409
- Key: key,
410
- }));
411
- return data.Body.transformToString();
102
+ getValueByKey({ bucket, key, }) {
103
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
104
+ const data = yield this.s3Client.send(new client_s3_1.GetObjectCommand({
105
+ Bucket: bucket,
106
+ Key: key,
107
+ }));
108
+ return data.Body.transformToString();
109
+ });
412
110
  }
413
- async putObject({ bucket, key, body, }) {
414
- await this.s3Client.send(new client_s3_1.PutObjectCommand({
415
- Bucket: bucket,
416
- Key: key,
417
- Body: body,
418
- }));
111
+ putObject({ bucket, key, body, }) {
112
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
113
+ yield this.s3Client.send(new client_s3_1.PutObjectCommand({
114
+ Bucket: bucket,
115
+ Key: key,
116
+ Body: body,
117
+ }));
118
+ });
419
119
  }
420
- async removeBucket({ bucket }) {
421
- await this.removeAllObjects({ bucket });
422
- await this.s3Client.send(new client_s3_1.DeleteBucketCommand({ Bucket: bucket }));
120
+ removeBucket({ bucket }) {
121
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
122
+ yield this.removeAllObjects({ bucket });
123
+ yield this.s3Client.send(new client_s3_1.DeleteBucketCommand({ Bucket: bucket }));
124
+ });
423
125
  }
424
- async removeAllObjects({ bucket }) {
425
- let truncated = true;
426
- let pageMarker;
427
- const bucketParams = { Bucket: bucket };
428
- while (truncated) {
429
- const response = await this.s3Client.send(new client_s3_1.ListObjectsCommand(bucketParams));
430
- // return response; //For unit tests
431
- for (let i = 0; i < response.Contents.length; i++) {
432
- const item = response.Contents[i];
433
- const delR = await this.s3Client.send(new client_s3_1.DeleteObjectCommand({
434
- Bucket: bucket,
435
- Key: item.Key,
436
- }));
437
- }
438
- // Log the key of every item in the response to standard output.
439
- truncated = response.IsTruncated;
440
- // If truncated is true, assign the key of the last element in the response to the pageMarker variable.
441
- if (truncated) {
442
- pageMarker = response.Contents.slice(-1)[0].Key;
443
- // Assign the pageMarker value to bucketParams so that the next iteration starts from the new pageMarker.
444
- bucketParams.Marker = pageMarker;
126
+ removeAllObjects({ bucket }) {
127
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
128
+ let truncated = true;
129
+ let pageMarker;
130
+ const bucketParams = { Bucket: bucket };
131
+ while (truncated) {
132
+ const response = yield this.s3Client.send(new client_s3_1.ListObjectsCommand(bucketParams));
133
+ for (let i = 0; i < response.Contents.length; i++) {
134
+ const item = response.Contents[i];
135
+ const delR = yield this.s3Client.send(new client_s3_1.DeleteObjectCommand({
136
+ Bucket: bucket,
137
+ Key: item.Key,
138
+ }));
139
+ }
140
+ truncated = response.IsTruncated;
141
+ if (truncated) {
142
+ pageMarker = response.Contents.slice(-1)[0].Key;
143
+ bucketParams.Marker = pageMarker;
144
+ }
445
145
  }
446
- // At end of the list, response.truncated is false, and the function exits the while loop.
447
- }
146
+ });
448
147
  }
449
- async closeSub() {
450
- if (this.s3Client) {
451
- this.s3Client.destroy();
452
- }
453
- return '';
148
+ closeSub() {
149
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
150
+ if (this.s3Client) {
151
+ this.s3Client.destroy();
152
+ }
153
+ return '';
154
+ });
454
155
  }
455
156
  }
456
157
  exports.default = AwsS3Driver;
@@ -1 +1 @@
1
- {"version":3,"file":"AwsS3Driver.js","sourceRoot":"","sources":["../../../../src/db/drivers/AwsS3Driver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AwsS3Driver.js","sourceRoot":"","sources":["../../../../src/db/drivers/AwsS3Driver.ts"],"names":[],"mappings":"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"}