not-node 5.0.22 → 5.1.2

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 (126) hide show
  1. package/.eslintrc.json +1 -1
  2. package/bin/not-deploy.js +52 -0
  3. package/index.js +21 -19
  4. package/package.json +1 -1
  5. package/src/app.js +61 -58
  6. package/src/auth/abstract.js +17 -19
  7. package/src/auth/const.js +8 -12
  8. package/src/auth/fields.js +143 -124
  9. package/src/auth/index.js +14 -14
  10. package/src/auth/roles.js +64 -63
  11. package/src/auth/routes.js +89 -54
  12. package/src/auth/rules.js +63 -63
  13. package/src/auth/session.js +60 -62
  14. package/src/bootstrap/form.js +13 -13
  15. package/src/bootstrap/logic.js +45 -41
  16. package/src/bootstrap/model.js +14 -17
  17. package/src/bootstrap/route.js +132 -53
  18. package/src/common.js +86 -79
  19. package/src/core/fields/ID.js +6 -6
  20. package/src/core/fields/__closed.js +3 -3
  21. package/src/core/fields/__latest.js +3 -3
  22. package/src/core/fields/__version.js +3 -3
  23. package/src/core/fields/__versions.js +3 -3
  24. package/src/core/fields/_id.js +6 -6
  25. package/src/core/fields/active.js +9 -9
  26. package/src/core/fields/codeName.js +9 -9
  27. package/src/core/fields/createdAt.js +17 -17
  28. package/src/core/fields/default.js +9 -9
  29. package/src/core/fields/description.js +11 -11
  30. package/src/core/fields/email.js +9 -9
  31. package/src/core/fields/enabled.js +9 -9
  32. package/src/core/fields/expiredAt.js +16 -16
  33. package/src/core/fields/height.js +11 -11
  34. package/src/core/fields/ip.js +10 -10
  35. package/src/core/fields/objectId.js +10 -10
  36. package/src/core/fields/owner.js +13 -13
  37. package/src/core/fields/ownerModel.js +11 -11
  38. package/src/core/fields/price.js +11 -11
  39. package/src/core/fields/requiredObject.js +10 -10
  40. package/src/core/fields/session.js +10 -10
  41. package/src/core/fields/size.js +11 -11
  42. package/src/core/fields/telephone.js +9 -9
  43. package/src/core/fields/title.js +15 -15
  44. package/src/core/fields/updatedAt.js +17 -17
  45. package/src/core/fields/userId.js +11 -12
  46. package/src/core/fields/uuid.js +11 -11
  47. package/src/core/fields/validators/email.js +6 -4
  48. package/src/core/fields/validators/owner.js +6 -4
  49. package/src/core/fields/width.js +11 -11
  50. package/src/domain.js +435 -431
  51. package/src/env.js +23 -23
  52. package/src/error.js +20 -23
  53. package/src/exceptions/db.js +23 -0
  54. package/src/exceptions/http.js +43 -0
  55. package/src/fields/index.js +106 -111
  56. package/src/form/fabric.js +19 -24
  57. package/src/form/form.js +195 -186
  58. package/src/form/index.js +2 -2
  59. package/src/generic/index.js +2 -0
  60. package/src/generic/logic.js +595 -0
  61. package/src/generic/route.js +76 -0
  62. package/src/init/additional.js +7 -7
  63. package/src/init/app.js +75 -68
  64. package/src/init/bodyparser.js +14 -14
  65. package/src/init/compression.js +6 -7
  66. package/src/init/core.js +12 -12
  67. package/src/init/cors.js +22 -24
  68. package/src/init/db/index.js +41 -43
  69. package/src/init/db/ioredis.js +28 -20
  70. package/src/init/db/mongoose.js +42 -32
  71. package/src/init/db/redis.js +59 -48
  72. package/src/init/env.js +44 -36
  73. package/src/init/express.js +18 -21
  74. package/src/init/fileupload.js +8 -10
  75. package/src/init/http.js +65 -47
  76. package/src/init/index.js +141 -148
  77. package/src/init/informer.js +7 -9
  78. package/src/init/methodoverride.js +4 -6
  79. package/src/init/middleware.js +23 -26
  80. package/src/init/modules.js +4 -4
  81. package/src/init/monitoring.js +8 -8
  82. package/src/init/rateLimiter.js +53 -45
  83. package/src/init/routes.js +67 -69
  84. package/src/init/security.js +37 -33
  85. package/src/init/sequence.js +111 -107
  86. package/src/init/sequence.standart.js +54 -56
  87. package/src/init/sessions/index.js +21 -21
  88. package/src/init/sessions/mongoose.js +49 -36
  89. package/src/init/sessions/redis.js +28 -27
  90. package/src/init/static.js +53 -40
  91. package/src/init/template.js +17 -17
  92. package/src/lib.js +230 -200
  93. package/src/manifest/batchRunner.js +26 -25
  94. package/src/manifest/initializator/forms.js +24 -24
  95. package/src/manifest/initializator/index.js +8 -10
  96. package/src/manifest/initializator/manifests.js +45 -42
  97. package/src/manifest/initializator/models.js +37 -34
  98. package/src/manifest/manifest.filter.js +130 -97
  99. package/src/manifest/manifest.js +103 -77
  100. package/src/manifest/module.js +350 -360
  101. package/src/manifest/registrator/fields.js +90 -85
  102. package/src/manifest/registrator/forms.js +47 -47
  103. package/src/manifest/registrator/index.js +14 -16
  104. package/src/manifest/registrator/locales.js +17 -16
  105. package/src/manifest/registrator/logics.js +66 -64
  106. package/src/manifest/registrator/models.js +64 -62
  107. package/src/manifest/registrator/routes.js +171 -132
  108. package/src/manifest/registrator/routes.ws.js +109 -103
  109. package/src/manifest/route.js +216 -161
  110. package/src/model/buildValidator.js +53 -42
  111. package/src/model/default.js +304 -286
  112. package/src/model/enrich.js +69 -61
  113. package/src/model/increment.js +124 -137
  114. package/src/model/proto.js +179 -148
  115. package/src/model/routine.js +85 -76
  116. package/src/model/utils.js +33 -0
  117. package/src/model/versioning.js +148 -130
  118. package/src/obsolete.js +12 -8
  119. package/src/parser.js +29 -22
  120. package/src/repos.js +29 -31
  121. package/src/rollup.js +75 -65
  122. package/src/shell.helpers.js +28 -28
  123. package/static.js +31 -0
  124. package/src/generic/router.js +0 -16
  125. package/src/manifest/module.models.js +0 -0
  126. package/src/manifest/module.status.js +0 -0
