@eggjs/tegg-runtime 3.62.0 → 4.0.0-beta.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.
- package/README.md +12 -0
- package/dist/{src/factory → factory}/EggContainerFactory.d.ts +1 -0
- package/dist/factory/EggContainerFactory.js +90 -0
- package/dist/factory/EggObjectFactory.js +46 -0
- package/dist/factory/LoadUnitInstanceFactory.js +57 -0
- package/dist/factory/index.d.ts +3 -0
- package/dist/factory/index.js +4 -0
- package/dist/{src/impl → impl}/ContextInitiator.d.ts +0 -1
- package/dist/impl/ContextInitiator.js +37 -0
- package/dist/impl/ContextObjectGraph.js +38 -0
- package/dist/impl/EggAlwaysNewObjectContainer.js +33 -0
- package/dist/{src/impl → impl}/EggObjectImpl.d.ts +1 -1
- package/dist/impl/EggObjectImpl.js +179 -0
- package/dist/impl/EggObjectUtil.js +172 -0
- package/dist/impl/ModuleLoadUnitInstance.js +90 -0
- package/dist/impl/index.d.ts +6 -0
- package/dist/impl/index.js +7 -0
- package/dist/index.d.ts +4 -12
- package/dist/index.js +5 -29
- package/dist/{src/model → model}/AbstractEggContext.d.ts +1 -1
- package/dist/model/AbstractEggContext.js +93 -0
- package/dist/model/ContextHandler.js +14 -0
- package/dist/model/EggContext.js +3 -0
- package/dist/model/EggObject.js +3 -0
- package/dist/model/LoadUnitInstance.js +3 -0
- package/dist/model/index.d.ts +5 -0
- package/dist/model/index.js +6 -0
- package/package.json +29 -29
- package/dist/src/factory/EggContainerFactory.js +0 -76
- package/dist/src/factory/EggObjectFactory.js +0 -53
- package/dist/src/factory/LoadUnitInstanceFactory.js +0 -62
- package/dist/src/impl/ContextInitiator.js +0 -46
- package/dist/src/impl/ContextObjectGraph.js +0 -44
- package/dist/src/impl/EggAlwaysNewObjectContainer.js +0 -36
- package/dist/src/impl/EggObjectImpl.js +0 -178
- package/dist/src/impl/EggObjectUtil.js +0 -176
- package/dist/src/impl/ModuleLoadUnitInstance.js +0 -91
- package/dist/src/model/AbstractEggContext.js +0 -96
- package/dist/src/model/ContextHandler.js +0 -19
- package/dist/src/model/EggContext.js +0 -6
- package/dist/src/model/EggObject.js +0 -6
- package/dist/src/model/LoadUnitInstance.js +0 -6
- /package/dist/{src/factory → factory}/EggObjectFactory.d.ts +0 -0
- /package/dist/{src/factory → factory}/LoadUnitInstanceFactory.d.ts +0 -0
- /package/dist/{src/impl → impl}/ContextObjectGraph.d.ts +0 -0
- /package/dist/{src/impl → impl}/EggAlwaysNewObjectContainer.d.ts +0 -0
- /package/dist/{src/impl → impl}/EggObjectUtil.d.ts +0 -0
- /package/dist/{src/impl → impl}/ModuleLoadUnitInstance.d.ts +0 -0
- /package/dist/{src/model → model}/ContextHandler.d.ts +0 -0
- /package/dist/{src/model → model}/EggContext.d.ts +0 -0
- /package/dist/{src/model → model}/EggObject.d.ts +0 -0
- /package/dist/{src/model → model}/LoadUnitInstance.d.ts +0 -0
|
@@ -1,176 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EggObjectUtil = void 0;
|
|
4
|
-
const EggContainerFactory_1 = require("../factory/EggContainerFactory");
|
|
5
|
-
class EggObjectUtil {
|
|
6
|
-
static eggObjectGetProperty(eggObject) {
|
|
7
|
-
return {
|
|
8
|
-
get() {
|
|
9
|
-
return eggObject.obj;
|
|
10
|
-
},
|
|
11
|
-
configurable: true,
|
|
12
|
-
enumerable: true,
|
|
13
|
-
};
|
|
14
|
-
}
|
|
15
|
-
static contextEggObjectGetProperty(proto, objName) {
|
|
16
|
-
const PROTO_OBJ_GETTER = Symbol(`EggPrototype#objGetter#${String(objName)}`);
|
|
17
|
-
if (!proto[PROTO_OBJ_GETTER]) {
|
|
18
|
-
proto[PROTO_OBJ_GETTER] = {
|
|
19
|
-
get() {
|
|
20
|
-
const eggObject = EggContainerFactory_1.EggContainerFactory.getEggObject(proto, objName);
|
|
21
|
-
return eggObject.obj;
|
|
22
|
-
},
|
|
23
|
-
configurable: true,
|
|
24
|
-
enumerable: true,
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
return proto[PROTO_OBJ_GETTER];
|
|
28
|
-
}
|
|
29
|
-
static eggObjectProxy(eggObject) {
|
|
30
|
-
let _obj;
|
|
31
|
-
function getObj() {
|
|
32
|
-
if (!_obj) {
|
|
33
|
-
_obj = eggObject.obj;
|
|
34
|
-
}
|
|
35
|
-
return _obj;
|
|
36
|
-
}
|
|
37
|
-
const proxy = new Proxy({}, {
|
|
38
|
-
defineProperty(_target, property, attributes) {
|
|
39
|
-
const obj = getObj();
|
|
40
|
-
Object.defineProperty(obj, property, attributes);
|
|
41
|
-
return true;
|
|
42
|
-
},
|
|
43
|
-
deleteProperty(_target, p) {
|
|
44
|
-
const obj = getObj();
|
|
45
|
-
delete obj[p];
|
|
46
|
-
return true;
|
|
47
|
-
},
|
|
48
|
-
get(target, p) {
|
|
49
|
-
// make get be lazy
|
|
50
|
-
if (p === 'then')
|
|
51
|
-
return;
|
|
52
|
-
if (Object.prototype[p]) {
|
|
53
|
-
return target[p];
|
|
54
|
-
}
|
|
55
|
-
const obj = getObj();
|
|
56
|
-
const val = obj[p];
|
|
57
|
-
if (typeof val === 'function') {
|
|
58
|
-
return val.bind(obj);
|
|
59
|
-
}
|
|
60
|
-
return val;
|
|
61
|
-
},
|
|
62
|
-
getOwnPropertyDescriptor(_target, p) {
|
|
63
|
-
const obj = getObj();
|
|
64
|
-
return Object.getOwnPropertyDescriptor(obj, p);
|
|
65
|
-
},
|
|
66
|
-
getPrototypeOf() {
|
|
67
|
-
const obj = getObj();
|
|
68
|
-
return Object.getPrototypeOf(obj);
|
|
69
|
-
},
|
|
70
|
-
has(_target, p) {
|
|
71
|
-
const obj = getObj();
|
|
72
|
-
return p in obj;
|
|
73
|
-
},
|
|
74
|
-
isExtensible() {
|
|
75
|
-
const obj = getObj();
|
|
76
|
-
return Object.isExtensible(obj);
|
|
77
|
-
},
|
|
78
|
-
ownKeys() {
|
|
79
|
-
const obj = getObj();
|
|
80
|
-
return Reflect.ownKeys(obj);
|
|
81
|
-
},
|
|
82
|
-
preventExtensions() {
|
|
83
|
-
const obj = getObj();
|
|
84
|
-
Object.preventExtensions(obj);
|
|
85
|
-
return true;
|
|
86
|
-
},
|
|
87
|
-
set(_target, p, newValue) {
|
|
88
|
-
const obj = getObj();
|
|
89
|
-
obj[p] = newValue;
|
|
90
|
-
return true;
|
|
91
|
-
},
|
|
92
|
-
setPrototypeOf(_target, v) {
|
|
93
|
-
const obj = getObj();
|
|
94
|
-
Object.setPrototypeOf(obj, v);
|
|
95
|
-
return true;
|
|
96
|
-
},
|
|
97
|
-
});
|
|
98
|
-
return proxy;
|
|
99
|
-
}
|
|
100
|
-
static contextEggObjectProxy(proto, objName) {
|
|
101
|
-
const PROTO_OBJ_PROXY = Symbol(`EggPrototype#objProxy#${String(objName)}`);
|
|
102
|
-
if (!proto[PROTO_OBJ_PROXY]) {
|
|
103
|
-
proto[PROTO_OBJ_PROXY] = new Proxy({}, {
|
|
104
|
-
defineProperty(_target, property, attributes) {
|
|
105
|
-
const eggObject = EggContainerFactory_1.EggContainerFactory.getEggObject(proto, objName);
|
|
106
|
-
const obj = eggObject.obj;
|
|
107
|
-
Object.defineProperty(obj, property, attributes);
|
|
108
|
-
return true;
|
|
109
|
-
},
|
|
110
|
-
deleteProperty(_target, p) {
|
|
111
|
-
const eggObject = EggContainerFactory_1.EggContainerFactory.getEggObject(proto, objName);
|
|
112
|
-
const obj = eggObject.obj;
|
|
113
|
-
delete obj[p];
|
|
114
|
-
return true;
|
|
115
|
-
},
|
|
116
|
-
get(target, p) {
|
|
117
|
-
// make get be lazy
|
|
118
|
-
if (p === 'then')
|
|
119
|
-
return;
|
|
120
|
-
if (Object.prototype[p]) {
|
|
121
|
-
return target[p];
|
|
122
|
-
}
|
|
123
|
-
const eggObject = EggContainerFactory_1.EggContainerFactory.getEggObject(proto, objName);
|
|
124
|
-
const obj = eggObject.obj;
|
|
125
|
-
return obj[p];
|
|
126
|
-
},
|
|
127
|
-
getOwnPropertyDescriptor(_target, p) {
|
|
128
|
-
const eggObject = EggContainerFactory_1.EggContainerFactory.getEggObject(proto, objName);
|
|
129
|
-
const obj = eggObject.obj;
|
|
130
|
-
return Object.getOwnPropertyDescriptor(obj, p);
|
|
131
|
-
},
|
|
132
|
-
getPrototypeOf() {
|
|
133
|
-
const eggObject = EggContainerFactory_1.EggContainerFactory.getEggObject(proto, objName);
|
|
134
|
-
const obj = eggObject.obj;
|
|
135
|
-
return Object.getPrototypeOf(obj);
|
|
136
|
-
},
|
|
137
|
-
has(_target, p) {
|
|
138
|
-
const eggObject = EggContainerFactory_1.EggContainerFactory.getEggObject(proto, objName);
|
|
139
|
-
const obj = eggObject.obj;
|
|
140
|
-
return p in obj;
|
|
141
|
-
},
|
|
142
|
-
isExtensible() {
|
|
143
|
-
const eggObject = EggContainerFactory_1.EggContainerFactory.getEggObject(proto, objName);
|
|
144
|
-
const obj = eggObject.obj;
|
|
145
|
-
return Object.isExtensible(obj);
|
|
146
|
-
},
|
|
147
|
-
ownKeys() {
|
|
148
|
-
const eggObject = EggContainerFactory_1.EggContainerFactory.getEggObject(proto, objName);
|
|
149
|
-
const obj = eggObject.obj;
|
|
150
|
-
return Reflect.ownKeys(obj);
|
|
151
|
-
},
|
|
152
|
-
preventExtensions() {
|
|
153
|
-
const eggObject = EggContainerFactory_1.EggContainerFactory.getEggObject(proto, objName);
|
|
154
|
-
const obj = eggObject.obj;
|
|
155
|
-
Object.preventExtensions(obj);
|
|
156
|
-
return true;
|
|
157
|
-
},
|
|
158
|
-
set(_target, p, newValue) {
|
|
159
|
-
const eggObject = EggContainerFactory_1.EggContainerFactory.getEggObject(proto, objName);
|
|
160
|
-
const obj = eggObject.obj;
|
|
161
|
-
obj[p] = newValue;
|
|
162
|
-
return true;
|
|
163
|
-
},
|
|
164
|
-
setPrototypeOf(_target, v) {
|
|
165
|
-
const eggObject = EggContainerFactory_1.EggContainerFactory.getEggObject(proto, objName);
|
|
166
|
-
const obj = eggObject.obj;
|
|
167
|
-
Object.setPrototypeOf(obj, v);
|
|
168
|
-
return true;
|
|
169
|
-
},
|
|
170
|
-
});
|
|
171
|
-
}
|
|
172
|
-
return proto[PROTO_OBJ_PROXY];
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
exports.EggObjectUtil = EggObjectUtil;
|
|
176
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRWdnT2JqZWN0VXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbXBsL0VnZ09iamVjdFV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0Esd0VBQXFFO0FBRXJFLE1BQWEsYUFBYTtJQUN4QixNQUFNLENBQUMsb0JBQW9CLENBQUMsU0FBb0I7UUFDOUMsT0FBTztZQUNMLEdBQUc7Z0JBQ0QsT0FBTyxTQUFTLENBQUMsR0FBRyxDQUFDO1lBQ3ZCLENBQUM7WUFDRCxZQUFZLEVBQUUsSUFBSTtZQUNsQixVQUFVLEVBQUUsSUFBSTtTQUNqQixDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU0sQ0FBQywyQkFBMkIsQ0FBQyxLQUFtQixFQUFFLE9BQW9CO1FBQzFFLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLDBCQUEwQixNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzdFLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxDQUFDO1lBQzdCLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHO2dCQUN4QixHQUFHO29CQUNELE1BQU0sU0FBUyxHQUFHLHlDQUFtQixDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7b0JBQ25FLE9BQU8sU0FBUyxDQUFDLEdBQUcsQ0FBQztnQkFDdkIsQ0FBQztnQkFDRCxZQUFZLEVBQUUsSUFBSTtnQkFDbEIsVUFBVSxFQUFFLElBQUk7YUFDakIsQ0FBQztRQUNKLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLFNBQW9CO1FBQ3hDLElBQUksSUFBWSxDQUFDO1FBQ2pCLFNBQVMsTUFBTTtZQUNiLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDVixJQUFJLEdBQUcsU0FBUyxDQUFDLEdBQUcsQ0FBQztZQUN2QixDQUFDO1lB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
|
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ModuleLoadUnitInstance = void 0;
|
|
4
|
-
const tegg_common_util_1 = require("@eggjs/tegg-common-util");
|
|
5
|
-
const tegg_lifecycle_1 = require("@eggjs/tegg-lifecycle");
|
|
6
|
-
const tegg_types_1 = require("@eggjs/tegg-types");
|
|
7
|
-
const EggObjectFactory_1 = require("../factory/EggObjectFactory");
|
|
8
|
-
const LoadUnitInstanceFactory_1 = require("../factory/LoadUnitInstanceFactory");
|
|
9
|
-
const LoadUnitInstance_1 = require("../model/LoadUnitInstance");
|
|
10
|
-
class ModuleLoadUnitInstance {
|
|
11
|
-
constructor(loadUnit) {
|
|
12
|
-
this.protoToCreateMap = [];
|
|
13
|
-
this.eggObjectMap = new Map();
|
|
14
|
-
this.eggObjectPromiseMap = new Map();
|
|
15
|
-
this.loadUnit = loadUnit;
|
|
16
|
-
this.name = loadUnit.name;
|
|
17
|
-
const iterator = this.loadUnit.iterateEggPrototype();
|
|
18
|
-
for (const proto of iterator) {
|
|
19
|
-
if (proto.initType === tegg_types_1.ObjectInitType.SINGLETON) {
|
|
20
|
-
this.protoToCreateMap.push([
|
|
21
|
-
proto.name, proto,
|
|
22
|
-
]);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
this.id = tegg_lifecycle_1.IdenticalUtil.createLoadUnitInstanceId(loadUnit.id);
|
|
26
|
-
}
|
|
27
|
-
iterateProtoToCreate() {
|
|
28
|
-
return this.protoToCreateMap[Symbol.iterator]();
|
|
29
|
-
}
|
|
30
|
-
addProtoToCreate(name, proto) {
|
|
31
|
-
this.protoToCreateMap.push([name, proto]);
|
|
32
|
-
}
|
|
33
|
-
deleteProtoToCreate(name) {
|
|
34
|
-
const index = this.protoToCreateMap.findIndex(([protoName]) => protoName === name);
|
|
35
|
-
if (index !== -1) {
|
|
36
|
-
this.protoToCreateMap.splice(index, 1);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
async init(ctx) {
|
|
40
|
-
await LoadUnitInstance_1.LoadUnitInstanceLifecycleUtil.objectPreCreate(ctx, this);
|
|
41
|
-
for (const [name, proto] of this.protoToCreateMap) {
|
|
42
|
-
await this.getOrCreateEggObject(name, proto);
|
|
43
|
-
}
|
|
44
|
-
await LoadUnitInstance_1.LoadUnitInstanceLifecycleUtil.objectPostCreate(ctx, this);
|
|
45
|
-
}
|
|
46
|
-
async destroy() {
|
|
47
|
-
const objs = [];
|
|
48
|
-
for (const protoObjMap of this.eggObjectMap.values()) {
|
|
49
|
-
for (const obj of protoObjMap.values()) {
|
|
50
|
-
objs.push(obj);
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
this.eggObjectMap.clear();
|
|
54
|
-
await Promise.all(objs.map(async (obj) => {
|
|
55
|
-
await EggObjectFactory_1.EggObjectFactory.destroyObject(obj);
|
|
56
|
-
}));
|
|
57
|
-
}
|
|
58
|
-
async getOrCreateEggObject(name, proto) {
|
|
59
|
-
if (!this.loadUnit.containPrototype(proto)) {
|
|
60
|
-
throw new Error('load unit not contain proto');
|
|
61
|
-
}
|
|
62
|
-
const protoObjMap = tegg_common_util_1.MapUtil.getOrStore(this.eggObjectMap, proto.id, new Map());
|
|
63
|
-
if (!protoObjMap.has(name)) {
|
|
64
|
-
const protoObjPromiseMap = tegg_common_util_1.MapUtil.getOrStore(this.eggObjectPromiseMap, proto.id, new Map());
|
|
65
|
-
if (!protoObjPromiseMap.has(name)) {
|
|
66
|
-
const objPromise = EggObjectFactory_1.EggObjectFactory.createObject(name, proto);
|
|
67
|
-
protoObjPromiseMap.set(name, objPromise);
|
|
68
|
-
const obj = await objPromise;
|
|
69
|
-
protoObjPromiseMap.delete(name);
|
|
70
|
-
protoObjMap.set(name, obj);
|
|
71
|
-
}
|
|
72
|
-
else {
|
|
73
|
-
await protoObjPromiseMap.get(name);
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
return protoObjMap.get(name);
|
|
77
|
-
}
|
|
78
|
-
getEggObject(name, proto) {
|
|
79
|
-
const protoObjMap = this.eggObjectMap.get(proto.id);
|
|
80
|
-
if (!protoObjMap || !protoObjMap.has(name)) {
|
|
81
|
-
throw new Error(`EggObject ${String(proto.name)} not found`);
|
|
82
|
-
}
|
|
83
|
-
return protoObjMap.get(name);
|
|
84
|
-
}
|
|
85
|
-
static createModuleLoadUnitInstance(ctx) {
|
|
86
|
-
return new ModuleLoadUnitInstance(ctx.loadUnit);
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
exports.ModuleLoadUnitInstance = ModuleLoadUnitInstance;
|
|
90
|
-
LoadUnitInstanceFactory_1.LoadUnitInstanceFactory.registerLoadUnitInstanceClass(tegg_types_1.EggLoadUnitType.MODULE, ModuleLoadUnitInstance.createModuleLoadUnitInstance);
|
|
91
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kdWxlTG9hZFVuaXRJbnN0YW5jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbXBsL01vZHVsZUxvYWRVbml0SW5zdGFuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsOERBQWtEO0FBQ2xELDBEQUFzRDtBQUN0RCxrREFBb0U7QUFXcEUsa0VBQStEO0FBQy9ELGdGQUE2RTtBQUM3RSxnRUFBMEU7QUFFMUUsTUFBYSxzQkFBc0I7SUFRakMsWUFBWSxRQUFrQjtRQUp0QixxQkFBZ0IsR0FBdUMsRUFBRSxDQUFDO1FBQzFELGlCQUFZLEdBQThDLElBQUksR0FBRyxFQUFFLENBQUM7UUFDcEUsd0JBQW1CLEdBQXVELElBQUksR0FBRyxFQUFFLENBQUM7UUFHMUYsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFDekIsSUFBSSxDQUFDLElBQUksR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQzFCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUNyRCxLQUFLLE1BQU0sS0FBSyxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQzdCLElBQUksS0FBSyxDQUFDLFFBQVEsS0FBSywyQkFBYyxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUNoRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDO29CQUN6QixLQUFLLENBQUMsSUFBSSxFQUFFLEtBQUs7aUJBQ2xCLENBQUMsQ0FBQztZQUNMLENBQUM7UUFDSCxDQUFDO1FBQ0QsSUFBSSxDQUFDLEVBQUUsR0FBRyw4QkFBYSxDQUFDLHdCQUF3QixDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRUQsb0JBQW9CO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO0lBQ2xELENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxJQUFZLEVBQUUsS0FBbUI7UUFDaEQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFFLElBQUksRUFBRSxLQUFLLENBQUUsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxJQUFZO1FBQzlCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFFLFNBQVMsQ0FBRSxFQUFFLEVBQUUsQ0FBQyxTQUFTLEtBQUssSUFBSSxDQUFDLENBQUM7UUFDckYsSUFBSSxLQUFLLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN6QyxDQUFDO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBcUM7UUFDOUMsTUFBTSxnREFBNkIsQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQy9ELEtBQUssTUFBTSxDQUFFLElBQUksRUFBRSxLQUFLLENBQUUsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUNwRCxNQUFNLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDL0MsQ0FBQztRQUNELE1BQU0sZ0RBQTZCLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRCxLQUFLLENBQUMsT0FBTztRQUNYLE1BQU0sSUFBSSxHQUFnQixFQUFFLENBQUM7UUFDN0IsS0FBSyxNQUFNLFdBQVcsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7WUFDckQsS0FBSyxNQUFNLEdBQUcsSUFBSSxXQUFXLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQztnQkFDdkMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNqQixDQUFDO1FBQ0gsQ0FBQztRQUNELElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDMUIsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFDLEdBQUcsRUFBQyxFQUFFO1lBQ3JDLE1BQU0sbUNBQWdCLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzVDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0lBRUQsS0FBSyxDQUFDLG9CQUFvQixDQUFDLElBQXNCLEVBQUUsS0FBbUI7UUFDcEUsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUMzQyxNQUFNLElBQUksS0FBSyxDQUFDLDZCQUE2QixDQUFDLENBQUM7UUFDakQsQ0FBQztRQUNELE1BQU0sV0FBVyxHQUFHLDBCQUFPLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxJQUFJLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDL0UsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUMzQixNQUFNLGtCQUFrQixHQUFHLDBCQUFPLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQztZQUM3RixJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7Z0JBQ2xDLE1BQU0sVUFBVSxHQUFHLG1DQUFnQixDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQzlELGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUM7Z0JBQ3pDLE1BQU0sR0FBRyxHQUFHLE1BQU0sVUFBVSxDQUFDO2dCQUM3QixrQkFBa0IsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ2hDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQzdCLENBQUM7aUJBQU0sQ0FBQztnQkFDTixNQUFNLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNyQyxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sV0FBVyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsWUFBWSxDQUFDLElBQXNCLEVBQUUsS0FBbUI7UUFDdEQsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRXBELElBQUksQ0FBQyxXQUFXLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDM0MsTUFBTSxJQUFJLEtBQUssQ0FBQyxhQUFhLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQy9ELENBQUM7UUFDRCxPQUFPLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVELE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQyxHQUFxQztRQUN2RSxPQUFPLElBQUksc0JBQXNCLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2xELENBQUM7Q0FDRjtBQTFGRCx3REEwRkM7QUFFRCxpREFBdUIsQ0FBQyw2QkFBNkIsQ0FBQyw0QkFBZSxDQUFDLE1BQU0sRUFBRSxzQkFBc0IsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDIn0=
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AbstractEggContext = void 0;
|
|
4
|
-
const tegg_types_1 = require("@eggjs/tegg-types");
|
|
5
|
-
const tegg_metadata_1 = require("@eggjs/tegg-metadata");
|
|
6
|
-
const EggContext_1 = require("./EggContext");
|
|
7
|
-
const tegg_common_util_1 = require("@eggjs/tegg-common-util");
|
|
8
|
-
const EggContainerFactory_1 = require("../factory/EggContainerFactory");
|
|
9
|
-
const EggObjectFactory_1 = require("../factory/EggObjectFactory");
|
|
10
|
-
const ContextHandler_1 = require("./ContextHandler");
|
|
11
|
-
class AbstractEggContext {
|
|
12
|
-
constructor() {
|
|
13
|
-
this.contextData = new Map();
|
|
14
|
-
this.protoToCreate = new Map();
|
|
15
|
-
this.eggObjectMap = new Map();
|
|
16
|
-
this.eggObjectPromiseMap = new Map();
|
|
17
|
-
this.destroyed = false;
|
|
18
|
-
}
|
|
19
|
-
addProtoToCreate(name, proto) {
|
|
20
|
-
this.protoToCreate.set(name, proto);
|
|
21
|
-
}
|
|
22
|
-
deleteProtoToCreate(name) {
|
|
23
|
-
this.protoToCreate.delete(name);
|
|
24
|
-
}
|
|
25
|
-
async destroy(ctx) {
|
|
26
|
-
await EggContext_1.EggContextLifecycleUtil.objectPreDestroy(ctx, this);
|
|
27
|
-
const objs = [];
|
|
28
|
-
for (const protoObjMap of this.eggObjectMap.values()) {
|
|
29
|
-
for (const protoObj of protoObjMap.values()) {
|
|
30
|
-
objs.push(protoObj);
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
this.eggObjectMap.clear();
|
|
34
|
-
await Promise.all(objs.map(async (obj) => {
|
|
35
|
-
await EggObjectFactory_1.EggObjectFactory.destroyObject(obj);
|
|
36
|
-
}));
|
|
37
|
-
this.contextData.clear();
|
|
38
|
-
this.destroyed = true;
|
|
39
|
-
await EggContext_1.EggContextLifecycleUtil.clearObjectLifecycle(this);
|
|
40
|
-
}
|
|
41
|
-
get(key) {
|
|
42
|
-
return this.contextData.get(key);
|
|
43
|
-
}
|
|
44
|
-
getEggObject(name, proto) {
|
|
45
|
-
if (this.destroyed) {
|
|
46
|
-
throw tegg_metadata_1.TeggError.create(`Can not read property \`${String(name)}\` because egg ctx has been destroyed`, 'read_after_ctx_destroyed');
|
|
47
|
-
}
|
|
48
|
-
const protoObjMap = this.eggObjectMap.get(proto.id);
|
|
49
|
-
if (!protoObjMap || !protoObjMap.has(name)) {
|
|
50
|
-
throw new Error(`EggObject ${String(proto.name)} not found`);
|
|
51
|
-
}
|
|
52
|
-
return protoObjMap.get(name);
|
|
53
|
-
}
|
|
54
|
-
async getOrCreateEggObject(name, proto) {
|
|
55
|
-
const protoObjMap = tegg_common_util_1.MapUtil.getOrStore(this.eggObjectMap, proto.id, new Map());
|
|
56
|
-
if (!protoObjMap.has(name)) {
|
|
57
|
-
const protoObjPromiseMap = tegg_common_util_1.MapUtil.getOrStore(this.eggObjectPromiseMap, proto.id, new Map());
|
|
58
|
-
if (!protoObjPromiseMap.has(name)) {
|
|
59
|
-
const objPromise = EggObjectFactory_1.EggObjectFactory.createObject(name, proto);
|
|
60
|
-
protoObjPromiseMap.set(name, objPromise);
|
|
61
|
-
const obj = await objPromise;
|
|
62
|
-
protoObjPromiseMap.delete(name);
|
|
63
|
-
if (!protoObjPromiseMap.size) {
|
|
64
|
-
this.eggObjectPromiseMap.delete(proto.id);
|
|
65
|
-
}
|
|
66
|
-
protoObjMap.set(name, obj);
|
|
67
|
-
}
|
|
68
|
-
else {
|
|
69
|
-
await protoObjPromiseMap.get(name);
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
return protoObjMap.get(name);
|
|
73
|
-
}
|
|
74
|
-
async init(ctx) {
|
|
75
|
-
await EggContext_1.EggContextLifecycleUtil.objectPreCreate(ctx, this);
|
|
76
|
-
for (const [name, proto] of this.protoToCreate) {
|
|
77
|
-
await this.getOrCreateEggObject(name, proto);
|
|
78
|
-
}
|
|
79
|
-
await EggContext_1.EggContextLifecycleUtil.objectPostCreate(ctx, this);
|
|
80
|
-
}
|
|
81
|
-
iterateProtoToCreate() {
|
|
82
|
-
return this.protoToCreate.entries();
|
|
83
|
-
}
|
|
84
|
-
set(key, val) {
|
|
85
|
-
this.contextData.set(key, val);
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
exports.AbstractEggContext = AbstractEggContext;
|
|
89
|
-
EggContainerFactory_1.EggContainerFactory.registerContainerGetMethod(tegg_types_1.ObjectInitType.CONTEXT, () => {
|
|
90
|
-
const ctx = ContextHandler_1.ContextHandler.getContext();
|
|
91
|
-
if (!ctx) {
|
|
92
|
-
throw new Error('ctx is required');
|
|
93
|
-
}
|
|
94
|
-
return ctx;
|
|
95
|
-
});
|
|
96
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWJzdHJhY3RFZ2dDb250ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL21vZGVsL0Fic3RyYWN0RWdnQ29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxrREFBbUQ7QUFFbkQsd0RBQWlEO0FBQ2pELDZDQUF1RDtBQUN2RCw4REFBa0Q7QUFDbEQsd0VBQXFFO0FBQ3JFLGtFQUErRDtBQUMvRCxxREFBa0Q7QUFFbEQsTUFBc0Isa0JBQWtCO0lBQXhDO1FBQ1UsZ0JBQVcsR0FBOEIsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUNuRCxrQkFBYSxHQUF3QyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQy9ELGlCQUFZLEdBQThDLElBQUksR0FBRyxFQUFFLENBQUM7UUFDcEUsd0JBQW1CLEdBQXVELElBQUksR0FBRyxFQUFFLENBQUM7UUFDcEYsY0FBUyxHQUFHLEtBQUssQ0FBQztJQWdGNUIsQ0FBQztJQTVFQyxnQkFBZ0IsQ0FBQyxJQUFZLEVBQUUsS0FBbUI7UUFDaEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxJQUFJO1FBQ3RCLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQStCO1FBQzNDLE1BQU0sb0NBQXVCLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzFELE1BQU0sSUFBSSxHQUFnQixFQUFFLENBQUM7UUFDN0IsS0FBSyxNQUFNLFdBQVcsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7WUFDckQsS0FBSyxNQUFNLFFBQVEsSUFBSSxXQUFXLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQztnQkFDNUMsSUFBSSxDQUFDLElB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
|
|
@@ -1,19 +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.ContextHandler = void 0;
|
|
7
|
-
const node_assert_1 = __importDefault(require("node:assert"));
|
|
8
|
-
class ContextHandler {
|
|
9
|
-
static getContext() {
|
|
10
|
-
(0, node_assert_1.default)(this.getContextCallback, 'getContextCallback not set');
|
|
11
|
-
return this.getContextCallback ? this.getContextCallback() : undefined;
|
|
12
|
-
}
|
|
13
|
-
static run(context, fn) {
|
|
14
|
-
(0, node_assert_1.default)(this.runInContextCallback, 'runInContextCallback not set');
|
|
15
|
-
return this.runInContextCallback(context, fn);
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
exports.ContextHandler = ContextHandler;
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29udGV4dEhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbW9kZWwvQ29udGV4dEhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsOERBQWlDO0FBS2pDLE1BQWEsY0FBYztJQUl6QixNQUFNLENBQUMsVUFBVTtRQUNmLElBQUEscUJBQU0sRUFBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsNEJBQTRCLENBQUMsQ0FBQztRQUM5RCxPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUN6RSxDQUFDO0lBRUQsTUFBTSxDQUFDLEdBQUcsQ0FBVSxPQUEwQixFQUFFLEVBQW9CO1FBQ2xFLElBQUEscUJBQU0sRUFBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsOEJBQThCLENBQUMsQ0FBQztRQUNsRSxPQUFPLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDaEQsQ0FBQztDQUNGO0FBYkQsd0NBYUMifQ==
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EggContextLifecycleUtil = void 0;
|
|
4
|
-
const tegg_lifecycle_1 = require("@eggjs/tegg-lifecycle");
|
|
5
|
-
exports.EggContextLifecycleUtil = new tegg_lifecycle_1.LifecycleUtil();
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRWdnQ29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tb2RlbC9FZ2dDb250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLDBEQUFzRDtBQUV6QyxRQUFBLHVCQUF1QixHQUFHLElBQUksOEJBQWEsRUFBaUQsQ0FBQyJ9
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EggObjectLifecycleUtil = void 0;
|
|
4
|
-
const tegg_lifecycle_1 = require("@eggjs/tegg-lifecycle");
|
|
5
|
-
exports.EggObjectLifecycleUtil = new tegg_lifecycle_1.LifecycleUtil();
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRWdnT2JqZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL21vZGVsL0VnZ09iamVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwwREFBc0Q7QUFHekMsUUFBQSxzQkFBc0IsR0FBRyxJQUFJLDhCQUFhLEVBQXdDLENBQUMifQ==
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.LoadUnitInstanceLifecycleUtil = void 0;
|
|
4
|
-
const tegg_lifecycle_1 = require("@eggjs/tegg-lifecycle");
|
|
5
|
-
exports.LoadUnitInstanceLifecycleUtil = new tegg_lifecycle_1.LifecycleUtil();
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9hZFVuaXRJbnN0YW5jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tb2RlbC9Mb2FkVW5pdEluc3RhbmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLDBEQUFzRDtBQUV6QyxRQUFBLDZCQUE2QixHQUFHLElBQUksOEJBQWEsRUFBc0QsQ0FBQyJ9
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|