Built motion from commit (unavailable).|2.5.26
[motion2.git] / server / services / routing / lib / rule-engine.js
index 78fcf0e..82112b9 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x074d=['matchPath','noop','findRules','turn','prioritize','priority','map','toString','fromJSON','isString','parse','exports','events','EventEmitter','init','isNil','register','ignoreFactChanges','inherits','prototype','rules','activeRules','isArray','concat','isObject','push','sync','orderBy','asc','execute','result','clone','consequence','ruleRef','nextTick','call','length','condition'];(function(_0x157d23,_0x4027b9){var _0x5b93cc=function(_0x18af99){while(--_0x18af99){_0x157d23['push'](_0x157d23['shift']());}};_0x5b93cc(++_0x4027b9);}(_0x074d,0xf0));var _0xd074=function(_0x23346c,_0x524fb6){_0x23346c=_0x23346c-0x0;var _0x13d53d=_0x074d[_0x23346c];return _0x13d53d;};'use strict';var _=require('lodash');var util=require('util');var EventEmitter=require(_0xd074('0x0'))[_0xd074('0x1')];function RuleEngine(_0x3ba272,_0x2028e6){this[_0xd074('0x2')]();if(!_[_0xd074('0x3')](_0x3ba272)){this[_0xd074('0x4')](_0x3ba272);}if(_0x2028e6){this[_0xd074('0x5')]=_0x2028e6[_0xd074('0x5')];}return this;}util[_0xd074('0x6')](RuleEngine,EventEmitter);RuleEngine[_0xd074('0x7')][_0xd074('0x2')]=function(_0x1aee7a){this[_0xd074('0x8')]=[];this[_0xd074('0x9')]=[];};RuleEngine[_0xd074('0x7')]['register']=function(_0x2ac3d2){if(Array[_0xd074('0xa')](_0x2ac3d2)){this[_0xd074('0x8')]=this[_0xd074('0x8')][_0xd074('0xb')](_0x2ac3d2);}else if(_0x2ac3d2!==null&&_[_0xd074('0xc')](_0x2ac3d2)){this[_0xd074('0x8')][_0xd074('0xd')](_0x2ac3d2);}this['sync']();};RuleEngine[_0xd074('0x7')][_0xd074('0xe')]=function(){this[_0xd074('0x9')]=this[_0xd074('0x8')]['filter'](function(_0x16b48a){if(_[_0xd074('0x3')](_0x16b48a['on'])){_0x16b48a['on']=!![];}if(_0x16b48a['on']===!![]){return _0x16b48a;}});this[_0xd074('0x9')]=_[_0xd074('0xf')](this[_0xd074('0x9')],['p'],[_0xd074('0x10')]);};RuleEngine['prototype'][_0xd074('0x11')]=function(_0x5dd300,_0x58732a){var _0x5eb373=![];_0x5dd300[_0xd074('0x12')]=!![];var _0x3556ef=_[_0xd074('0x13')](_0x5dd300);var _0x16821f=_['clone'](_0x5dd300);var _0x9610f4=this[_0xd074('0x9')];var _0x39dfc0=[];var _0x5740e1=this[_0xd074('0x5')];(function FnRuleLoop(_0x4b61fe){var _0x456a57={'rules':function(){return _0x9610f4;},'rule':function(){return _0x9610f4[_0x4b61fe];},'when':function(_0x4b4f15){if(_0x4b4f15){var _0xa166e0=_0x9610f4[_0x4b61fe][_0xd074('0x14')];_0xa166e0[_0xd074('0x15')]=_0x9610f4[_0x4b61fe]['id']||_0x9610f4[_0x4b61fe]['name']||'index_'+_0x4b61fe;process[_0xd074('0x16')](function(){_0x39dfc0['push'](_0xa166e0[_0xd074('0x15')]);_0xa166e0[_0xd074('0x17')](_0x3556ef,_0x456a57);});}else{process['nextTick'](function(){_0x456a57['next']();});}},'restart':function(){return FnRuleLoop(0x0);},'stop':function(){_0x5eb373=!![];return FnRuleLoop(0x0);},'next':function(_0x2ee9f2){if(!_0x5740e1&&!_['isEqual'](_0x16821f,_0x3556ef)){_0x16821f=_[_0xd074('0x13')](_0x3556ef);process[_0xd074('0x16')](function(){_0x456a57['restart']();});}else{process[_0xd074('0x16')](function(){if(_[_0xd074('0x3')](_0x2ee9f2)){return FnRuleLoop(_0x4b61fe+0x1);}else{return FnRuleLoop(_0x2ee9f2);}});}}};if(_0x4b61fe<_0x9610f4[_0xd074('0x18')]&&_0x5eb373===![]){var _0x2f9c7b=_0x9610f4[_0x4b61fe][_0xd074('0x19')];_0x2f9c7b[_0xd074('0x17')](_0x3556ef,_0x456a57);}else{process['nextTick'](function(){_0x3556ef[_0xd074('0x1a')]=_0x39dfc0;return _0x58732a?_0x58732a(_0x3556ef):_[_0xd074('0x1b')]();});}}(0x0));};RuleEngine['prototype'][_0xd074('0x1c')]=function(_0x4b55d1){if(_[_0xd074('0x3')](_0x4b55d1)){return this[_0xd074('0x8')];}else{var _0x5d2dca=_['matches'](_0x4b55d1);return _['filter'](this[_0xd074('0x8')],_0x5d2dca);}};RuleEngine[_0xd074('0x7')][_0xd074('0x1d')]=function(_0xd283e,_0x23f9ee){var _0x2b498b=_0xd283e==='on'||_0xd283e==='ON'?!![]:![];var _0x4d082d=this[_0xd074('0x1c')](_0x23f9ee);for(var _0xb4c5ba=0x0,_0x33bfc4=_0x4d082d['length'];_0xb4c5ba<_0x33bfc4;_0xb4c5ba+=0x1){_0x4d082d[_0xb4c5ba]['on']=_0x2b498b;}this['sync']();};RuleEngine[_0xd074('0x7')][_0xd074('0x1e')]=function(_0x55180d,_0x4691af){_0x55180d=parseInt(_0x55180d,0xa);var _0x12d05f=this['findRules'](_0x4691af);for(var _0xb97642=0x0,_0xd69bbd=_0x12d05f[_0xd074('0x18')];_0xb97642<_0xd69bbd;_0xb97642+=0x1){_0x12d05f[_0xb97642][_0xd074('0x1f')]=_0x55180d;}this[_0xd074('0xe')]();};RuleEngine[_0xd074('0x7')]['toJSON']=function(){var _0x296333=this['rules'];if(_0x296333 instanceof Array){_0x296333=_0x296333[_0xd074('0x20')](function(_0x269fee){_0x269fee[_0xd074('0x19')]=_0x269fee[_0xd074('0x19')][_0xd074('0x21')]();_0x269fee[_0xd074('0x14')]=_0x269fee[_0xd074('0x14')][_0xd074('0x21')]();return _0x269fee;});}else if(!_[_0xd074('0x3')](_0x296333)){_0x296333[_0xd074('0x19')]=_0x296333[_0xd074('0x19')][_0xd074('0x21')]();_0x296333[_0xd074('0x14')]=_0x296333['consequence'][_0xd074('0x21')]();}return _0x296333;};RuleEngine['prototype'][_0xd074('0x22')]=function(_0x2c3a7c){this['init']();if(_[_0xd074('0x23')](_0x2c3a7c)){_0x2c3a7c=JSON[_0xd074('0x24')](_0x2c3a7c);}if(_0x2c3a7c instanceof Array){_0x2c3a7c=_0x2c3a7c[_0xd074('0x20')](function(_0x9ef03b){_0x9ef03b[_0xd074('0x19')]=eval('('+_0x9ef03b[_0xd074('0x19')]+')');_0x9ef03b[_0xd074('0x14')]=eval('('+_0x9ef03b[_0xd074('0x14')]+')');return _0x9ef03b;});}else if(_0x2c3a7c!==null&&typeof _0x2c3a7c=='object'){_0x2c3a7c[_0xd074('0x19')]=eval('('+_0x2c3a7c[_0xd074('0x19')]+')');_0x2c3a7c[_0xd074('0x14')]=eval('('+_0x2c3a7c[_0xd074('0x14')]+')');}this[_0xd074('0x4')](_0x2c3a7c);};module[_0xd074('0x25')]=RuleEngine;
\ No newline at end of file
+var _0xf139=['rules','activeRules','isArray','concat','isObject','push','sync','asc','execute','result','clone','consequence','index_','ruleRef','nextTick','next','isEqual','restart','condition','call','noop','findRules','filter','turn','prioritize','length','priority','toJSON','map','toString','fromJSON','isString','parse','object','exports','lodash','events','isNil','register','ignoreFactChanges','prototype','init'];(function(_0x2bdfc3,_0x1eb095){var _0x4695b5=function(_0x3e201e){while(--_0x3e201e){_0x2bdfc3['push'](_0x2bdfc3['shift']());}};_0x4695b5(++_0x1eb095);}(_0xf139,0xcb));var _0x9f13=function(_0x16b3a3,_0x3aa6be){_0x16b3a3=_0x16b3a3-0x0;var _0x5c9ef1=_0xf139[_0x16b3a3];return _0x5c9ef1;};'use strict';var _=require(_0x9f13('0x0'));var util=require('util');var EventEmitter=require(_0x9f13('0x1'))['EventEmitter'];function RuleEngine(_0xd9f467,_0x1aa9b8){this['init']();if(!_[_0x9f13('0x2')](_0xd9f467)){this[_0x9f13('0x3')](_0xd9f467);}if(_0x1aa9b8){this[_0x9f13('0x4')]=_0x1aa9b8[_0x9f13('0x4')];}return this;}util['inherits'](RuleEngine,EventEmitter);RuleEngine[_0x9f13('0x5')][_0x9f13('0x6')]=function(_0xad5b95){this[_0x9f13('0x7')]=[];this[_0x9f13('0x8')]=[];};RuleEngine[_0x9f13('0x5')][_0x9f13('0x3')]=function(_0x1e39d3){if(Array[_0x9f13('0x9')](_0x1e39d3)){this[_0x9f13('0x7')]=this[_0x9f13('0x7')][_0x9f13('0xa')](_0x1e39d3);}else if(_0x1e39d3!==null&&_[_0x9f13('0xb')](_0x1e39d3)){this[_0x9f13('0x7')][_0x9f13('0xc')](_0x1e39d3);}this[_0x9f13('0xd')]();};RuleEngine[_0x9f13('0x5')][_0x9f13('0xd')]=function(){this[_0x9f13('0x8')]=this[_0x9f13('0x7')]['filter'](function(_0x1cf7ae){if(_[_0x9f13('0x2')](_0x1cf7ae['on'])){_0x1cf7ae['on']=!![];}if(_0x1cf7ae['on']===!![]){return _0x1cf7ae;}});this[_0x9f13('0x8')]=_['orderBy'](this[_0x9f13('0x8')],['p'],[_0x9f13('0xe')]);};RuleEngine['prototype'][_0x9f13('0xf')]=function(_0x198ace,_0x54499c){var _0x16c400=![];_0x198ace[_0x9f13('0x10')]=!![];var _0x3db5d9=_[_0x9f13('0x11')](_0x198ace);var _0x21b8f6=_[_0x9f13('0x11')](_0x198ace);var _0xc442b9=this['activeRules'];var _0x18ce94=[];var _0x39ea7a=this['ignoreFactChanges'];(function FnRuleLoop(_0x5e5095){var _0x1fb582={'rules':function(){return _0xc442b9;},'rule':function(){return _0xc442b9[_0x5e5095];},'when':function(_0x473259){if(_0x473259){var _0x16d12b=_0xc442b9[_0x5e5095][_0x9f13('0x12')];_0x16d12b['ruleRef']=_0xc442b9[_0x5e5095]['id']||_0xc442b9[_0x5e5095]['name']||_0x9f13('0x13')+_0x5e5095;process['nextTick'](function(){_0x18ce94[_0x9f13('0xc')](_0x16d12b[_0x9f13('0x14')]);_0x16d12b['call'](_0x3db5d9,_0x1fb582);});}else{process[_0x9f13('0x15')](function(){_0x1fb582[_0x9f13('0x16')]();});}},'restart':function(){return FnRuleLoop(0x0);},'stop':function(){_0x16c400=!![];return FnRuleLoop(0x0);},'next':function(_0x3089a7){if(!_0x39ea7a&&!_[_0x9f13('0x17')](_0x21b8f6,_0x3db5d9)){_0x21b8f6=_['clone'](_0x3db5d9);process[_0x9f13('0x15')](function(){_0x1fb582[_0x9f13('0x18')]();});}else{process[_0x9f13('0x15')](function(){if(_[_0x9f13('0x2')](_0x3089a7)){return FnRuleLoop(_0x5e5095+0x1);}else{return FnRuleLoop(_0x3089a7);}});}}};if(_0x5e5095<_0xc442b9['length']&&_0x16c400===![]){var _0x156ad3=_0xc442b9[_0x5e5095][_0x9f13('0x19')];_0x156ad3[_0x9f13('0x1a')](_0x3db5d9,_0x1fb582);}else{process[_0x9f13('0x15')](function(){_0x3db5d9['matchPath']=_0x18ce94;return _0x54499c?_0x54499c(_0x3db5d9):_[_0x9f13('0x1b')]();});}}(0x0));};RuleEngine[_0x9f13('0x5')][_0x9f13('0x1c')]=function(_0x32211d){if(_[_0x9f13('0x2')](_0x32211d)){return this[_0x9f13('0x7')];}else{var _0x4b12ab=_['matches'](_0x32211d);return _[_0x9f13('0x1d')](this[_0x9f13('0x7')],_0x4b12ab);}};RuleEngine[_0x9f13('0x5')][_0x9f13('0x1e')]=function(_0x28cb54,_0x1a92a0){var _0x44a320=_0x28cb54==='on'||_0x28cb54==='ON'?!![]:![];var _0x3f5c59=this[_0x9f13('0x1c')](_0x1a92a0);for(var _0x5d577b=0x0,_0x411dad=_0x3f5c59['length'];_0x5d577b<_0x411dad;_0x5d577b+=0x1){_0x3f5c59[_0x5d577b]['on']=_0x44a320;}this[_0x9f13('0xd')]();};RuleEngine[_0x9f13('0x5')][_0x9f13('0x1f')]=function(_0x5e06cb,_0x449322){_0x5e06cb=parseInt(_0x5e06cb,0xa);var _0x48ea13=this[_0x9f13('0x1c')](_0x449322);for(var _0x2caf01=0x0,_0x154cf0=_0x48ea13[_0x9f13('0x20')];_0x2caf01<_0x154cf0;_0x2caf01+=0x1){_0x48ea13[_0x2caf01][_0x9f13('0x21')]=_0x5e06cb;}this[_0x9f13('0xd')]();};RuleEngine['prototype'][_0x9f13('0x22')]=function(){var _0xec3073=this[_0x9f13('0x7')];if(_0xec3073 instanceof Array){_0xec3073=_0xec3073[_0x9f13('0x23')](function(_0x3c2e84){_0x3c2e84[_0x9f13('0x19')]=_0x3c2e84[_0x9f13('0x19')][_0x9f13('0x24')]();_0x3c2e84[_0x9f13('0x12')]=_0x3c2e84[_0x9f13('0x12')][_0x9f13('0x24')]();return _0x3c2e84;});}else if(!_['isNil'](_0xec3073)){_0xec3073['condition']=_0xec3073['condition']['toString']();_0xec3073[_0x9f13('0x12')]=_0xec3073['consequence'][_0x9f13('0x24')]();}return _0xec3073;};RuleEngine[_0x9f13('0x5')][_0x9f13('0x25')]=function(_0x34e4bd){this[_0x9f13('0x6')]();if(_[_0x9f13('0x26')](_0x34e4bd)){_0x34e4bd=JSON[_0x9f13('0x27')](_0x34e4bd);}if(_0x34e4bd instanceof Array){_0x34e4bd=_0x34e4bd[_0x9f13('0x23')](function(_0x2fb2e8){_0x2fb2e8[_0x9f13('0x19')]=eval('('+_0x2fb2e8['condition']+')');_0x2fb2e8[_0x9f13('0x12')]=eval('('+_0x2fb2e8[_0x9f13('0x12')]+')');return _0x2fb2e8;});}else if(_0x34e4bd!==null&&typeof _0x34e4bd==_0x9f13('0x28')){_0x34e4bd[_0x9f13('0x19')]=eval('('+_0x34e4bd[_0x9f13('0x19')]+')');_0x34e4bd['consequence']=eval('('+_0x34e4bd[_0x9f13('0x12')]+')');}this[_0x9f13('0x3')](_0x34e4bd);};module[_0x9f13('0x29')]=RuleEngine;
\ No newline at end of file