mirror of
https://gitee.com/binary/weixin-java-tools.git
synced 2025-04-05 17:38:05 +08:00
🎨 open模块移除Jedis强关联
This commit is contained in:
parent
15bd95c3cb
commit
65c1cdc07c
@ -2,11 +2,10 @@ package com.binarywang.spring.starter.wxjava.open.config.storage;
|
||||
|
||||
import com.binarywang.spring.starter.wxjava.open.properties.WxOpenProperties;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import me.chanjar.weixin.common.redis.RedisTemplateWxRedisOps;
|
||||
import me.chanjar.weixin.common.redis.WxRedisOps;
|
||||
import me.chanjar.weixin.open.api.WxOpenConfigStorage;
|
||||
import me.chanjar.weixin.open.api.impl.WxOpenInMemoryConfigStorage;
|
||||
import me.chanjar.weixin.open.api.impl.WxOpenInRedisConfigStorage;
|
||||
import me.chanjar.weixin.open.api.impl.WxOpenInRedisTemplateConfigStorage;
|
||||
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
||||
@ -35,9 +34,8 @@ public class WxOpenInRedisTemplateConfigStorageConfiguration extends AbstractWxO
|
||||
return this.config(config, properties);
|
||||
}
|
||||
|
||||
private WxOpenInRedisConfigStorage getWxOpenInRedisTemplateConfigStorage() {
|
||||
private WxOpenInRedisTemplateConfigStorage getWxOpenInRedisTemplateConfigStorage() {
|
||||
StringRedisTemplate redisTemplate = applicationContext.getBean(StringRedisTemplate.class);
|
||||
WxRedisOps redisOps = new RedisTemplateWxRedisOps(redisTemplate);
|
||||
return new WxOpenInRedisConfigStorage(redisOps, properties.getConfigStorage().getKeyPrefix());
|
||||
return new WxOpenInRedisTemplateConfigStorage(redisTemplate, properties.getConfigStorage().getKeyPrefix());
|
||||
}
|
||||
}
|
||||
|
@ -91,6 +91,10 @@
|
||||
<groupId>org.redisson</groupId>
|
||||
<artifactId>redisson</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.data</groupId>
|
||||
<artifactId>spring-data-redis</artifactId>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
|
@ -0,0 +1,145 @@
|
||||
package me.chanjar.weixin.open.api.impl;
|
||||
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.concurrent.locks.Lock;
|
||||
|
||||
import org.springframework.data.redis.core.RedisTemplate;
|
||||
import org.springframework.data.redis.core.StringRedisTemplate;
|
||||
|
||||
import lombok.NonNull;
|
||||
import me.chanjar.weixin.common.redis.JedisWxRedisOps;
|
||||
import me.chanjar.weixin.common.redis.RedisTemplateWxRedisOps;
|
||||
import me.chanjar.weixin.common.redis.WxRedisOps;
|
||||
import redis.clients.jedis.Jedis;
|
||||
import redis.clients.jedis.util.Pool;
|
||||
|
||||
/**
|
||||
* <pre>
|
||||
* RedisTemplateConfigStorage
|
||||
* </pre>
|
||||
*
|
||||
* @author taneg
|
||||
* @date 2021/05/13 11:12:35
|
||||
*/
|
||||
public class WxOpenInRedisTemplateConfigStorage extends AbstractWxOpenInRedisConfigStorage {
|
||||
|
||||
private final WxRedisOps redisOps;
|
||||
|
||||
public WxOpenInRedisTemplateConfigStorage(@NonNull StringRedisTemplate stringRedisTemplate, String keyPrefix) {
|
||||
this(new RedisTemplateWxRedisOps(stringRedisTemplate), keyPrefix);
|
||||
}
|
||||
|
||||
public WxOpenInRedisTemplateConfigStorage(@NonNull WxRedisOps redisOps, String keyPrefix) {
|
||||
this.redisOps = redisOps;
|
||||
this.keyPrefix = keyPrefix;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getComponentVerifyTicket() {
|
||||
return redisOps.getValue(this.componentVerifyTicketKey);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setComponentVerifyTicket(String componentVerifyTicket) {
|
||||
redisOps.setValue(this.componentVerifyTicketKey, componentVerifyTicket, Integer.MAX_VALUE, TimeUnit.SECONDS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getComponentAccessToken() {
|
||||
return redisOps.getValue(this.componentAccessTokenKey);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isComponentAccessTokenExpired() {
|
||||
Long expire = redisOps.getExpire(this.componentAccessTokenKey);
|
||||
return expire == null || expire < 2;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void expireComponentAccessToken() {
|
||||
redisOps.expire(this.componentAccessTokenKey, 0, TimeUnit.SECONDS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateComponentAccessToken(String componentAccessToken, int expiresInSeconds) {
|
||||
redisOps.setValue(this.componentAccessTokenKey, componentAccessToken, expiresInSeconds - 200, TimeUnit.SECONDS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getAuthorizerRefreshToken(String appId) {
|
||||
return redisOps.getValue(this.getKey(this.authorizerRefreshTokenKey, appId));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setAuthorizerRefreshToken(String appId, String authorizerRefreshToken) {
|
||||
redisOps.setValue(this.getKey(this.authorizerRefreshTokenKey, appId), authorizerRefreshToken, 0, TimeUnit.SECONDS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getAuthorizerAccessToken(String appId) {
|
||||
return redisOps.getValue(this.getKey(this.authorizerAccessTokenKey, appId));
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isAuthorizerAccessTokenExpired(String appId) {
|
||||
Long expire = redisOps.getExpire(this.getKey(this.authorizerAccessTokenKey, appId));
|
||||
return expire == null || expire < 2;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void expireAuthorizerAccessToken(String appId) {
|
||||
redisOps.expire(this.getKey(this.authorizerAccessTokenKey, appId), 0, TimeUnit.SECONDS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAuthorizerAccessToken(String appId, String authorizerAccessToken, int expiresInSeconds) {
|
||||
redisOps.setValue(this.getKey(this.authorizerAccessTokenKey, appId), authorizerAccessToken, expiresInSeconds - 200, TimeUnit.SECONDS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getJsapiTicket(String appId) {
|
||||
return redisOps.getValue(this.getKey(this.jsapiTicketKey, appId));
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isJsapiTicketExpired(String appId) {
|
||||
Long expire = redisOps.getExpire(this.getKey(this.jsapiTicketKey, appId));
|
||||
return expire == null || expire < 2;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void expireJsapiTicket(String appId) {
|
||||
redisOps.expire(this.getKey(this.jsapiTicketKey, appId), 0, TimeUnit.SECONDS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateJsapiTicket(String appId, String jsapiTicket, int expiresInSeconds) {
|
||||
redisOps.setValue(this.getKey(this.jsapiTicketKey, appId), jsapiTicket, expiresInSeconds - 200, TimeUnit.SECONDS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCardApiTicket(String appId) {
|
||||
return redisOps.getValue(this.getKey(this.cardApiTicket, appId));
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isCardApiTicketExpired(String appId) {
|
||||
Long expire = redisOps.getExpire(this.getKey(this.cardApiTicket, appId));
|
||||
return expire == null || expire < 2;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void expireCardApiTicket(String appId) {
|
||||
redisOps.expire(this.getKey(this.cardApiTicket, appId), 0, TimeUnit.SECONDS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateCardApiTicket(String appId, String cardApiTicket, int expiresInSeconds) {
|
||||
redisOps.setValue(this.getKey(this.cardApiTicket, appId), cardApiTicket, expiresInSeconds - 200, TimeUnit.SECONDS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Lock getLockByKey(String key) {
|
||||
return redisOps.getLock(key);
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user