liu
13 小时以前 514f372270b181f82e4deff98f8d0f38ace63183
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
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();
 
}