package com.ruoyi.datacollection.api;
/**
* 数据采集模块被关闭({@code sys_config: datacollection.enabled=false})时,
* 门面调用抛出的异常。
*
*
为什么需要它(而不是复用 {@code ServiceException})
* {@code ServiceException} 是 final 的(见 {@code com.ruoyi.common.exception.ServiceException}),
* 既不能继承、也没有实现任何接口,因此无法"精确捕获"。
* 调用方({@code ruoyi-quartz} 的 {@code RyTask})需要把
* "模块被关掉"和"采集过程真的报错"区分开:
* 前者只打一条 WARN 说明本轮跳过,后者要按原有错误口径记录 ——
* 用 {@code ServiceException} 或比对 message 文本都会失准。
*
* 为什么放在模块的 api 包,而不是 ruoyi-common
* 模板模块把 {@code TemplateModuleDisabledException} 放进 ruoyi-common,
* 是因为它的调用点散在 4 个模块里。本模块目前只有 {@code ruoyi-quartz} 一个调用方,
* 而 {@code ruoyi-quartz} 已经依赖本模块,所以放在 {@code api} 包即可(api 是本模块唯一对外包)。
* 将来若出现不依赖本模块的调用方,再下沉到 ruoyi-common。
*
* @see DataCollectionFacade#requireEnabled()
*/
public class DataCollectionModuleDisabledException extends RuntimeException {
private static final long serialVersionUID = 1L;
/**
* 关闭提示(与 {@code sys_config} 里那行配置的 remark 口径一致)
*/
public static final String DISABLED_MESSAGE =
"数据采集模块未启用(参数配置 datacollection.enabled=false),本次采集已跳过";
public DataCollectionModuleDisabledException(String message) {
super(message);
}
public DataCollectionModuleDisabledException(String message, Throwable cause) {
super(message, cause);
}
}