replace this.wxMpConfigStorage with this.getWxMpConfigStorage() #155

This commit is contained in:
Binary Wang 2017-03-13 16:02:09 +08:00
parent 4be02996d3
commit 7ee9ac0beb

View File

@ -55,7 +55,7 @@ public class WxMpServiceImpl implements WxMpService {
@Override
public boolean checkSignature(String timestamp, String nonce, String signature) {
try {
return SHA1.gen(this.wxMpConfigStorage.getToken(), timestamp, nonce)
return SHA1.gen(this.getWxMpConfigStorage().getToken(), timestamp, nonce)
.equals(signature);
} catch (Exception e) {
return false;
@ -69,18 +69,18 @@ public class WxMpServiceImpl implements WxMpService {
@Override
public String getAccessToken(boolean forceRefresh) throws WxErrorException {
Lock lock = this.wxMpConfigStorage.getAccessTokenLock();
Lock lock = this.getWxMpConfigStorage().getAccessTokenLock();
try {
lock.lock();
if (forceRefresh) {
this.wxMpConfigStorage.expireAccessToken();
this.getWxMpConfigStorage().expireAccessToken();
}
if (this.wxMpConfigStorage.isAccessTokenExpired()) {
if (this.getWxMpConfigStorage().isAccessTokenExpired()) {
String url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential" +
"&appid=" + this.wxMpConfigStorage.getAppId() + "&secret="
+ this.wxMpConfigStorage.getSecret();
"&appid=" + this.getWxMpConfigStorage().getAppId() + "&secret="
+ this.getWxMpConfigStorage().getSecret();
try {
HttpGet httpGet = new HttpGet(url);
if (this.httpProxy != null) {
@ -94,7 +94,7 @@ public class WxMpServiceImpl implements WxMpService {
throw new WxErrorException(error);
}
WxAccessToken accessToken = WxAccessToken.fromJson(resultContent);
this.wxMpConfigStorage.updateAccessToken(accessToken.getAccessToken(),
this.getWxMpConfigStorage().updateAccessToken(accessToken.getAccessToken(),
accessToken.getExpiresIn());
} finally {
httpGet.releaseConnection();
@ -106,7 +106,7 @@ public class WxMpServiceImpl implements WxMpService {
} finally {
lock.unlock();
}
return this.wxMpConfigStorage.getAccessToken();
return this.getWxMpConfigStorage().getAccessToken();
}
@Override
@ -116,27 +116,27 @@ public class WxMpServiceImpl implements WxMpService {
@Override
public String getJsapiTicket(boolean forceRefresh) throws WxErrorException {
Lock lock = this.wxMpConfigStorage.getJsapiTicketLock();
Lock lock = this.getWxMpConfigStorage().getJsapiTicketLock();
try {
lock.lock();
if (forceRefresh) {
this.wxMpConfigStorage.expireJsapiTicket();
this.getWxMpConfigStorage().expireJsapiTicket();
}
if (this.wxMpConfigStorage.isJsapiTicketExpired()) {
if (this.getWxMpConfigStorage().isJsapiTicketExpired()) {
String url = "https://api.weixin.qq.com/cgi-bin/ticket/getticket?type=jsapi";
String responseContent = execute(new SimpleGetRequestExecutor(), url, null);
JsonElement tmpJsonElement = JSON_PARSER.parse(responseContent);
JsonObject tmpJsonObject = tmpJsonElement.getAsJsonObject();
String jsapiTicket = tmpJsonObject.get("ticket").getAsString();
int expiresInSeconds = tmpJsonObject.get("expires_in").getAsInt();
this.wxMpConfigStorage.updateJsapiTicket(jsapiTicket, expiresInSeconds);
this.getWxMpConfigStorage().updateJsapiTicket(jsapiTicket, expiresInSeconds);
}
} finally {
lock.unlock();
}
return this.wxMpConfigStorage.getJsapiTicket();
return this.getWxMpConfigStorage().getJsapiTicket();
}
@Override
@ -147,7 +147,7 @@ public class WxMpServiceImpl implements WxMpService {
String signature = SHA1.genWithAmple("jsapi_ticket=" + jsapiTicket,
"noncestr=" + noncestr, "timestamp=" + timestamp, "url=" + url);
WxJsapiSignature jsapiSignature = new WxJsapiSignature();
jsapiSignature.setAppId(this.wxMpConfigStorage.getAppId());
jsapiSignature.setAppId(this.getWxMpConfigStorage().getAppId());
jsapiSignature.setTimestamp(timestamp);
jsapiSignature.setNonceStr(noncestr);
jsapiSignature.setUrl(url);
@ -212,7 +212,7 @@ public class WxMpServiceImpl implements WxMpService {
public String oauth2buildAuthorizationUrl(String redirectURI, String scope, String state) {
StringBuilder url = new StringBuilder();
url.append("https://open.weixin.qq.com/connect/oauth2/authorize?");
url.append("appid=").append(this.wxMpConfigStorage.getAppId());
url.append("appid=").append(this.getWxMpConfigStorage().getAppId());
url.append("&redirect_uri=").append(URIUtil.encodeURIComponent(redirectURI));
url.append("&response_type=code");
url.append("&scope=").append(scope);
@ -228,7 +228,7 @@ public class WxMpServiceImpl implements WxMpService {
String state) {
StringBuilder url = new StringBuilder();
url.append("https://open.weixin.qq.com/connect/qrconnect?");
url.append("appid=").append(this.wxMpConfigStorage.getAppId());
url.append("appid=").append(this.getWxMpConfigStorage().getAppId());
url.append("&redirect_uri=").append(URIUtil.encodeURIComponent(redirectURI));
url.append("&response_type=code");
url.append("&scope=").append(scope);
@ -254,8 +254,8 @@ public class WxMpServiceImpl implements WxMpService {
public WxMpOAuth2AccessToken oauth2getAccessToken(String code) throws WxErrorException {
StringBuilder url = new StringBuilder();
url.append("https://api.weixin.qq.com/sns/oauth2/access_token?");
url.append("appid=").append(this.wxMpConfigStorage.getAppId());
url.append("&secret=").append(this.wxMpConfigStorage.getSecret());
url.append("appid=").append(this.getWxMpConfigStorage().getAppId());
url.append("&secret=").append(this.getWxMpConfigStorage().getSecret());
url.append("&code=").append(code);
url.append("&grant_type=authorization_code");
@ -266,7 +266,7 @@ public class WxMpServiceImpl implements WxMpService {
public WxMpOAuth2AccessToken oauth2refreshAccessToken(String refreshToken) throws WxErrorException {
StringBuilder url = new StringBuilder();
url.append("https://api.weixin.qq.com/sns/oauth2/refresh_token?");
url.append("appid=").append(this.wxMpConfigStorage.getAppId());
url.append("appid=").append(this.getWxMpConfigStorage().getAppId());
url.append("&grant_type=refresh_token");
url.append("&refresh_token=").append(refreshToken);
@ -393,8 +393,8 @@ public class WxMpServiceImpl implements WxMpService {
*/
if (error.getErrorCode() == 42001 || error.getErrorCode() == 40001) {
// 强制设置wxMpConfigStorage它的access token过期了这样在下一次请求里就会刷新access token
this.wxMpConfigStorage.expireAccessToken();
if (this.wxMpConfigStorage.autoRefreshToken()) {
this.getWxMpConfigStorage().expireAccessToken();
if (this.getWxMpConfigStorage().autoRefreshToken()) {
return this.execute(executor, uri, data);
}
}
@ -426,20 +426,20 @@ public class WxMpServiceImpl implements WxMpService {
apacheHttpClientBuilder = DefaultApacheHttpClientBuilder.get();
}
apacheHttpClientBuilder.httpProxyHost(this.wxMpConfigStorage.getHttpProxyHost())
.httpProxyPort(this.wxMpConfigStorage.getHttpProxyPort())
.httpProxyUsername(this.wxMpConfigStorage.getHttpProxyUsername())
.httpProxyPassword(this.wxMpConfigStorage.getHttpProxyPassword());
apacheHttpClientBuilder.httpProxyHost(this.getWxMpConfigStorage().getHttpProxyHost())
.httpProxyPort(this.getWxMpConfigStorage().getHttpProxyPort())
.httpProxyUsername(this.getWxMpConfigStorage().getHttpProxyUsername())
.httpProxyPassword(this.getWxMpConfigStorage().getHttpProxyPassword());
// if (this.wxMpConfigStorage.getSSLContext() != null) {
// if (this.getWxMpConfigStorage().getSSLContext() != null) {
// SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(
// this.wxMpConfigStorage.getSSLContext(), new String[] { "TLSv1" }, null,
// this.getWxMpConfigStorage().getSSLContext(), new String[] { "TLSv1" }, null,
// new DefaultHostnameVerifier());
// apacheHttpClientBuilder.sslConnectionSocketFactory(sslsf);
// }
if (this.wxMpConfigStorage.getHttpProxyHost() != null && this.wxMpConfigStorage.getHttpProxyPort() > 0) {
this.httpProxy = new HttpHost(this.wxMpConfigStorage.getHttpProxyHost(), this.wxMpConfigStorage.getHttpProxyPort());
if (this.getWxMpConfigStorage().getHttpProxyHost() != null && this.getWxMpConfigStorage().getHttpProxyPort() > 0) {
this.httpProxy = new HttpHost(this.getWxMpConfigStorage().getHttpProxyHost(), this.getWxMpConfigStorage().getHttpProxyPort());
}
this.httpClient = apacheHttpClientBuilder.build();