@ticatec/common-express-server 0.2.0 → 0.3.0

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 (43) hide show
  1. package/package.json +10 -10
  2. package/lib/AppConf.d.ts +0 -31
  3. package/lib/AppConf.js +0 -57
  4. package/lib/AppConf.js.map +0 -1
  5. package/lib/BaseServer.d.ts +0 -125
  6. package/lib/BaseServer.js +0 -155
  7. package/lib/BaseServer.js.map +0 -1
  8. package/lib/CommonRouterHelper.d.ts +0 -64
  9. package/lib/CommonRouterHelper.js +0 -134
  10. package/lib/CommonRouterHelper.js.map +0 -1
  11. package/lib/CommonRoutes.d.ts +0 -33
  12. package/lib/CommonRoutes.js +0 -57
  13. package/lib/CommonRoutes.js.map +0 -1
  14. package/lib/LoggedUser.d.ts +0 -33
  15. package/lib/LoggedUser.js +0 -3
  16. package/lib/LoggedUser.js.map +0 -1
  17. package/lib/common/AdminBaseController.d.ts +0 -30
  18. package/lib/common/AdminBaseController.js +0 -41
  19. package/lib/common/AdminBaseController.js.map +0 -1
  20. package/lib/common/AdminSearchController.d.ts +0 -13
  21. package/lib/common/AdminSearchController.js +0 -26
  22. package/lib/common/AdminSearchController.js.map +0 -1
  23. package/lib/common/BaseController.d.ts +0 -28
  24. package/lib/common/BaseController.js +0 -35
  25. package/lib/common/BaseController.js.map +0 -1
  26. package/lib/common/CommonController.d.ts +0 -96
  27. package/lib/common/CommonController.js +0 -129
  28. package/lib/common/CommonController.js.map +0 -1
  29. package/lib/common/TenantBaseController.d.ts +0 -30
  30. package/lib/common/TenantBaseController.js +0 -41
  31. package/lib/common/TenantBaseController.js.map +0 -1
  32. package/lib/common/TenantSearchController.d.ts +0 -13
  33. package/lib/common/TenantSearchController.js +0 -27
  34. package/lib/common/TenantSearchController.js.map +0 -1
  35. package/lib/index.d.ts +0 -14
  36. package/lib/index.js +0 -30
  37. package/lib/index.js.map +0 -1
  38. package/lib/lib/CommonProcessor.d.ts +0 -49
  39. package/lib/lib/CommonProcessor.js +0 -99
  40. package/lib/lib/CommonProcessor.js.map +0 -1
  41. package/lib/lib/ProcessorManager.d.ts +0 -14
  42. package/lib/lib/ProcessorManager.js +0 -30
  43. package/lib/lib/ProcessorManager.js.map +0 -1
