继续优化代码
This commit is contained in:
@@ -113,7 +113,7 @@ public class WeixinProxy {
|
||||
public WeixinProxy(SuitePerCodeHolder perCodeHolder,
|
||||
TokenHolder suiteTokenHolder) {
|
||||
this(new TokenHolder(new WeixinTokenSuiteCreator(perCodeHolder,
|
||||
suiteTokenHolder), suiteTokenHolder.getTokenStorager()));
|
||||
suiteTokenHolder), perCodeHolder.getTokenStorager()));
|
||||
this.settings = new Weixin4jSettings(new WeixinAccount(
|
||||
perCodeHolder.getAuthCorpId(), null));
|
||||
}
|
||||
@@ -167,7 +167,7 @@ public class WeixinProxy {
|
||||
public TokenHolder getTicketHolder(TicketType ticketType) {
|
||||
return new TokenHolder(new WeixinTicketCreator(getWeixinAccount()
|
||||
.getId(), ticketType, this.tokenHolder),
|
||||
this.tokenHolder.getTokenStorager());
|
||||
this.settings.getTokenStorager0());
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -65,7 +65,8 @@ public class WeixinSuiteProxy {
|
||||
new WeixinProviderTokenCreator(suiteSettings
|
||||
.getWeixinAccount().getId(), suiteSettings
|
||||
.getWeixinAccount().getProviderSecret()),
|
||||
suiteSettings.getTokenStorager0()));
|
||||
suiteSettings.getTokenStorager0()),
|
||||
suiteSettings.getTokenStorager0());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -8,6 +8,7 @@ import com.foxinmy.weixin4j.model.Token;
|
||||
import com.foxinmy.weixin4j.qy.model.OUserInfo;
|
||||
import com.foxinmy.weixin4j.qy.type.LoginTargetType;
|
||||
import com.foxinmy.weixin4j.token.TokenHolder;
|
||||
import com.foxinmy.weixin4j.token.TokenStorager;
|
||||
import com.foxinmy.weixin4j.util.StringUtil;
|
||||
|
||||
/**
|
||||
@@ -22,9 +23,12 @@ import com.foxinmy.weixin4j.util.StringUtil;
|
||||
*/
|
||||
public class ProviderApi extends QyApi {
|
||||
private final TokenHolder providerTokenHolder;
|
||||
private final TokenStorager tokenStorager;
|
||||
|
||||
public ProviderApi(TokenHolder providerTokenHolder) {
|
||||
public ProviderApi(TokenHolder providerTokenHolder,
|
||||
TokenStorager tokenStorager) {
|
||||
this.providerTokenHolder = providerTokenHolder;
|
||||
this.tokenStorager = tokenStorager;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -49,14 +53,13 @@ public class ProviderApi extends QyApi {
|
||||
oUser.getRedirectLoginInfo().setAccessToken(
|
||||
obj.getJSONObject("redirect_login_info").getString(
|
||||
"login_ticket"));
|
||||
providerTokenHolder.getTokenStorager().caching(
|
||||
getLoginTicketCacheKey(oUser.getCorpInfo().getCorpId()),
|
||||
oUser.getRedirectLoginInfo());
|
||||
tokenStorager.caching(getLoginTicketCacheKey(oUser.getCorpInfo()
|
||||
.getCorpId()), oUser.getRedirectLoginInfo());
|
||||
return oUser;
|
||||
}
|
||||
|
||||
private String getLoginTicketCacheKey(String coprId) {
|
||||
return String.format("wx_qy_provider_login_ticket_%s", coprId);
|
||||
return String.format("weixin4j_qy_provider_ticket_%s", coprId);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -75,8 +78,7 @@ public class ProviderApi extends QyApi {
|
||||
*/
|
||||
public String getLoginUrl(String corpId, LoginTargetType targetType,
|
||||
int agentId) throws WeixinException {
|
||||
Token token = providerTokenHolder.getTokenStorager().lookup(
|
||||
getLoginTicketCacheKey(corpId));
|
||||
Token token = tokenStorager.lookup(getLoginTicketCacheKey(corpId));
|
||||
if (token == null || StringUtil.isBlank(token.getAccessToken())) {
|
||||
throw new WeixinException("maybe oauth first?");
|
||||
}
|
||||
|
||||
@@ -45,7 +45,8 @@ public class SuitePerCodeHolder {
|
||||
* @return
|
||||
*/
|
||||
public String getCacheKey() {
|
||||
return String.format("qy_suite_percode_%s:%s", suiteId, authCorpId);
|
||||
return String.format("weixin4j_qy_suite_percode_%s:%s", suiteId,
|
||||
authCorpId);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -65,4 +66,8 @@ public class SuitePerCodeHolder {
|
||||
public String getAuthCorpId() {
|
||||
return this.authCorpId;
|
||||
}
|
||||
|
||||
public TokenStorager getTokenStorager() {
|
||||
return this.tokenStorager;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user