package com.qianwen.core.jwt.config; import com.qianwen.core.jwt.JwtUtil; import com.qianwen.core.jwt.props.JwtProperties; import com.qianwen.core.jwt.serializer.JwtRedisKeySerializer; import org.springframework.beans.factory.SmartInitializingSingleton; import org.springframework.boot.autoconfigure.AutoConfigureAfter; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.context.annotation.Configuration; import org.springframework.data.redis.connection.RedisConnectionFactory; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.serializer.JdkSerializationRedisSerializer; @EnableConfigurationProperties({JwtProperties.class}) @Configuration(proxyBeanMethods = false) @AutoConfigureAfter({JwtRedisConfiguration.class}) /* loaded from: blade-starter-jwt-9.3.0.0-SNAPSHOT.jar:org/springblade/core/jwt/config/JwtConfiguration.class */ public class JwtConfiguration implements SmartInitializingSingleton { private final JwtProperties jwtProperties; private final RedisConnectionFactory redisConnectionFactory; public JwtConfiguration(final JwtProperties jwtProperties, final RedisConnectionFactory redisConnectionFactory) { this.jwtProperties = jwtProperties; this.redisConnectionFactory = redisConnectionFactory; } public void afterSingletonsInstantiated() { RedisTemplate redisTemplate = new RedisTemplate<>(); JwtRedisKeySerializer redisKeySerializer = new JwtRedisKeySerializer(); JdkSerializationRedisSerializer jdkSerializationRedisSerializer = new JdkSerializationRedisSerializer(); redisTemplate.setKeySerializer(redisKeySerializer); redisTemplate.setHashKeySerializer(redisKeySerializer); redisTemplate.setValueSerializer(jdkSerializationRedisSerializer); redisTemplate.setHashValueSerializer(jdkSerializationRedisSerializer); redisTemplate.setConnectionFactory(this.redisConnectionFactory); redisTemplate.afterPropertiesSet(); JwtUtil.setJwtProperties(this.jwtProperties); JwtUtil.setRedisTemplate(redisTemplate); } }