Class: notDomain

notDomain

Domain

new notDomain(options)

Parameters:
Name Type Description
options object application options { mongoose: mongooseConnectionToDB modulesCollectionPaths: [__dirname + '/modules'], //each path to folder with modules modulesPaths: [], //each path to module modules: { filestore: require('not-filestore') //each npm not-* module with custom overriden name as key } }
Example

Domain creation routine

let App = new new notDomain({
   mongoose: mongooseLink
   modulesCollectionPaths: [__dirname + '/modules'], //each path to folder with modules
   modulesPaths: [],  //each path to module
   modules: {
     filestore: require('not-filestore') //each npm not-* module with custom overriden name as key
   }
 })
   .importModuleFrom(__dirname+'/anotherModule', 'anotherCustomModuleName')  //import module from path
   .importModulesFrom(__dirname+'/directoryOfUsefullessModules')
   .importModule(require('notModule'), 'notModule');

Members


DEFAULT_INFORMER

informer - messages

DEFAULT_REPORTER

reporter - errors

logger

logger

Methods


<async> execInModules(methodName)

Execute method in modules
Parameters:
Name Type Description
methodName string name of the method to execute

fabricate()

Execute fabricateModels methods on all registered modules Create mongoose models.

forEachMod(func)

Cycles throu all imported modules, passes name, module, and itself to argument function
Parameters:
Name Type Description
func function function to perfom some action with module

getEnv(key)

Returns application environment variable
Parameters:
Name Type Description
key string name of var
Returns:
value or undefined
Type
object | undefined

getLogic(name)

Returns logic
Parameters:
Name Type Description
name string 'logicName' or 'moduleName//logicName' ('User', 'moduleName//User')
Returns:
logic
Type
object

getLogicFile(logicName)

Returns file with logic declarations
Parameters:
Name Type Description
logicName string 'logicName' or 'moduleName//logicName'
Returns:
CommonJS module object
Type
object

getModel(name)

Returns model
Parameters:
Name Type Description
name string 'modelName' or 'moduleName//modelName' ('User', 'moduleName//User')
Returns:
model
Type
object

getModelFile(modelName)

Returns file with model declarations
Parameters:
Name Type Description
modelName string 'modelName' or 'moduleName//modelName'
Returns:
CommonJS module object
Type
object

getModelSchema(modelName)

Returns specified by name or 'moduleName//modelName' model Schema
Parameters:
Name Type Description
modelName string 'modelName' or 'moduleName//modelName'
Returns:
model schema
Type
object

getModule(moduleName)

Return module by specified module name
Parameters:
Name Type Description
moduleName string 'moduleName'
Returns:
module
Type
object

getRoute(name)

Returns route
Parameters:
Name Type Description
name string 'moduleName//routeName//functionName' ('not-user//user//add')
Returns:
route
Type
function

getStatus()

Returns info about whole system. Modules - total count, list, content Routes - total count, list Models - total count, list Actions - total count, list Roles - total count, list
Returns:
complex object with results
Type
Object

importModule(mod, moduleName)

Import module object. Chainable.
Parameters:
Name Type Description
mod object notModule instance
moduleName string name under witch module will be registered
Returns:
notDomain
Type
object

importModuleFrom(modulePath, moduleName)

Import single module from module dir. Chainable.
Parameters:
Name Type Description
modulePath string path to module directory
moduleName string name under witch module will be registered
Returns:
notDomain
Type
object

importModulesFrom(modulesPath)

Importing modules from directory. Chainable.
Parameters:
Name Type Description
modulesPath string path to container directory
Returns:
notDomain
Type
object

setEnv(key, val)

Setting application environment variable
Parameters:
Name Type Description
key string name of var
val object value
Returns:
chainable
Type
notDomain

shutdown(timeout)

Logging message about shutdown. Emits event app:shutdown Exits from process after timeout
Parameters:
Name Type Default Description
timeout number OPT_DEFAULT_SHUTDOWN_TIMEOUT time in ms before exit