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
const EE = require('../ee');
 
const Addon = {
 
  /**
   * 获取 all addon instances
   */  
  all() {
    const { CoreApp } = EE;
    if (!CoreApp) {
      throw new Error('An unknown error or Addons cannot be used by the jobs!');
    }
 
    const instances = CoreApp.addon || null;
    if (!instances) {
      throw new Error('Addons not exists or do not call directly at the top!');
    };
    return instances;
  },
 
  /**
   * 获取 addon instance
   */  
  get(name) {
    const instances = this.all();
    const instance = instances[name] || null;
    if (!instance) {
      throw new Error(`Addon class '${name}' not exists or do not call directly at the top!`);
    };
    return instance;
  },
 
};
 
module.exports = Addon;