15815213711
2024-08-26 67b8b6731811983447e053d4396b3708c14dfe3c
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;