1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
| const EE = require('../ee');
|
| const Services = {
|
| /**
| * 获取 all addon instances
| */
| all() {
| const { CoreApp } = EE;
| if (!CoreApp) {
| throw new Error('An unknown error or Services cannot be used by the jobs!');
| }
|
| const instances = CoreApp.service || null;
| if (!instances) {
| throw new Error('Services not exists or do not call directly at the top!');
| };
| return instances;
| },
|
| /**
| * 获取 addon instance
| */
| get(name) {
| const instances = this.all();
|
| const actions = name.split('.');
| let obj = instances;
| actions.forEach(key => {
| obj = obj[key];
| });
|
| if (!obj) {
| throw new Error(`Service class '${name}' not exists or do not call directly at the top!`);
| };
| return obj;
| },
|
| };
|
| module.exports = Services;
|
|