node-dependency-injection
Version:
The NodeDependencyInjection component allows you to standardize and centralize the way objects are constructed in your application.
1 lines • 4.12 kB
JavaScript
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports["default"]=void 0;var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _MethodCallEmptyException=_interopRequireDefault(require("./Exception/MethodCallEmptyException"));var _AttributesMapException=_interopRequireDefault(require("./Exception/AttributesMapException"));var Definition=function(){function Definition(){var Object=arguments.length>0&&arguments[0]!==undefined?arguments[0]:null;var args=arguments.length>1&&arguments[1]!==undefined?arguments[1]:[];var overrideArgs=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];(0,_classCallCheck2["default"])(this,Definition);this._Object=Object;this._args=args;this._overrideArgs=overrideArgs;this._calls=[];this._tags=[];this._properties=new Map();this._lazy=false;this._deprecated=null;this._factory=null;this._public=true;this._synthetic=false;this._decoratedService=null;this._decorationPriority=null;this._shared=true;this._abstract=false;this._appendArgs=[];this._parent=null;}return(0,_createClass2["default"])(Definition,[{key:"abstract",get:function get(){return this._abstract;},set:function set(value){this._abstract=value;}},{key:"decoratedService",get:function get(){return this._decoratedService;},set:function set(value){this._decoratedService=value;}},{key:"decorationPriority",get:function get(){return this._decorationPriority;},set:function set(value){this._decorationPriority=value;}},{key:"public",get:function get(){return this._public;},set:function set(value){this._public=value;}},{key:"factory",get:function get(){return this._factory;}},{key:"deprecated",get:function get(){return this._deprecated;},set:function set(value){this._deprecated=value;}},{key:"lazy",get:function get(){return this._lazy;},set:function set(value){this._lazy=value;}},{key:"Object",get:function get(){return this._Object;},set:function set(value){this._Object=value;}},{key:"args",get:function get(){return this._args;},set:function set(args){this._args=args;}},{key:"calls",get:function get(){return this._calls;}},{key:"tags",get:function get(){return this._tags;}},{key:"properties",get:function get(){return this._properties;}},{key:"appendArgs",get:function get(){return this._appendArgs;},set:function set(appendArgs){this._appendArgs=appendArgs;}},{key:"synthetic",get:function get(){return this._synthetic;},set:function set(value){this._synthetic=value;}},{key:"shared",get:function get(){return this._shared;},set:function set(value){this._shared=value;}},{key:"parent",get:function get(){return this._parent;},set:function set(value){this._parent=value;}},{key:"overrideArgs",get:function get(){return this._overrideArgs;},set:function set(value){this._overrideArgs=value;}},{key:"setFactory",value:function setFactory(Object,method){this._factory={Object:Object,method:method};}},{key:"addArgument",value:function addArgument(argument){var append=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var map=append?this._appendArgs:this._args;map.push(argument);return this;}},{key:"addMethodCall",value:function addMethodCall(method){var args=arguments.length>1&&arguments[1]!==undefined?arguments[1]:[];if(method.length===0){throw new _MethodCallEmptyException["default"]();}this._calls.push({method:method,args:args});return this;}},{key:"addTag",value:function addTag(name){var attributes=arguments.length>1&&arguments[1]!==undefined?arguments[1]:new Map();if(attributes instanceof Map){this._tags.push({name:name,attributes:attributes});return this;}throw new _AttributesMapException["default"]();}},{key:"addProperty",value:function addProperty(key,value){this._properties.set(key,value);return this;}},{key:"isPublic",value:function isPublic(){var bypassPublic=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;return this["public"]||!bypassPublic&&this["public"];}}]);}();var _default=exports["default"]=Definition;