mitm-core / RuleEngine
Abstract Class: RuleEngine<T>
Defined in: src/core/rule/RuleEngine.ts:23
Abstract base class for managing file-backed rule configurations. Provides a factory for creating concrete rule-engine instances and a shared registry of their associated rule stores. Subclasses define the rule name, configuration path, parser, and initial state.
Example
class PortRuleEngine extends RuleEngine<number[]> {
// Implement the required rule-engine properties.
}For a complete implementation, see the rule engine example.
Type Parameters
T
T
The type of state managed by the rule engine.
Constructors
Constructor
new RuleEngine<
T>():RuleEngine<T>
Returns
RuleEngine<T>
Properties
store
store:
WatchableRuleFile<T>
Defined in: src/core/rule/RuleEngine.ts:44
Rule store associated with this engine instance.
Assigned by createRule when the instance is created through the factory method.
Methods
createRule()
staticcreateRule<E>(ChildClass):E
Defined in: src/core/rule/RuleEngine.ts:56
Constructs a concrete rule engine and creates its associated rule store.
The store is registered under the instance's rule name and assigned to the resulting engine instance.
Type Parameters
E
E extends RuleEngine<any>
The concrete rule-engine type.
Parameters
ChildClass
new () => E
Constructor of the rule-engine subclass to instantiate.
Returns
E
The created rule-engine instance.
getRuleStore()
staticgetRuleStore(storeName):WatchableRuleFile<any> |undefined
Defined in: src/core/rule/RuleEngine.ts:82
Retrieves a rule store registered under the specified name.
Parameters
storeName
string
Name used to register the rule store.
Returns
WatchableRuleFile<any> | undefined
The matching store, or undefined if no store is registered under that name.