package/lib/index.d.ts DELETED
@@ -1,14 +0,0 @@
1
- import BaseServer from './BaseServer';
2
- export { default as CommonRouterHelper } from './CommonRouterHelper';
3
- export { default as CommonRoutes } from './CommonRoutes';
4
- export { default as AppConf } from './AppConf';
5
- export { default as LoggedUser, CommonUser } from './LoggedUser';
6
- export { default as BaseController } from './common/BaseController';
7
- export { default as CommonController } from './common/CommonController';
8
- export { default as AdminBaseController } from './common/AdminBaseController';
9
- export { default as TenantBaseController } from './common/TenantBaseController';
10
- export { default as AdminSearchController } from './common/AdminSearchController';
11
- export { default as TenantSearchController } from './common/TenantSearchController';
12
- export type { RestfulFunction, ControlFunction } from './CommonRouterHelper';
13
- export type { moduleLoader } from './BaseServer';
14
- export default BaseServer;
package/lib/index.js DELETED
@@ -1,30 +0,0 @@
1
- "use strict";
2
- // Main entry point for @ticatec/common-express-server
3
- var __importDefault = (this && this.__importDefault) || function (mod) {
4
- return (mod && mod.__esModule) ? mod : { "default": mod };
5
- };
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.TenantSearchController = exports.AdminSearchController = exports.TenantBaseController = exports.AdminBaseController = exports.CommonController = exports.BaseController = exports.AppConf = exports.CommonRoutes = exports.CommonRouterHelper = void 0;
8
- // Core classes
9
- const BaseServer_1 = __importDefault(require("./BaseServer"));
10
- var CommonRouterHelper_1 = require("./CommonRouterHelper");
11
- Object.defineProperty(exports, "CommonRouterHelper", { enumerable: true, get: function () { return __importDefault(CommonRouterHelper_1).default; } });
12
- var CommonRoutes_1 = require("./CommonRoutes");
13
- Object.defineProperty(exports, "CommonRoutes", { enumerable: true, get: function () { return __importDefault(CommonRoutes_1).default; } });
14
- var AppConf_1 = require("./AppConf");
15
- Object.defineProperty(exports, "AppConf", { enumerable: true, get: function () { return __importDefault(AppConf_1).default; } });
16
- // Controllers
17
- var BaseController_1 = require("./common/BaseController");
18
- Object.defineProperty(exports, "BaseController", { enumerable: true, get: function () { return __importDefault(BaseController_1).default; } });
19
- var CommonController_1 = require("./common/CommonController");
20
- Object.defineProperty(exports, "CommonController", { enumerable: true, get: function () { return __importDefault(CommonController_1).default; } });
21
- var AdminBaseController_1 = require("./common/AdminBaseController");
22
- Object.defineProperty(exports, "AdminBaseController", { enumerable: true, get: function () { return __importDefault(AdminBaseController_1).default; } });
23
- var TenantBaseController_1 = require("./common/TenantBaseController");
24
- Object.defineProperty(exports, "TenantBaseController", { enumerable: true, get: function () { return __importDefault(TenantBaseController_1).default; } });
25
- var AdminSearchController_1 = require("./common/AdminSearchController");
26
- Object.defineProperty(exports, "AdminSearchController", { enumerable: true, get: function () { return __importDefault(AdminSearchController_1).default; } });
27
- var TenantSearchController_1 = require("./common/TenantSearchController");
28
- Object.defineProperty(exports, "TenantSearchController", { enumerable: true, get: function () { return __importDefault(TenantSearchController_1).default; } });
29
- exports.default = BaseServer_1.default;
30
- //# sourceMappingURL=index.js.map
package/lib/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"src/","sources":["index.ts"],"names":[],"mappings":";AACA,sDAAsD;;;;;;AAEtD,eAAe;AACf,8DAAsC;AAEtC,2DAAmE;AAA3D,yIAAA,OAAO,OAAsB;AACrC,+CAAuD;AAA/C,6HAAA,OAAO,OAAgB;AAC/B,qCAA6C;AAArC,mHAAA,OAAO,OAAW;AAK1B,cAAc;AACd,0DAAoE;AAA3D,iIAAA,OAAO,OAAkB;AAClC,8DAAwE;AAA/D,qIAAA,OAAO,OAAoB;AACpC,oEAA8E;AAArE,2IAAA,OAAO,OAAuB;AACvC,sEAAgF;AAAvE,6IAAA,OAAO,OAAwB;AACxC,wEAAkF;AAAzE,+IAAA,OAAO,OAAyB;AACzC,0EAAoF;AAA3E,iJAAA,OAAO,OAA0B;AAM1C,kBAAe,oBAAU,CAAC"}
@@ -1,49 +0,0 @@
1
- import log4js from "log4js";
2
- export declare enum ProcessStatus {
3
- Napping = 0,
4
- Running = 1
5
- }
6
- export default abstract class CommonProcessor<T> {
7
- protected logger: log4js.Logger;
8
- protected interval: number;
9
- protected processInterval: any;
10
- private nappingDuration;
11
- private status;
12
- private readonly ants;
13
- /**
14
- * 构造函数
15
- * @param interval 检查间隔
16
- * @param ants 工蚁数量,可以同步执行的线程数量
17
- * @protected
18
- */
19
- protected constructor(interval: number, ants?: number);
20
- /**
21
- * 启动
22
- */
23
- startup(): void;
24
- /**
25
- * 停止
26
- */
27
- stop(): void;
28
- private checkNap;
29
- /**
30
- * 开始处理数据
31
- * @protected
32
- */
33
- protected startProcess(): Promise<void>;
34
- /**
35
- * 读取待处理的数据
36
- * @protected
37
- */
38
- protected abstract loadToProcessData(): Promise<Array<T>>;
39
- /**
40
- * 立即执行
41
- */
42
- runImmediately(): void;
43
- /**
44
- * 处理单条数据
45
- * @protected
46
- * @param item
47
- */
48
- protected abstract processItem(item: T): Promise<void>;
49
- }
@@ -1,99 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ProcessStatus = void 0;
7
- const node_timers_1 = require("node:timers");
8
- const log4js_1 = __importDefault(require("log4js"));
9
- var ProcessStatus;
10
- (function (ProcessStatus) {
11
- ProcessStatus[ProcessStatus["Napping"] = 0] = "Napping";
12
- ProcessStatus[ProcessStatus["Running"] = 1] = "Running";
13
- })(ProcessStatus || (exports.ProcessStatus = ProcessStatus = {}));
14
- class CommonProcessor {
15
- /**
16
- * 构造函数
17
- * @param interval 检查间隔
18
- * @param ants 工蚁数量,可以同步执行的线程数量
19
- * @protected
20
- */
21
- constructor(interval, ants = 5) {
22
- this.logger = log4js_1.default.getLogger(this.constructor.name);
23
- this.interval = Math.max(Math.round(interval), 5);
24
- this.ants = ants;
25
- this.nappingDuration = 0;
26
- }
27
- /**
28
- * 启动
29
- */
30
- startup() {
31
- if (!this.processInterval) {
32
- this.logger.debug('启动处理器');
33
- this.nappingDuration = this.interval;
34
- this.status = ProcessStatus.Napping;
35
- this.processInterval = setInterval(this.checkNap(), 1000);
36
- }
37
- }
38
- /**
39
- * 停止
40
- */
41
- stop() {
42
- if (this.processInterval) {
43
- this.logger.debug('停止处理器');
44
- (0, node_timers_1.clearInterval)(this.processInterval);
45
- this.processInterval = null;
46
- }
47
- }
48
- checkNap() {
49
- return async () => {
50
- this.nappingDuration++;
51
- if (this.nappingDuration >= this.interval && this.status == ProcessStatus.Napping) {
52
- this.status = ProcessStatus.Running;
53
- try {
54
- await this.startProcess();
55
- }
56
- finally {
57
- this.status = ProcessStatus.Napping;
58
- }
59
- }
60
- };
61
- }
62
- /**
63
- * 开始处理数据
64
- * @protected
65
- */
66
- async startProcess() {
67
- let arr = await this.loadToProcessData();
68
- if (arr.length > 0) {
69
- this.logger.debug('有待处理的数据,开始处理数据');
70
- const pool = new Set();
71
- for (const item of arr) {
72
- const task = this.processItem(item)
73
- .catch((ex) => {
74
- this.logger.error(`执行任务 [${item}] 发生错误:`, ex);
75
- })
76
- .finally(() => {
77
- pool.delete(task);
78
- });
79
- pool.add(task);
80
- if (pool.size >= this.ants) {
81
- await Promise.race(pool);
82
- }
83
- }
84
- await Promise.all(pool);
85
- }
86
- else {
87
- this.nappingDuration = 0;
88
- }
89
- }
90
- /**
91
- * 立即执行
92
- */
93
- runImmediately() {
94
- this.logger.debug('立即执行');
95
- this.nappingDuration = this.interval;
96
- }
97
- }
98
- exports.default = CommonProcessor;
99
- //# sourceMappingURL=CommonProcessor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CommonProcessor.js","sourceRoot":"src/","sources":["lib/CommonProcessor.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- import CommonProcessor from "./CommonProcessor";
2
- export default class ProcessorManager {
3
- private static instance;
4
- private map;
5
- private constructor();
6
- static getInstance(): ProcessorManager;
7
- get(name: string): CommonProcessor<any>;
8
- /**
9
- * 组成一个处理器
10
- * @param Constructor
11
- * @param args
12
- */
13
- register(Constructor: new (name: string) => CommonProcessor<any>, args?: any): CommonProcessor<any>;
14
- }
@@ -1,30 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- class ProcessorManager {
4
- constructor() {
5
- this.map = new Map();
6
- }
7
- static getInstance() {
8
- return ProcessorManager.instance;
9
- }
10
- get(name) {
11
- return this.map.get(name);
12
- }
13
- /**
14
- * 组成一个处理器
15
- * @param Constructor
16
- * @param args
17
- */
18
- register(Constructor, args) {
19
- let constructorName = Constructor.name;
20
- let processor = this.map.get(constructorName);
21
- if (!processor) {
22
- processor = new Constructor(args);
23
- this.map.set(constructorName, processor);
24
- }
25
- return processor;
26
- }
27
- }
28
- ProcessorManager.instance = new ProcessorManager();
29
- exports.default = ProcessorManager;
30
- //# sourceMappingURL=ProcessorManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ProcessorManager.js","sourceRoot":"src/","sources":["lib/ProcessorManager.ts"],"names":[],"mappings":";;AAEA,MAAqB,gBAAgB;IAKjC;QACI,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,EAAgC,CAAC;IACvD,CAAC;IAED,MAAM,CAAC,WAAW;QACd,OAAO,gBAAgB,CAAC,QAAQ,CAAC;IACrC,CAAC;IAED,GAAG,CAAC,IAAY;QACZ,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED;;;;OAIG;IACH,QAAQ,CAAC,WAAuD,EAAE,IAAU;QACxE,IAAI,eAAe,GAAG,WAAW,CAAC,IAAI,CAAC;QACvC,IAAI,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC9C,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,SAAS,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,CAAA;YACjC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;;AA5Bc,yBAAQ,GAAqB,IAAI,gBAAgB,EAAE,CAAC;kBAFlD,gBAAgB"}