verteilen-core 1.4.3 → 1.4.4
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.
- package/dist/computed.d.ts +1 -0
- package/dist/computed.js +2 -1
- package/dist/server/io.d.ts +0 -3
- package/dist/server/io.js +1 -68
- package/dist/server/io2.d.ts +5 -0
- package/dist/server/io2.js +72 -0
- package/package.json +1 -1
- package/src/computed.ts +5 -1
- package/src/server/io.ts +0 -81
- package/src/server/io2.ts +85 -0
package/dist/computed.d.ts
CHANGED
|
@@ -11,3 +11,4 @@ export * as ClientParameter from './client/database';
|
|
|
11
11
|
export * as ClientResource from './client/resource';
|
|
12
12
|
export * as ClientShell from './client/shell';
|
|
13
13
|
export * as Execute_WebhookServerManager from './script/webhook_server_manager';
|
|
14
|
+
export * as ServerIO from './server/io2';
|
package/dist/computed.js
CHANGED
|
@@ -33,7 +33,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.Execute_WebhookServerManager = exports.ClientShell = exports.ClientResource = exports.ClientParameter = exports.ClientOS = exports.ClientJavascript = exports.ClientHttp = exports.ClientJobParameter = exports.ClientJobExecute = exports.ClientExecute = exports.ClientCluster = exports.Client = exports.ClientAnalysis = void 0;
|
|
36
|
+
exports.ServerIO = exports.Execute_WebhookServerManager = exports.ClientShell = exports.ClientResource = exports.ClientParameter = exports.ClientOS = exports.ClientJavascript = exports.ClientHttp = exports.ClientJobParameter = exports.ClientJobExecute = exports.ClientExecute = exports.ClientCluster = exports.Client = exports.ClientAnalysis = void 0;
|
|
37
37
|
exports.ClientAnalysis = __importStar(require("./client/analysis"));
|
|
38
38
|
exports.Client = __importStar(require("./client/client"));
|
|
39
39
|
exports.ClientCluster = __importStar(require("./client/cluster"));
|
|
@@ -47,3 +47,4 @@ exports.ClientParameter = __importStar(require("./client/database"));
|
|
|
47
47
|
exports.ClientResource = __importStar(require("./client/resource"));
|
|
48
48
|
exports.ClientShell = __importStar(require("./client/shell"));
|
|
49
49
|
exports.Execute_WebhookServerManager = __importStar(require("./script/webhook_server_manager"));
|
|
50
|
+
exports.ServerIO = __importStar(require("./server/io2"));
|
package/dist/server/io.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { MongoClient } from "mongodb";
|
|
2
1
|
import { Project, RecordType, Database, UserProfile, Library, ExecutionLog, Node, Task, Job } from "../interface";
|
|
3
2
|
export interface MemoryData {
|
|
4
3
|
projects: Array<Project>;
|
|
@@ -43,7 +42,5 @@ export interface RecordIOBase {
|
|
|
43
42
|
}
|
|
44
43
|
export declare const _CreateRecordMemoryLoader: (loader: MemoryData, type: RecordType) => RecordIOLoader;
|
|
45
44
|
export declare const _CreateRecordIOLoader: (loader: RecordIOBase, memory: MemoryData, type: RecordType, folder: string, ext?: string) => RecordIOLoader;
|
|
46
|
-
export declare const _CreateRecordMongoLoader: (loader: MongoClient, memory: MemoryData, type: RecordType, db: string, collection: string) => RecordIOLoader;
|
|
47
45
|
export declare const CreateRecordMemoryLoader: (loader: MemoryData) => RecordLoader;
|
|
48
46
|
export declare const CreateRecordIOLoader: (loader: RecordIOBase, memory: MemoryData) => RecordLoader;
|
|
49
|
-
export declare const CreateRecordMongoLoader: (url: string, memory: MemoryData) => RecordLoader;
|
package/dist/server/io.js
CHANGED
|
@@ -3,8 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
7
|
-
const mongodb_1 = require("mongodb");
|
|
6
|
+
exports.CreateRecordIOLoader = exports.CreateRecordMemoryLoader = exports._CreateRecordIOLoader = exports._CreateRecordMemoryLoader = void 0;
|
|
8
7
|
const interface_1 = require("../interface");
|
|
9
8
|
const jsonwebtoken_1 = __importDefault(require("jsonwebtoken"));
|
|
10
9
|
const permissionHelper = (x, uuid) => {
|
|
@@ -367,58 +366,6 @@ const _CreateRecordIOLoader = (loader, memory, type, folder, ext = ".json") => {
|
|
|
367
366
|
};
|
|
368
367
|
};
|
|
369
368
|
exports._CreateRecordIOLoader = _CreateRecordIOLoader;
|
|
370
|
-
const _CreateRecordMongoLoader = (loader, memory, type, db, collection) => {
|
|
371
|
-
const mem = (0, exports._CreateRecordMemoryLoader)(memory, type);
|
|
372
|
-
return {
|
|
373
|
-
load_all: async (cache, token) => {
|
|
374
|
-
if (cache)
|
|
375
|
-
return mem.load_all(cache, token);
|
|
376
|
-
const database = loader.db(db);
|
|
377
|
-
const col = database.collection(collection);
|
|
378
|
-
const data = await col.find({}).toArray();
|
|
379
|
-
const exec = data.map(x => {
|
|
380
|
-
return mem.save(x.uuid, JSON.stringify(x), token);
|
|
381
|
-
});
|
|
382
|
-
await Promise.all(exec);
|
|
383
|
-
return mem.load_all(cache, token);
|
|
384
|
-
},
|
|
385
|
-
delete_all: async (token) => {
|
|
386
|
-
const c = await mem.delete_all(token);
|
|
387
|
-
const database = loader.db(db);
|
|
388
|
-
const col = database.collection(collection);
|
|
389
|
-
const exec = c.map(x => {
|
|
390
|
-
return col.deleteOne({ uuid: x });
|
|
391
|
-
});
|
|
392
|
-
await Promise.all(exec);
|
|
393
|
-
return c;
|
|
394
|
-
},
|
|
395
|
-
list_all: async (token) => {
|
|
396
|
-
return mem.list_all(token);
|
|
397
|
-
},
|
|
398
|
-
save: async (uuid, data, token) => {
|
|
399
|
-
const r = await mem.save(uuid, data, token);
|
|
400
|
-
if (!r)
|
|
401
|
-
return false;
|
|
402
|
-
const database = loader.db(db);
|
|
403
|
-
const col = database.collection(collection);
|
|
404
|
-
col.findOneAndUpdate({ uuid: uuid }, JSON.parse(data));
|
|
405
|
-
return true;
|
|
406
|
-
},
|
|
407
|
-
load: async (uuid, token) => {
|
|
408
|
-
return mem.load(uuid, token);
|
|
409
|
-
},
|
|
410
|
-
delete: async (uuid, token) => {
|
|
411
|
-
const r = await mem.delete(uuid, token);
|
|
412
|
-
if (!r)
|
|
413
|
-
return false;
|
|
414
|
-
const database = loader.db(db);
|
|
415
|
-
const col = database.collection(collection);
|
|
416
|
-
await col.deleteOne({ uuid: uuid });
|
|
417
|
-
return true;
|
|
418
|
-
}
|
|
419
|
-
};
|
|
420
|
-
};
|
|
421
|
-
exports._CreateRecordMongoLoader = _CreateRecordMongoLoader;
|
|
422
369
|
const CreateRecordMemoryLoader = (loader) => {
|
|
423
370
|
return {
|
|
424
371
|
project: (0, exports._CreateRecordMemoryLoader)(loader, interface_1.RecordType.PROJECT),
|
|
@@ -445,17 +392,3 @@ const CreateRecordIOLoader = (loader, memory) => {
|
|
|
445
392
|
};
|
|
446
393
|
};
|
|
447
394
|
exports.CreateRecordIOLoader = CreateRecordIOLoader;
|
|
448
|
-
const CreateRecordMongoLoader = (url, memory) => {
|
|
449
|
-
const loader = new mongodb_1.MongoClient(url);
|
|
450
|
-
return {
|
|
451
|
-
project: (0, exports._CreateRecordMongoLoader)(loader, memory, interface_1.RecordType.PROJECT, interface_1.MONGODB_NAME, "project"),
|
|
452
|
-
task: (0, exports._CreateRecordMongoLoader)(loader, memory, interface_1.RecordType.TASK, interface_1.MONGODB_NAME, "task"),
|
|
453
|
-
job: (0, exports._CreateRecordMongoLoader)(loader, memory, interface_1.RecordType.JOB, interface_1.MONGODB_NAME, "job"),
|
|
454
|
-
database: (0, exports._CreateRecordMongoLoader)(loader, memory, interface_1.RecordType.DATABASE, interface_1.MONGODB_NAME, "database"),
|
|
455
|
-
node: (0, exports._CreateRecordMongoLoader)(loader, memory, interface_1.RecordType.NODE, interface_1.MONGODB_NAME, "node"),
|
|
456
|
-
log: (0, exports._CreateRecordMongoLoader)(loader, memory, interface_1.RecordType.LOG, interface_1.MONGODB_NAME, "log"),
|
|
457
|
-
lib: (0, exports._CreateRecordMongoLoader)(loader, memory, interface_1.RecordType.LIB, interface_1.MONGODB_NAME, "lib"),
|
|
458
|
-
user: (0, exports._CreateRecordMongoLoader)(loader, memory, interface_1.RecordType.USER, interface_1.MONGODB_NAME, "user"),
|
|
459
|
-
};
|
|
460
|
-
};
|
|
461
|
-
exports.CreateRecordMongoLoader = CreateRecordMongoLoader;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { MongoClient } from "mongodb";
|
|
2
|
+
import { RecordType } from "../interface";
|
|
3
|
+
import { MemoryData, RecordIOLoader, RecordLoader } from "./io";
|
|
4
|
+
export declare const _CreateRecordMongoLoader: (loader: MongoClient, memory: MemoryData, type: RecordType, db: string, collection: string) => RecordIOLoader;
|
|
5
|
+
export declare const CreateRecordMongoLoader: (url: string, memory: MemoryData) => RecordLoader;
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CreateRecordMongoLoader = exports._CreateRecordMongoLoader = void 0;
|
|
4
|
+
const mongodb_1 = require("mongodb");
|
|
5
|
+
const interface_1 = require("../interface");
|
|
6
|
+
const io_1 = require("./io");
|
|
7
|
+
const _CreateRecordMongoLoader = (loader, memory, type, db, collection) => {
|
|
8
|
+
const mem = (0, io_1._CreateRecordMemoryLoader)(memory, type);
|
|
9
|
+
return {
|
|
10
|
+
load_all: async (cache, token) => {
|
|
11
|
+
if (cache)
|
|
12
|
+
return mem.load_all(cache, token);
|
|
13
|
+
const database = loader.db(db);
|
|
14
|
+
const col = database.collection(collection);
|
|
15
|
+
const data = await col.find({}).toArray();
|
|
16
|
+
const exec = data.map(x => {
|
|
17
|
+
return mem.save(x.uuid, JSON.stringify(x), token);
|
|
18
|
+
});
|
|
19
|
+
await Promise.all(exec);
|
|
20
|
+
return mem.load_all(cache, token);
|
|
21
|
+
},
|
|
22
|
+
delete_all: async (token) => {
|
|
23
|
+
const c = await mem.delete_all(token);
|
|
24
|
+
const database = loader.db(db);
|
|
25
|
+
const col = database.collection(collection);
|
|
26
|
+
const exec = c.map(x => {
|
|
27
|
+
return col.deleteOne({ uuid: x });
|
|
28
|
+
});
|
|
29
|
+
await Promise.all(exec);
|
|
30
|
+
return c;
|
|
31
|
+
},
|
|
32
|
+
list_all: async (token) => {
|
|
33
|
+
return mem.list_all(token);
|
|
34
|
+
},
|
|
35
|
+
save: async (uuid, data, token) => {
|
|
36
|
+
const r = await mem.save(uuid, data, token);
|
|
37
|
+
if (!r)
|
|
38
|
+
return false;
|
|
39
|
+
const database = loader.db(db);
|
|
40
|
+
const col = database.collection(collection);
|
|
41
|
+
col.findOneAndUpdate({ uuid: uuid }, JSON.parse(data));
|
|
42
|
+
return true;
|
|
43
|
+
},
|
|
44
|
+
load: async (uuid, token) => {
|
|
45
|
+
return mem.load(uuid, token);
|
|
46
|
+
},
|
|
47
|
+
delete: async (uuid, token) => {
|
|
48
|
+
const r = await mem.delete(uuid, token);
|
|
49
|
+
if (!r)
|
|
50
|
+
return false;
|
|
51
|
+
const database = loader.db(db);
|
|
52
|
+
const col = database.collection(collection);
|
|
53
|
+
await col.deleteOne({ uuid: uuid });
|
|
54
|
+
return true;
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
};
|
|
58
|
+
exports._CreateRecordMongoLoader = _CreateRecordMongoLoader;
|
|
59
|
+
const CreateRecordMongoLoader = (url, memory) => {
|
|
60
|
+
const loader = new mongodb_1.MongoClient(url);
|
|
61
|
+
return {
|
|
62
|
+
project: (0, exports._CreateRecordMongoLoader)(loader, memory, interface_1.RecordType.PROJECT, interface_1.MONGODB_NAME, "project"),
|
|
63
|
+
task: (0, exports._CreateRecordMongoLoader)(loader, memory, interface_1.RecordType.TASK, interface_1.MONGODB_NAME, "task"),
|
|
64
|
+
job: (0, exports._CreateRecordMongoLoader)(loader, memory, interface_1.RecordType.JOB, interface_1.MONGODB_NAME, "job"),
|
|
65
|
+
database: (0, exports._CreateRecordMongoLoader)(loader, memory, interface_1.RecordType.DATABASE, interface_1.MONGODB_NAME, "database"),
|
|
66
|
+
node: (0, exports._CreateRecordMongoLoader)(loader, memory, interface_1.RecordType.NODE, interface_1.MONGODB_NAME, "node"),
|
|
67
|
+
log: (0, exports._CreateRecordMongoLoader)(loader, memory, interface_1.RecordType.LOG, interface_1.MONGODB_NAME, "log"),
|
|
68
|
+
lib: (0, exports._CreateRecordMongoLoader)(loader, memory, interface_1.RecordType.LIB, interface_1.MONGODB_NAME, "lib"),
|
|
69
|
+
user: (0, exports._CreateRecordMongoLoader)(loader, memory, interface_1.RecordType.USER, interface_1.MONGODB_NAME, "user"),
|
|
70
|
+
};
|
|
71
|
+
};
|
|
72
|
+
exports.CreateRecordMongoLoader = CreateRecordMongoLoader;
|
package/package.json
CHANGED
package/src/computed.ts
CHANGED
|
@@ -16,4 +16,8 @@ export * as ClientShell from './client/shell'
|
|
|
16
16
|
/**
|
|
17
17
|
* Scripts
|
|
18
18
|
*/
|
|
19
|
-
export * as Execute_WebhookServerManager from './script/webhook_server_manager'
|
|
19
|
+
export * as Execute_WebhookServerManager from './script/webhook_server_manager'
|
|
20
|
+
/**
|
|
21
|
+
* Server
|
|
22
|
+
*/
|
|
23
|
+
export * as ServerIO from './server/io2'
|
package/src/server/io.ts
CHANGED
|
@@ -462,68 +462,6 @@ export const _CreateRecordIOLoader = (loader:RecordIOBase, memory:MemoryData, ty
|
|
|
462
462
|
}
|
|
463
463
|
}
|
|
464
464
|
}
|
|
465
|
-
/**
|
|
466
|
-
* **Create the interface for record mongoDB storage**\
|
|
467
|
-
* @param loader MongoDB loader client
|
|
468
|
-
* @param memory Memory loader interface
|
|
469
|
-
* @param type Type of storage
|
|
470
|
-
* @param db Database name
|
|
471
|
-
* @param collection Collection from database
|
|
472
|
-
* @returns Interface for calling
|
|
473
|
-
*/
|
|
474
|
-
export const _CreateRecordMongoLoader = (loader:MongoClient, memory:MemoryData, type:RecordType, db:string, collection:string):RecordIOLoader => {
|
|
475
|
-
const mem = _CreateRecordMemoryLoader(memory, type)
|
|
476
|
-
return {
|
|
477
|
-
load_all: async (cache: boolean, token?: string): Promise<Array<string>> => {
|
|
478
|
-
if(cache) return mem.load_all(cache, token)
|
|
479
|
-
const database = loader.db(db)
|
|
480
|
-
const col = database.collection(collection)
|
|
481
|
-
const data = await col.find({}).toArray()
|
|
482
|
-
const exec = data.map(x => {
|
|
483
|
-
return mem.save(x.uuid, JSON.stringify(x), token)
|
|
484
|
-
})
|
|
485
|
-
await Promise.all(exec)
|
|
486
|
-
return mem.load_all(cache, token)
|
|
487
|
-
},
|
|
488
|
-
delete_all: async (token?: string): Promise<Array<string>> => {
|
|
489
|
-
// Memory action
|
|
490
|
-
const c = await mem.delete_all(token)
|
|
491
|
-
const database = loader.db(db)
|
|
492
|
-
const col = database.collection(collection)
|
|
493
|
-
// Get the removed uuids and delete from disk
|
|
494
|
-
const exec = c.map(x => {
|
|
495
|
-
return col.deleteOne({ uuid: x })
|
|
496
|
-
})
|
|
497
|
-
await Promise.all(exec)
|
|
498
|
-
return c
|
|
499
|
-
},
|
|
500
|
-
list_all: async (token?: string): Promise<Array<string>> => {
|
|
501
|
-
return mem.list_all(token)
|
|
502
|
-
},
|
|
503
|
-
save: async (uuid: string, data: string, token?: string): Promise<boolean> => {
|
|
504
|
-
const r = await mem.save(uuid, data, token)
|
|
505
|
-
if(!r) return false
|
|
506
|
-
|
|
507
|
-
const database = loader.db(db)
|
|
508
|
-
const col = database.collection(collection)
|
|
509
|
-
col.findOneAndUpdate({ uuid: uuid }, JSON.parse(data))
|
|
510
|
-
return true
|
|
511
|
-
},
|
|
512
|
-
load: async (uuid: string, token?: string): Promise<string> => {
|
|
513
|
-
return mem.load(uuid, token)
|
|
514
|
-
},
|
|
515
|
-
delete: async (uuid: string, token?: string): Promise<boolean> => {
|
|
516
|
-
const r = await mem.delete(uuid, token)
|
|
517
|
-
if(!r) return false
|
|
518
|
-
|
|
519
|
-
const database = loader.db(db)
|
|
520
|
-
const col = database.collection(collection)
|
|
521
|
-
await col.deleteOne({ uuid: uuid })
|
|
522
|
-
return true
|
|
523
|
-
}
|
|
524
|
-
}
|
|
525
|
-
}
|
|
526
|
-
|
|
527
465
|
|
|
528
466
|
/**
|
|
529
467
|
* **Create the interface for record memory storage**\
|
|
@@ -561,23 +499,4 @@ export const CreateRecordIOLoader = (loader:RecordIOBase, memory:MemoryData):Rec
|
|
|
561
499
|
lib: _CreateRecordIOLoader(loader, memory, RecordType.LIB, "lib"),
|
|
562
500
|
user: _CreateRecordIOLoader(loader, memory, RecordType.USER, "user"),
|
|
563
501
|
}
|
|
564
|
-
}
|
|
565
|
-
/**
|
|
566
|
-
* **Create the interface for record mongoDB storage**\
|
|
567
|
-
* @param url MongoDB URL
|
|
568
|
-
* @param memory loader memory loader interface
|
|
569
|
-
* @returns
|
|
570
|
-
*/
|
|
571
|
-
export const CreateRecordMongoLoader = (url:string, memory:MemoryData):RecordLoader => {
|
|
572
|
-
const loader:MongoClient = new MongoClient(url)
|
|
573
|
-
return {
|
|
574
|
-
project: _CreateRecordMongoLoader(loader, memory, RecordType.PROJECT, MONGODB_NAME, "project"),
|
|
575
|
-
task: _CreateRecordMongoLoader(loader, memory, RecordType.TASK, MONGODB_NAME, "task"),
|
|
576
|
-
job: _CreateRecordMongoLoader(loader, memory, RecordType.JOB, MONGODB_NAME, "job"),
|
|
577
|
-
database: _CreateRecordMongoLoader(loader, memory, RecordType.DATABASE, MONGODB_NAME, "database"),
|
|
578
|
-
node: _CreateRecordMongoLoader(loader, memory, RecordType.NODE, MONGODB_NAME, "node"),
|
|
579
|
-
log: _CreateRecordMongoLoader(loader, memory, RecordType.LOG, MONGODB_NAME, "log"),
|
|
580
|
-
lib: _CreateRecordMongoLoader(loader, memory, RecordType.LIB, MONGODB_NAME, "lib"),
|
|
581
|
-
user: _CreateRecordMongoLoader(loader, memory, RecordType.USER, MONGODB_NAME, "user"),
|
|
582
|
-
}
|
|
583
502
|
}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { MongoClient } from "mongodb"
|
|
2
|
+
import { RecordType, MONGODB_NAME } from "../interface"
|
|
3
|
+
import { MemoryData, RecordIOLoader, _CreateRecordMemoryLoader, RecordLoader } from "./io"
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* **Create the interface for record mongoDB storage**\
|
|
7
|
+
* @param loader MongoDB loader client
|
|
8
|
+
* @param memory Memory loader interface
|
|
9
|
+
* @param type Type of storage
|
|
10
|
+
* @param db Database name
|
|
11
|
+
* @param collection Collection from database
|
|
12
|
+
* @returns Interface for calling
|
|
13
|
+
*/
|
|
14
|
+
export const _CreateRecordMongoLoader = (loader:MongoClient, memory:MemoryData, type:RecordType, db:string, collection:string):RecordIOLoader => {
|
|
15
|
+
const mem = _CreateRecordMemoryLoader(memory, type)
|
|
16
|
+
return {
|
|
17
|
+
load_all: async (cache: boolean, token?: string): Promise<Array<string>> => {
|
|
18
|
+
if(cache) return mem.load_all(cache, token)
|
|
19
|
+
const database = loader.db(db)
|
|
20
|
+
const col = database.collection(collection)
|
|
21
|
+
const data = await col.find({}).toArray()
|
|
22
|
+
const exec = data.map(x => {
|
|
23
|
+
return mem.save(x.uuid, JSON.stringify(x), token)
|
|
24
|
+
})
|
|
25
|
+
await Promise.all(exec)
|
|
26
|
+
return mem.load_all(cache, token)
|
|
27
|
+
},
|
|
28
|
+
delete_all: async (token?: string): Promise<Array<string>> => {
|
|
29
|
+
// Memory action
|
|
30
|
+
const c = await mem.delete_all(token)
|
|
31
|
+
const database = loader.db(db)
|
|
32
|
+
const col = database.collection(collection)
|
|
33
|
+
// Get the removed uuids and delete from disk
|
|
34
|
+
const exec = c.map(x => {
|
|
35
|
+
return col.deleteOne({ uuid: x })
|
|
36
|
+
})
|
|
37
|
+
await Promise.all(exec)
|
|
38
|
+
return c
|
|
39
|
+
},
|
|
40
|
+
list_all: async (token?: string): Promise<Array<string>> => {
|
|
41
|
+
return mem.list_all(token)
|
|
42
|
+
},
|
|
43
|
+
save: async (uuid: string, data: string, token?: string): Promise<boolean> => {
|
|
44
|
+
const r = await mem.save(uuid, data, token)
|
|
45
|
+
if(!r) return false
|
|
46
|
+
|
|
47
|
+
const database = loader.db(db)
|
|
48
|
+
const col = database.collection(collection)
|
|
49
|
+
col.findOneAndUpdate({ uuid: uuid }, JSON.parse(data))
|
|
50
|
+
return true
|
|
51
|
+
},
|
|
52
|
+
load: async (uuid: string, token?: string): Promise<string> => {
|
|
53
|
+
return mem.load(uuid, token)
|
|
54
|
+
},
|
|
55
|
+
delete: async (uuid: string, token?: string): Promise<boolean> => {
|
|
56
|
+
const r = await mem.delete(uuid, token)
|
|
57
|
+
if(!r) return false
|
|
58
|
+
|
|
59
|
+
const database = loader.db(db)
|
|
60
|
+
const col = database.collection(collection)
|
|
61
|
+
await col.deleteOne({ uuid: uuid })
|
|
62
|
+
return true
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* **Create the interface for record mongoDB storage**\
|
|
69
|
+
* @param url MongoDB URL
|
|
70
|
+
* @param memory loader memory loader interface
|
|
71
|
+
* @returns
|
|
72
|
+
*/
|
|
73
|
+
export const CreateRecordMongoLoader = (url:string, memory:MemoryData):RecordLoader => {
|
|
74
|
+
const loader:MongoClient = new MongoClient(url)
|
|
75
|
+
return {
|
|
76
|
+
project: _CreateRecordMongoLoader(loader, memory, RecordType.PROJECT, MONGODB_NAME, "project"),
|
|
77
|
+
task: _CreateRecordMongoLoader(loader, memory, RecordType.TASK, MONGODB_NAME, "task"),
|
|
78
|
+
job: _CreateRecordMongoLoader(loader, memory, RecordType.JOB, MONGODB_NAME, "job"),
|
|
79
|
+
database: _CreateRecordMongoLoader(loader, memory, RecordType.DATABASE, MONGODB_NAME, "database"),
|
|
80
|
+
node: _CreateRecordMongoLoader(loader, memory, RecordType.NODE, MONGODB_NAME, "node"),
|
|
81
|
+
log: _CreateRecordMongoLoader(loader, memory, RecordType.LOG, MONGODB_NAME, "log"),
|
|
82
|
+
lib: _CreateRecordMongoLoader(loader, memory, RecordType.LIB, MONGODB_NAME, "lib"),
|
|
83
|
+
user: _CreateRecordMongoLoader(loader, memory, RecordType.USER, MONGODB_NAME, "user"),
|
|
84
|
+
}
|
|
85
|
+
}
|