new RequiredRule(primaryProperty, message, priority, stopsProcessing)
Creates a new required rule object.
Parameters:
Name | Type | Argument | Default | Description |
---|---|---|---|---|
primaryProperty |
bo.shared.PropertyInfo | The property definition the rule relates to. |
||
message |
string | Human-readable description of the rule failure. |
||
priority |
number |
<optional> |
50 | The priority of the rule. |
stopsProcessing |
boolean |
<optional> |
false | Indicates the rule behavior in case of failure. |
Throws:
-
Argument error: The primary property must be a PropertyInfo object.
-
Argument error: The message must be a non-empty string.
Extends
Members
-
<readonly> message :string
-
Human-readable description of the rule failure.
Type:
- string
- Inherited From:
-
<readonly> primaryProperty :bo.shared.PropertyInfo
-
The definition of the property the rule relates to.
Type:
- Inherited From:
-
<readonly> priority :number
-
The priority of the rule. Higher number means higher priority.
Type:
- number
- Inherited From:
- Default Value:
-
- 10
-
<readonly> ruleName :string
-
The name of the rule type. The default value usually the name of the constructor, without the Rule suffix.
Type:
- string
- Inherited From:
-
<readonly> stopsProcessing :boolean
-
Indicates whether processing of the rules for a property stops when the rule fails.
Type:
- boolean
- Inherited From:
- Default Value:
-
- false
Methods
-
addAffectedProperty(property)
-
Adds an additional property that is influenced by the rule.
Parameters:
Name Type Description property
bo.shared.PropertyInfo An affected property influenced by the rule.
- Inherited From:
Throws:
Argument error: The affected property must be a PropertyInfo object. -
addInputProperty(property)
-
Adds an additional property to the rule that will use its value.
Parameters:
Name Type Description property
bo.shared.PropertyInfo An input property that value is used by the rule of.
- Inherited From:
Throws:
Argument error: The input property must be a PropertyInfo object. -
<virtual> execute(inputs) → {bo.rules.ValidationResult|undefined}
-
Checks if the value of the property exists.
Parameters:
Name Type Description inputs
Array.<*> An array of the values of the required properties.
Returns:
Information about the failure.
- Type
- bo.rules.ValidationResult | undefined
-
<protected> getInputValues(getValue) → {object}
-
Returns the values of the properties that are used by the rule. This method is called by the rule manager internally to provide the values of the input properties for the execute() method.
Parameters:
Name Type Description getValue
internal~getValue A function that returns the value of a property.
- Inherited From:
Throws:
Argument error: The getValue argument must be a function..Returns:
An object that properties hold the values of the input properties of.
- Type
- object
-
initialize(primaryProperty, message, priority, stopsProcessing)
-
Sets the properties of the rule.
Parameters:
Name Type Argument Default Description primaryProperty
bo.shared.PropertyInfo The property definition the rule relates to.
message
string Human-readable description of the rule failure.
priority
number <optional>
10 The priority of the rule.
stopsProcessing
boolean <optional>
false Indicates the rule behavior in case of failure.
- Inherited From:
Throws:
-
Argument error: The primary property must be a PropertyInfo object.
-
Argument error: The message must be a non-empty string.
-
result(message, severity) → {bo.rules.ValidationResult}
-
Returns the result of the rule executed.
Parameters:
Name Type Argument Description message
string <optional>
Human-readable description of the rule failure.
severity
bo.rules.RuleSeverity The severity of the failed rule.
- Inherited From:
Returns:
The result of the validation rule.