package com.common.service;

import com.common.entity.AnalysisAnalysisRule;

import java.util.List;
import java.util.Map;

/**
 * 分析引擎接口
 */
public interface AnalysisEngine {

    /**
     * 执行分析规则
     *
     * @param rule 规则
     * @return 处理结果
     */
    Map<String, Object> executeRule(AnalysisAnalysisRule rule);

    /**
     * 批量执行规则
     *
     * @param rules 规则列表
     * @return 处理结果列表
     */
    List<Map<String, Object>> executeRules(List<AnalysisAnalysisRule> rules);

    /**
     * 停止指定规则
     *
     * @param ruleId 规则ID
     */
    void stopRule(String ruleId);

    /**
     * 获取引擎运行模式
     *
     * @return 运行模式
     */
    String getRunMode();
}
