Socket
Book a DemoInstallSign in
Socket

axiom-rule-engine

Package Overview
Dependencies
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

axiom-rule-engine

--- #### Author : Axiom ##### Created on : 2th Nov 2015 <!-- ##### Update Date : 24th Nov 2015 --> --- This Rules Engine is used to bind the rules and gets the result based on rules. It have 'RulesEngine()' function which returns 'RE' Object. You req

1.0.4
latest
Source
npmnpm
Version published
Weekly downloads
122
74.29%
Maintainers
1
Weekly downloads
 
Created
Source

Rules Engine

Author : Axiom

Created on : 2th Nov 2015

This Rules Engine is used to bind the rules and gets the result based on rules. It have 'RulesEngine()' function which returns 'RE' Object. You require to import 'assertHelper.js' file for use this rules engine library.It is also require user to set defaultResult before using getResult() method.

  • Create Instance Of RulesEngine
  • Useful Functions
    • addRule()
    • removeRule()
    • getResult()
    • print()
    • getRule()
    • getAllRules()
  • variable
    • defaultResult

Create Instance Of RulesEngine

To use RulesEngine Library you require to create RulesEngine instance through that you can call it's functions.

  • Example

    var RulesEngine = new RulesEngine();
    

Here 'RulesEngine' is instance through this you can Call RulesEngine functions.

addRule(rule,result)

This method is used to add rules into 'RulesEngine' Object.It returns index of current rule into 'RulesEngine' object

Parameter NameDescriptions
ruleThis contains array of JSON objects that defines rule
resultThis contains JSON objects that defines result with respect to given rule
  • Attributes for rule and result Object
ParameterAttributesDataTypePossible Values
rulefieldstringAny
filterTypestringbetween, in, notin, lt, lteq, gt, gteq, eq, nteq
valuearrayAny
resultAnyAnyAny
  • Example

    RulesEngine.addRule([{field:"growth",filterType:"between",value:[26, 35]},
                          {field:"slope",filterType:"between",value:[26,35]}],
                            {'Color': '#1A9850','Comment': 'Between'});
    

    Here,rule is binded for

    1> growth is Between 26 to 35.

    2> slope is Between 26 to 35.

    with result 'Color'='#1A9850' and 'Comment'='Between'

removeRule(index)

This method is used to remove the rule from specific index of 'RulesEngine' object.

Parameter NameDescriptions
indexThis defines index of rules into 'RulesEngine' object
  • Example
    RulesEngine.removeRule(0);

Here, It will remove first rule from index 0 of 'RulesEngine' object.

getResult(values)

This method compare the given value with predefined rules and gives result object based on comaprision

Parameter NameDescriptions
valuesThis defines JSON object which contains values to be compare against rules.
  • Example
RulesEngine.addRule([{field:"growth",filterType:"between",value:[26, 35]},
                      {field:"slope",filterType:"between",value:[26,35]}],
                        {'Color': '#1A9850','Comment': 'Between'});

retRestult=RulesEngine.getResult({growth:26,slope:29});

Here,

retRestult.Color contains '#1A9850' and retRestult.Comment contains 'Between'

print()

This method print Entire rules with result and also defaultResult.

  • Example
RulesEngine.print()

defaultResult

defaultResult variable defines default result when no rules mathced.You must require to set default result before use getResult method.

  • Example
RulesEngine.defaultResult={'Color': '#D73027','Comment': 'Default Message'};

getRule(index)

This method is used to get rule from specific index.

Parameter NameDescriptions
indexThis defines index of rules into 'RulesEngine' object
  • Example
RulesEngine.getRule(0)

Here, It will return first rule from index 0 of 'RulesEngine' object.

getAllRules()

This method is used to get all rules of 'RulesEngine' object.

  • Example
RulesEngine.getAllRules()

Here, It will return all rules of 'RulesEngine' object.

FAQs

Package last updated on 04 Jun 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.