package/src/init/app.js CHANGED
@@ -1,80 +1,87 @@
1
- const notAppConstructor = require('../app.js');
2
- const ENV = (process.env.NODE_ENV || 'development');
3
- const path = require('path');
4
- const logger = require('not-log');
5
- const log = logger(module, 'not-node//init');
6
- const {
7
- notErrorReporter
8
- } = require('not-error');
1
+ const notAppConstructor = require("../app.js");
2
+ const ENV = process.env.NODE_ENV || "development";
3
+ const path = require("path");
4
+ const logger = require("not-log");
5
+ const log = logger(module, "not-node//init");
6
+ const { notErrorReporter } = require("not-error");
9
7
 
10
- const emit = require('./additional').run;
8
+ const emit = require("./additional").run;
11
9
 
12
- module.exports = class InitApp{
13
- static AppConstructor = notAppConstructor;
14
- static ReporterConstructor = notErrorReporter;
10
+ module.exports = class InitApp {
11
+ static AppConstructor = notAppConstructor;
12
+ static ReporterConstructor = notErrorReporter;
15
13
 
16
- static async createApp({config, options, master}){
17
- await emit('app.create.pre', {config, options, master});
18
- master.setApp(new InitApp.AppConstructor({mongoose: master.getMongoose()}));
19
- await emit('app.create.post', {config, options, master});
20
- }
21
-
22
- static async setAppEnvs({config, options, master}){
23
- await emit('app.setEnv.pre', {config, options, master});
24
- master.setEnv('hostname', config.get('hostname'));
25
- master.setEnv('server', `https://` + config.get('host'));
26
- master.setEnv('appPath', config.get('appPath'));
27
- master.setEnv('name', master.getManifest().name);
28
- master.setEnv('fullServerName', config.get('fullServerName'));
29
- master.setEnv('dbDumpsPath', config.get('dbDumpsPath'));
30
- master.setEnv('rolesPriority', master.getManifest().targets.server.roles);
31
- master.getApp().ENV = ENV;
32
- await emit('app.setEnv.post', {config, options, master});
33
- }
14
+ static async createApp({ config, options, master }) {
15
+ await emit("app.create.pre", { config, options, master });
16
+ master.setApp(
17
+ new InitApp.AppConstructor({ mongoose: master.getMongoose() })
18
+ );
19
+ await emit("app.create.post", { config, options, master });
20
+ }
34
21
 
35
- static async initCore({config, options, master}){
36
- await emit('app.initCore.pre', {config, options, master});
37
- master.getApp().importModuleFrom(path.join(__dirname, '../core'));
38
- await emit('app.initCore.post', {config, options, master});
39
- }
22
+ static async setAppEnvs({ config, options, master }) {
23
+ await emit("app.setEnv.pre", { config, options, master });
24
+ master.setEnv("hostname", config.get("hostname"));
25
+ master.setEnv("server", `https://` + config.get("host"));
26
+ master.setEnv("appPath", config.get("appPath"));
27
+ master.setEnv("name", master.getManifest().name);
28
+ master.setEnv("fullServerName", config.get("fullServerName"));
29
+ master.setEnv("dbDumpsPath", config.get("dbDumpsPath"));
30
+ master.setEnv(
31
+ "rolesPriority",
32
+ master.getManifest().targets.server.roles
33
+ );
34
+ master.getApp().ENV = ENV;
35
+ await emit("app.setEnv.post", { config, options, master });
36
+ }
40
37
 
41
- static async importModules({config, options, master}){
42
- await emit('app.importModules.pre', {config, options, master});
43
- master.getApp().importModulesFrom(config.get('modulesPath'));
44
- if (Array.isArray(config.get('importModulesFromNPM'))) {
45
- config.get('importModulesFromNPM').forEach((modName) => {
46
- master.getApp().importModuleFrom(path.join(config.get('npmPath'), modName), modName);
47
- });
38
+ static async initCore({ config, options, master }) {
39
+ await emit("app.initCore.pre", { config, options, master });
40
+ master.getApp().importModuleFrom(path.join(__dirname, "../core"));
41
+ await emit("app.initCore.post", { config, options, master });
48
42
  }
49
- await emit('app.importModules.post', {config, options, master});
50
- }
51
43
 
52
- static async createReporter({config,/* options,*/ master}){
53
- try {
54
- master.getApp().reporter = new InitApp.ReporterConstructor({
55
- origin:{
56
- server: config.get('host')
57
- },
58
- });
59
- master.getApp().logger = logger(module, 'notApplication');
60
- } catch (e) {
61
- log.error(e);
44
+ static async importModules({ config, options, master }) {
45
+ await emit("app.importModules.pre", { config, options, master });
46
+ master.getApp().importModulesFrom(config.get("modulesPath"));
47
+ if (Array.isArray(config.get("importModulesFromNPM"))) {
48
+ config.get("importModulesFromNPM").forEach((modName) => {
49
+ master
50
+ .getApp()
51
+ .importModuleFrom(
52
+ path.join(config.get("npmPath"), modName),
53
+ modName
54
+ );
55
+ });
56
+ }
57
+ await emit("app.importModules.post", { config, options, master });
62
58
  }
63
- }
64
59
 
65
- async run({config, options, master}) {
66
- try{
67
- log.info('Init not-app...');
68
- await emit('app.pre', {config, options, master});
69
- await InitApp.createApp({config, options, master});
70
- await InitApp.setAppEnvs({config, options, master});
71
- await InitApp.initCore({config, options, master});
72
- await InitApp.importModules({config, options, master});
73
- await InitApp.createReporter({config, options, master});
74
- await emit('app.post', {config, options, master});
75
- }catch(e){
76
- master.throwError(e.message, 1);
60
+ static async createReporter({ config, /* options,*/ master }) {
61
+ try {
62
+ master.getApp().reporter = new InitApp.ReporterConstructor({
63
+ origin: {
64
+ server: config.get("host"),
65
+ },
66
+ });
67
+ master.getApp().logger = logger(module, "notApplication");
68
+ } catch (e) {
69
+ log.error(e);
70
+ }
77
71
  }
78
- }
79
72
 
73
+ async run({ config, options, master }) {
74
+ try {
75
+ log.info("Init not-app...");
76
+ await emit("app.pre", { config, options, master });
77
+ await InitApp.createApp({ config, options, master });
78
+ await InitApp.setAppEnvs({ config, options, master });
79
+ await InitApp.initCore({ config, options, master });
80
+ await InitApp.importModules({ config, options, master });
81
+ await InitApp.createReporter({ config, options, master });
82
+ await emit("app.post", { config, options, master });
83
+ } catch (e) {
84
+ master.throwError(e.message, 1);
85
+ }
86
+ }
80
87
  };
@@ -1,15 +1,15 @@
1
- module.exports = class InitBodyparser{
2
- async run({ /*options, config,*/
3
- master
4
- }) {
5
- //HTTP input formating
6
- const bodyParser = require('body-parser');
7
- master.getServer().use(bodyParser.json({limit: '150mb'}));
8
- // for parsing application/json
9
- master.getServer().use(bodyParser.urlencoded({
10
- limit: '150mb',
11
- extended: true
12
- }));
13
- // for parsing application/x-www-form-urlencode
14
- }
1
+ module.exports = class InitBodyparser {
2
+ async run({ /*options, config,*/ master }) {
3
+ //HTTP input formating
4
+ const bodyParser = require("body-parser");
5
+ master.getServer().use(bodyParser.json({ limit: "150mb" }));
6
+ // for parsing application/json
7
+ master.getServer().use(
8
+ bodyParser.urlencoded({
9
+ limit: "150mb",
10
+ extended: true,
11
+ })
12
+ );
13
+ // for parsing application/x-www-form-urlencode
14
+ }
15
15
  };
@@ -1,8 +1,7 @@
1
-
2
- module.exports = class InitCompression{
3
- async run({master/*, config*/}){
4
- //compress output
5
- const compression = require('compression');
6
- master.getServer().use(compression());
7
- }
1
+ module.exports = class InitCompression {
2
+ async run({ master /*, config*/ }) {
3
+ //compress output
4
+ const compression = require("compression");
5
+ master.getServer().use(compression());
6
+ }
8
7
  };
package/src/init/core.js CHANGED
@@ -1,15 +1,15 @@
1
- const path = require('path');
2
- const Fields = require('../fields');
3
- const notLocale = require('not-locale');
1
+ const path = require("path");
2
+ const Fields = require("../fields");
3
+ const notLocale = require("not-locale");
4
4
 
5
- module.exports = class InitCore{
6
- static paths = {
7
- fields: path.resolve(__dirname, '../core/fields'),
8
- locales: path.resolve(__dirname, '../core/locales'),
9
- };
5
+ module.exports = class InitCore {
6
+ static paths = {
7
+ fields: path.resolve(__dirname, "../core/fields"),
8
+ locales: path.resolve(__dirname, "../core/locales"),
9
+ };
10
10
 
11
- async run(){
12
- Fields.importFromDir(InitCore.paths.fields);
13
- await notLocale.fromDir(InitCore.paths.locales, 'core');
14
- }
11
+ async run() {
12
+ Fields.importFromDir(InitCore.paths.fields);
13
+ await notLocale.fromDir(InitCore.paths.locales, "core");
14
+ }
15
15
  };
package/src/init/cors.js CHANGED
@@ -1,27 +1,25 @@
1
- const log = require('not-log')(module, 'not-node//init');
2
- const ADDS = require('./additional');
1
+ const log = require("not-log")(module, "not-node//init");
2
+ const ADDS = require("./additional");
3
3
 
4
- module.exports = class InitCORS{
5
-
6
- static getOriginFilter(whitelist){
7
- return (origin, callback) => {
8
- callback(null, whitelist.includes(origin));
9
- };
10
- }
11
-
12
- async run({config, options, master}) {
13
- await ADDS.run('cors.pre', { config, options, master });
14
- const cors = require('cors');
15
- log.info('Setting up CORS rules...');
16
- const whitelist = config.get('cors');
17
- log.info('Whitelist: ', whitelist.join(', '));
18
- let corsOptions = {
19
- origin: InitCORS.getOriginFilter(whitelist),
20
- credentials: true
21
- };
22
- log.info('CORS options', corsOptions);
23
- master.getServer().use(cors(corsOptions));
24
- await ADDS.run('cors.post', { config, options, master });
25
- }
4
+ module.exports = class InitCORS {
5
+ static getOriginFilter(whitelist) {
6
+ return (origin, callback) => {
7
+ callback(null, whitelist.includes(origin));
8
+ };
9
+ }
26
10
 
11
+ async run({ config, options, master }) {
12
+ await ADDS.run("cors.pre", { config, options, master });
13
+ const cors = require("cors");
14
+ log.info("Setting up CORS rules...");
15
+ const whitelist = config.get("cors");
16
+ log.info("Whitelist: ", whitelist.join(", "));
17
+ let corsOptions = {
18
+ origin: InitCORS.getOriginFilter(whitelist),
19
+ credentials: true,
20
+ };
21
+ log.info("CORS options", corsOptions);
22
+ master.getServer().use(cors(corsOptions));
23
+ await ADDS.run("cors.post", { config, options, master });
24
+ }
27
25
  };
@@ -1,50 +1,48 @@
1
- const path = require('path');
2
- const {objHas} = require('../../common');
1
+ const path = require("path");
2
+ const { objHas } = require("../../common");
3
3
 
4
- module.exports = class InitDB{
4
+ module.exports = class InitDB {
5
+ static default = path.resolve(__dirname, "./mongoose.js");
5
6
 
6
- static default = path.resolve(__dirname, './mongoose.js');
7
+ static drivers = {
8
+ ioredis: path.resolve(__dirname, "./ioredis.js"),
9
+ redis: path.resolve(__dirname, "./redis.js"),
10
+ mongoose: path.resolve(__dirname, "./mongoose.js"),
11
+ };
7
12
 
8
- static drivers = {
9
- 'ioredis': path.resolve(__dirname, './ioredis.js'),
10
- 'redis': path.resolve(__dirname, './redis.js'),
11
- 'mongoose': path.resolve(__dirname, './mongoose.js')
12
- };
13
-
14
- /**
15
- * Returns constructor of DB driver
16
- * @param {string} driver name of db engine
17
- * @return {Object} class constructor or undefined
18
- **/
19
- static getConstructor(driver){
20
- if(objHas(InitDB.drivers, driver)){
21
- return require(InitDB.drivers[driver]);
22
- }else{
23
- return require(InitDB.default);
13
+ /**
14
+ * Returns constructor of DB driver
15
+ * @param {string} driver name of db engine
16
+ * @return {Object} class constructor or undefined
17
+ **/
18
+ static getConstructor(driver) {
19
+ if (objHas(InitDB.drivers, driver)) {
20
+ return require(InitDB.drivers[driver]);
21
+ } else {
22
+ return require(InitDB.default);
23
+ }
24
24
  }
25
- }
26
25
 
27
- /**
28
- * db = {
29
- * [db_driver_name_1]: options,
30
- * [db_driver_name_2]: options,
31
- * }
32
- * to get driver require('not-node').getEnv(db_driver_name_2)
33
- * require('not-node').getEnv('mongoose')
34
- * require('not-node').getEnv('redis')
35
- **/
36
- async run({master, config, options}) {
37
- const conf = config.get('db');
38
- for(let driver in conf){
39
- const Constructor = InitDB.getConstructor(driver);
40
- await new Constructor().run({
41
- master,
42
- config,
43
- options,
44
- conf: conf[driver],
45
- alias: driver
46
- });
26
+ /**
27
+ * db = {
28
+ * [db_driver_name_1]: options,
29
+ * [db_driver_name_2]: options,
30
+ * }
31
+ * to get driver require('not-node').getEnv(db_driver_name_2)
32
+ * require('not-node').getEnv('mongoose')
33
+ * require('not-node').getEnv('redis')
34
+ **/
35
+ async run({ master, config, options }) {
36
+ const conf = config.get("db");
37
+ for (let driver in conf) {
38
+ const Constructor = InitDB.getConstructor(driver);
39
+ await new Constructor().run({
40
+ master,
41
+ config,
42
+ options,
43
+ conf: conf[driver],
44
+ alias: driver,
45
+ });
46
+ }
47
47
  }
48
- }
49
-
50
48
  };
@@ -1,23 +1,31 @@
1
- const log = require('not-log')(module, 'not-node//init');
2
- const ADDS = require('../additional');
3
-
4
- module.exports = class InitDBRedisIO{
5
-
6
- static async initRedis({ conf, master, alias}) {
7
- log.info('Setting up ioredis connection...');
8
- const Redis = require('ioredis');
9
- const redisClient = new Redis(conf);
10
- redisClient.on('error', log.error);
11
- master.setEnv(`db.${alias}`, redisClient);
12
- log.log('redis client');
13
- }
14
-
15
- async run({config, options, master, conf, alias}){
16
- await ADDS.run(`db.${alias}.pre`, {config, options, master, conf, alias});
17
- await InitDBRedisIO.initRedis({conf, master, alias});
18
- await ADDS.run(`db.${alias}.post`, {config, options, master, conf, alias});
19
- }
20
-
1
+ const log = require("not-log")(module, "not-node//init");
2
+ const ADDS = require("../additional");
21
3
 
4
+ module.exports = class InitDBRedisIO {
5
+ static async initRedis({ conf, master, alias }) {
6
+ log.info("Setting up ioredis connection...");
7
+ const Redis = require("ioredis");
8
+ const redisClient = new Redis(conf);
9
+ redisClient.on("error", log.error);
10
+ master.setEnv(`db.${alias}`, redisClient);
11
+ log.log("redis client");
12
+ }
22
13
 
14
+ async run({ config, options, master, conf, alias }) {
15
+ await ADDS.run(`db.${alias}.pre`, {
16
+ config,
17
+ options,
18
+ master,
19
+ conf,
20
+ alias,
21
+ });
22
+ await InitDBRedisIO.initRedis({ conf, master, alias });
23
+ await ADDS.run(`db.${alias}.post`, {
24
+ config,
25
+ options,
26
+ master,
27
+ conf,
28
+ alias,
29
+ });
30
+ }
23
31
  };
@@ -1,37 +1,47 @@
1
- const log = require('not-log')(module, 'not-node//init');
2
- const ADDS = require('../additional');
1
+ const log = require("not-log")(module, "not-node//init");
2
+ const ADDS = require("../additional");
3
3
 
4
- module.exports = class InitDBMongoose{
5
-
6
- static fixMongooseOptions(opts){
7
- let options = JSON.parse(JSON.stringify(opts));
8
- delete options.host;
9
- delete options.db;
10
- return options;
11
- }
12
-
13
- static async initMongoose({ conf, master, alias}) {
14
- const Increment = require('../../model/increment.js');
15
- log.info('Setting up mongoose connection...');
16
- const mongoose = require('mongoose');
17
- mongoose.Promise = global.Promise;
18
- await mongoose.connect(
19
- conf.uri,
20
- InitDBMongoose.fixMongooseOptions(conf.options)
21
- );
22
- log.info('Mongoose connected...');
23
- if(conf.increment !== false){
24
- Increment.init(mongoose);
4
+ module.exports = class InitDBMongoose {
5
+ static fixMongooseOptions(opts) {
6
+ let options = JSON.parse(JSON.stringify(opts));
7
+ delete options.host;
8
+ delete options.db;
9
+ return options;
25
10
  }
26
- master.setMongoose(mongoose);
27
- master.setEnv(`db.${alias}`, mongoose);
28
- }
29
11
 
30
- async run({config, options, master, conf, alias}){
31
- log.info(`db.${alias}.pre`);
32
- await ADDS.run(`db.${alias}.pre`, {config, options, master, conf, alias});
33
- await InitDBMongoose.initMongoose({conf, master, alias});
34
- await ADDS.run(`db.${alias}.post`, {config, options, master, conf, alias});
35
- }
12
+ static async initMongoose({ conf, master, alias }) {
13
+ const Increment = require("../../model/increment.js");
14
+ log.info("Setting up mongoose connection...");
15
+ const mongoose = require("mongoose");
16
+ mongoose.Promise = global.Promise;
17
+ await mongoose.connect(
18
+ conf.uri,
19
+ InitDBMongoose.fixMongooseOptions(conf.options)
20
+ );
21
+ log.info("Mongoose connected...");
22
+ if (conf.increment !== false) {
23
+ Increment.init(mongoose);
24
+ }
25
+ master.setMongoose(mongoose);
26
+ master.setEnv(`db.${alias}`, mongoose);
27
+ }
36
28
 
29
+ async run({ config, options, master, conf, alias }) {
30
+ log.info(`db.${alias}.pre`);
31
+ await ADDS.run(`db.${alias}.pre`, {
32
+ config,
33
+ options,
34
+ master,
35
+ conf,
36
+ alias,
37
+ });
38
+ await InitDBMongoose.initMongoose({ conf, master, alias });
39
+ await ADDS.run(`db.${alias}.post`, {
40
+ config,
41
+ options,
42
+ master,
43
+ conf,
44
+ alias,
45
+ });
46
+ }
37
47
  };
@@ -1,49 +1,60 @@
1
- const {notError} = require('not-error');
2
- const log = require('not-log')(module, 'not-node//init');
3
- const ADDS = require('../additional');
4
-
5
- module.exports = class InitDBRedis{
6
-
7
- static async initRedis({ conf, master, alias}) {
8
- log.info('Setting up redis connection...');
9
- const redis = require('redis');
10
- const redisClient = redis.createClient(conf);
11
- InitDBRedis.bindClientEvents({master, redisClient});
12
- master.setEnv(`db.${alias}`, redisClient);
13
- }
14
-
15
- async run({config, options, master, conf, alias}){
16
- await ADDS.run(`db.${alias}.pre`, {config, options, master, conf, alias});
17
- await InitDBRedis.initRedis({conf, master, alias});
18
- await ADDS.run(`db.${alias}.post`, {config, options, master, conf, alias});
19
- }
20
-
21
- static bindClientEvents({redisClient, master}){
22
- redisClient.on('error', (err) => {
23
- log.error('Redis client error: ', err);
24
- master.getApp().report(new notError('Redis connection failed', {}, err));
25
- });
26
-
27
- redisClient.on('warning', (err) => {
28
- log.error('Redis client warning: ', err);
29
- });
30
-
31
- redisClient.on('connect', function() {
32
- log.info('Redis client connected to DB');
33
- });
34
-
35
- redisClient.on('ready', function() {
36
- log.info('Redis client ready');
37
- });
38
-
39
- redisClient.on('reconnecting', function() {
40
- log.info('Redis client reconnecting');
41
- });
42
-
43
- redisClient.on('end', function() {
44
- log.info('Redis client closed connection');
45
- });
46
- }
47
-
48
-
1
+ const { notError } = require("not-error");
2
+ const log = require("not-log")(module, "not-node//init");
3
+ const ADDS = require("../additional");
4
+
5
+ module.exports = class InitDBRedis {
6
+ static async initRedis({ conf, master, alias }) {
7
+ log.info("Setting up redis connection...");
8
+ const redis = require("redis");
9
+ const redisClient = redis.createClient(conf);
10
+ InitDBRedis.bindClientEvents({ master, redisClient });
11
+ master.setEnv(`db.${alias}`, redisClient);
12
+ }
13
+
14
+ async run({ config, options, master, conf, alias }) {
15
+ await ADDS.run(`db.${alias}.pre`, {
16
+ config,
17
+ options,
18
+ master,
19
+ conf,
20
+ alias,
21
+ });
22
+ await InitDBRedis.initRedis({ conf, master, alias });
23
+ await ADDS.run(`db.${alias}.post`, {
24
+ config,
25
+ options,
26
+ master,
27
+ conf,
28
+ alias,
29
+ });
30
+ }
31
+
32
+ static bindClientEvents({ redisClient, master }) {
33
+ redisClient.on("error", (err) => {
34
+ log.error("Redis client error: ", err);
35
+ master
36
+ .getApp()
37
+ .report(new notError("Redis connection failed", {}, err));
38
+ });
39
+
40
+ redisClient.on("warning", (err) => {
41
+ log.error("Redis client warning: ", err);
42
+ });
43
+
44
+ redisClient.on("connect", function () {
45
+ log.info("Redis client connected to DB");
46
+ });
47
+
48
+ redisClient.on("ready", function () {
49
+ log.info("Redis client ready");
50
+ });
51
+
52
+ redisClient.on("reconnecting", function () {
53
+ log.info("Redis client reconnecting");
54
+ });
55
+
56
+ redisClient.on("end", function () {
57
+ log.info("Redis client closed connection");
58
+ });
59
+ }
49
60
  };