Browse Source

微信支付优化部分代码,方便扩展

Binary Wang 7 years ago
parent
commit
bdf7f796e7

+ 8 - 8
weixin-java-pay/src/main/java/com/github/binarywang/wxpay/config/WxPayConfig.java

@@ -163,20 +163,20 @@ public class WxPayConfig {
   }
 
   public SSLContext initSSLContext() throws WxPayException {
-    if (StringUtils.isBlank(mchId)) {
+    if (StringUtils.isBlank(this.getMchId())) {
       throw new WxPayException("请确保商户号mchId已设置");
     }
 
-    if (StringUtils.isBlank(this.keyPath)) {
+    if (StringUtils.isBlank(this.getKeyPath())) {
       throw new WxPayException("请确保证书文件地址keyPath已配置");
     }
 
     InputStream inputStream;
     final String prefix = "classpath:";
-    String fileHasProblemMsg = "证书文件【" + this.keyPath + "】有问题,请核实!";
-    String fileNotFoundMsg = "证书文件【" + this.keyPath + "】不存在,请核实!";
-    if (this.keyPath.startsWith(prefix)) {
-      String path = StringUtils.removeFirst(this.keyPath, prefix);
+    String fileHasProblemMsg = "证书文件【" + this.getKeyPath() + "】有问题,请核实!";
+    String fileNotFoundMsg = "证书文件【" + this.getKeyPath() + "】不存在,请核实!";
+    if (this.getKeyPath().startsWith(prefix)) {
+      String path = StringUtils.removeFirst(this.getKeyPath(), prefix);
       if (!path.startsWith("/")) {
         path = "/" + path;
       }
@@ -186,7 +186,7 @@ public class WxPayConfig {
       }
     } else {
       try {
-        File file = new File(this.keyPath);
+        File file = new File(this.getKeyPath());
         if (!file.exists()) {
           throw new WxPayException(fileNotFoundMsg);
         }
@@ -199,7 +199,7 @@ public class WxPayConfig {
 
     try {
       KeyStore keystore = KeyStore.getInstance("PKCS12");
-      char[] partnerId2charArray = mchId.toCharArray();
+      char[] partnerId2charArray = this.getMchId().toCharArray();
       keystore.load(inputStream, partnerId2charArray);
       this.sslContext = SSLContexts.custom().loadKeyMaterial(keystore, partnerId2charArray).build();
       return this.sslContext;

+ 4 - 4
weixin-java-pay/src/main/java/com/github/binarywang/wxpay/service/impl/WxPayServiceApacheHttpImpl.java

@@ -53,13 +53,13 @@ public class WxPayServiceApacheHttpImpl extends WxPayServiceAbstractImpl {
         .setSocketTimeout(this.getConfig().getHttpTimeout())
         .build());
 
-      if (StringUtils.isNotBlank(this.config.getHttpProxyHost())
-        && this.config.getHttpProxyPort() > 0) {
+      if (StringUtils.isNotBlank(this.getConfig().getHttpProxyHost())
+        && this.getConfig().getHttpProxyPort() > 0) {
         // 使用代理服务器 需要用户认证的代理服务器
         CredentialsProvider provider = new BasicCredentialsProvider();
         provider.setCredentials(
-          new AuthScope(this.config.getHttpProxyHost(), this.config.getHttpProxyPort()),
-          new UsernamePasswordCredentials(this.config.getHttpProxyUsername(), this.config.getHttpProxyPassword()));
+          new AuthScope(this.getConfig().getHttpProxyHost(), this.getConfig().getHttpProxyPort()),
+          new UsernamePasswordCredentials(this.getConfig().getHttpProxyUsername(), this.getConfig().getHttpProxyPassword()));
         httpClientBuilder.setDefaultCredentialsProvider(provider);
       }
 

+ 5 - 5
weixin-java-pay/src/main/java/com/github/binarywang/wxpay/service/impl/WxPayServiceJoddHttpImpl.java

@@ -26,8 +26,8 @@ public class WxPayServiceJoddHttpImpl extends WxPayServiceAbstractImpl {
     try {
       HttpRequest request = HttpRequest
         .post(url)
-        .timeout(this.config.getHttpTimeout())
-        .connectionTimeout(this.config.getHttpConnectionTimeout())
+        .timeout(this.getConfig().getHttpTimeout())
+        .connectionTimeout(this.getConfig().getHttpConnectionTimeout())
         .bodyText(requestStr);
 
       if (useKey) {
@@ -39,9 +39,9 @@ public class WxPayServiceJoddHttpImpl extends WxPayServiceAbstractImpl {
         request.withConnectionProvider(provider);
       }
 
-      if (StringUtils.isNotBlank(this.config.getHttpProxyHost()) && this.config.getHttpProxyPort() > 0) {
-        ProxyInfo httpProxy = new ProxyInfo(ProxyType.HTTP, this.config.getHttpProxyHost(), this.config.getHttpProxyPort(),
-          this.config.getHttpProxyUsername(), this.config.getHttpProxyPassword());
+      if (StringUtils.isNotBlank(this.getConfig().getHttpProxyHost()) && this.getConfig().getHttpProxyPort() > 0) {
+        ProxyInfo httpProxy = new ProxyInfo(ProxyType.HTTP, this.getConfig().getHttpProxyHost(), this.getConfig().getHttpProxyPort(),
+          this.getConfig().getHttpProxyUsername(), this.getConfig().getHttpProxyPassword());
         HttpConnectionProvider provider = request.connectionProvider();
         if (null == provider) {
           provider = new SocketHttpConnectionProvider();