package cn.iocoder.yudao.module.mes.framework.qrcode;
|
|
import cn.iocoder.yudao.module.mes.framework.config.MesTraceConfigSnapshot;
|
|
/**
|
* 种子标签配置来源:向 {@link MesProQrLabelBuilder} 提供「字典 + 配置文件」合并后的生效配置。
|
* <p>
|
* {@code MesProQrLabelBuilder} 是静态工具类,被二维码批量导出高频循环调用,无法直接做依赖注入;
|
* 因此在启动时由 {@code MesQrCodeConfig} 装配一个本接口的实现(指向 {@code MesTraceConfigResolver}),
|
* 运行时由构建器回调取值。这样既保留了静态调用点不变,又能让配置随字典改动生效。
|
* <p>
|
* 实现方**必须保证不抛异常**,否则会中断整批标签导出。
|
*/
|
@FunctionalInterface
|
public interface MesTraceConfigProvider {
|
|
/**
|
* 取当前生效的配置快照
|
*
|
* @return 生效快照,不应返回 null
|
*/
|
MesTraceConfigSnapshot get();
|
|
}
|