package com.iailab.framework.mq.redis.config; import com.iailab.framework.mq.redis.core.RedisMQTemplate; import com.iailab.framework.mq.redis.core.interceptor.RedisMessageInterceptor; import com.iailab.framework.redis.config.IailabRedisAutoConfiguration; import lombok.extern.slf4j.Slf4j; import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.context.annotation.Bean; import org.springframework.data.redis.core.StringRedisTemplate; import java.util.List; /** * Redis 消息队列 Producer 配置类 * * @author iailab */ @Slf4j @AutoConfiguration(after = IailabRedisAutoConfiguration.class) public class IailabRedisMQProducerAutoConfiguration { @Bean public RedisMQTemplate redisMQTemplate(StringRedisTemplate redisTemplate, List interceptors) { RedisMQTemplate redisMQTemplate = new RedisMQTemplate(redisTemplate); // 添加拦截器 interceptors.forEach(redisMQTemplate::addInterceptor); return redisMQTemplate; } }