diff --git a/pay-java-ali/src/main/java/com/egzosn/pay/ali/api/AliPayConfigStorage.java b/pay-java-ali/src/main/java/com/egzosn/pay/ali/api/AliPayConfigStorage.java index fad78e7..7286665 100644 --- a/pay-java-ali/src/main/java/com/egzosn/pay/ali/api/AliPayConfigStorage.java +++ b/pay-java-ali/src/main/java/com/egzosn/pay/ali/api/AliPayConfigStorage.java @@ -4,27 +4,27 @@ import com.egzosn.pay.common.api.BasePayConfigStorage; /** * 支付配置存储 - * @author egan * - * email egzosn@gmail.com - * date 2016-5-18 14:09:01 + * @author egan + *

+ * email egzosn@gmail.com + * date 2016-5-18 14:09:01 */ public class AliPayConfigStorage extends BasePayConfigStorage { /** - * 商户应用id + * 商户应用id */ - private volatile String appId ; + private String appId; /** - * 商户签约拿到的pid,partner_id的简称,合作伙伴身份等同于 partner + * 商户签约拿到的pid,partner_id的简称,合作伙伴身份等同于 partner */ - private volatile String pid ; + private String pid; /** * 商户收款账号 */ - private volatile String seller; - + private String seller; public void setAppId(String appId) { @@ -56,6 +56,4 @@ public class AliPayConfigStorage extends BasePayConfigStorage { } - - } diff --git a/pay-java-common/src/main/java/com/egzosn/pay/common/api/BasePayConfigStorage.java b/pay-java-common/src/main/java/com/egzosn/pay/common/api/BasePayConfigStorage.java index 397cd73..1d45348 100644 --- a/pay-java-common/src/main/java/com/egzosn/pay/common/api/BasePayConfigStorage.java +++ b/pay-java-common/src/main/java/com/egzosn/pay/common/api/BasePayConfigStorage.java @@ -19,61 +19,61 @@ import java.util.concurrent.locks.ReentrantLock; */ public abstract class BasePayConfigStorage implements PayConfigStorage { - private volatile Object attach; + private Object attach; /** * 证书管理器 */ - private volatile CertDescriptor certDescriptor; + private CertDescriptor certDescriptor; /** * 应用私钥,rsa_private pkcs8格式 生成签名时使用 */ - private volatile String keyPrivate; + private String keyPrivate; /** * 应用私钥,rsa_private pkcs8格式 生成签名时使用 */ - private volatile String keyPrivateCertPwd; + private String keyPrivateCertPwd; /** * 支付平台公钥(签名校验使用) */ - private volatile String keyPublic; + private String keyPublic; /** * 异步回调地址 */ - private volatile String notifyUrl; + private String notifyUrl; /** * 同步回调地址,支付完成后展示的页面 */ - private volatile String returnUrl; + private String returnUrl; /** * 签名加密类型 */ - private volatile String signType; + private String signType; /** * 字符类型 */ - private volatile String inputCharset; + private String inputCharset; /** * 支付类型 aliPay 支付宝, wxPay微信..等等,扩展支付模块定义唯一。 */ - private volatile String payType; + private String payType; /** * 消息来源类型 */ - private volatile MsgType msgType; + private MsgType msgType; /** * 访问令牌 每次请求其他方法都要传入的值 */ - private volatile String accessToken; + private String accessToken; /** * access token 到期时间时间戳 */ - private volatile long expiresTime; + private long expiresTime; /** * 授权码锁 */ @@ -91,7 +91,7 @@ public abstract class BasePayConfigStorage implements PayConfigStorage { /** * 支付回调消息 */ - protected volatile PayMessageHandler handler; + protected PayMessageHandler handler; @Override public Object getAttach() { diff --git a/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/PayPalPayController.java b/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/PayPalPayController.java index 79042aa..929299e 100644 --- a/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/PayPalPayController.java +++ b/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/PayPalPayController.java @@ -40,8 +40,8 @@ public class PayPalPayController { @PostConstruct public void init() { PayPalConfigStorage storage = new PayPalConfigStorage(); - storage.setClientID("1AZ7HTcvrEAxYbzYx_iDZAi06GdqbjhqqQzFgPBFLxm2VUMzwlmiNUBk_y_5QNP4zWKblTuM6ZBAmxScd"); - storage.setClientSecret("1EBMIjAag6NiRdXZxteTv0amEsmKN345xJv3bN7f_HRXSqcRJlW7PXhYXjI9sk5I4nKYOHgeqzhXCXKFo"); + storage.setClientID("AZ7HTcvrEAxYbzYx_iDZAi06GdqbjhqqQzFgPBFLxm2VUMzwlmiNUBk_y_5QNP4zWKblTuM6ZBAmxScd"); + storage.setClientSecret("EBMIjAag6NiRdXZxteTv0amEsmKN345xJv3bN7f_HRXSqcRJlW7PXhYXjI9sk5I4nKYOHgeqzhXCXKFo"); storage.setTest(true); //发起付款后的页面转跳地址 storage.setReturnUrl("http://www.egzosn.com/pay/success"); diff --git a/pay-java-paypal/src/main/java/com/egzosn/pay/paypal/api/PayPalConfigStorage.java b/pay-java-paypal/src/main/java/com/egzosn/pay/paypal/api/PayPalConfigStorage.java index ae836b0..8169fa7 100644 --- a/pay-java-paypal/src/main/java/com/egzosn/pay/paypal/api/PayPalConfigStorage.java +++ b/pay-java-paypal/src/main/java/com/egzosn/pay/paypal/api/PayPalConfigStorage.java @@ -4,14 +4,15 @@ import com.egzosn.pay.common.api.BasePayConfigStorage; /** * 贝宝支付配置存储 - * @author egan * - * email egzosn@gmail.com - * date 2018-4-8 22:11:42 + * @author egan + *

+ * email egzosn@gmail.com + * date 2018-4-8 22:11:42 */ public class PayPalConfigStorage extends BasePayConfigStorage { - private volatile String clientID; + private String clientID; @Override public String getAppid() { @@ -41,28 +42,25 @@ public class PayPalConfigStorage extends BasePayConfigStorage { } public void setClientSecret(String clientSecret) { - setKeyPrivate(clientSecret); + setKeyPrivate(clientSecret); } - @Override - public boolean isAccessTokenExpired() { - if (getExpiresTime() == 0){ - return true; - } - return (getExpiresTime() - System.currentTimeMillis() / 1000) <= 0; - } /** * 设置取消页面的url + * * @param cancelUrl 取消页面的url */ - public void setCancelUrl(String cancelUrl){ + public void setCancelUrl(String cancelUrl) { setNotifyUrl(cancelUrl); } + /** * 获取取消页面的url */ - public String getCancelUrl(){ - return getNotifyUrl(); + public String getCancelUrl() { + return getNotifyUrl(); } + + } diff --git a/pay-java-paypal/src/main/java/com/egzosn/pay/paypal/api/PayPalPayService.java b/pay-java-paypal/src/main/java/com/egzosn/pay/paypal/api/PayPalPayService.java index cd83c9b..2bf7714 100644 --- a/pay-java-paypal/src/main/java/com/egzosn/pay/paypal/api/PayPalPayService.java +++ b/pay-java-paypal/src/main/java/com/egzosn/pay/paypal/api/PayPalPayService.java @@ -83,7 +83,6 @@ public class PayPalPayService extends BasePayService{ } if (payConfigStorage.isAccessTokenExpired()) { - if (null == payConfigStorage.getAccessToken()){ Map header = new HashMap<>(); header.put("Authorization", "Basic " + authorizationString(getPayConfigStorage().getAppid(), getPayConfigStorage().getKeyPrivate())); header.put("Accept", "application/json"); @@ -91,12 +90,11 @@ public class PayPalPayService extends BasePayService{ try { HttpStringEntity entity = new HttpStringEntity("grant_type=client_credentials", header); JSONObject resp = getHttpRequestTemplate().postForObject(getReqUrl(PayPalTransactionType.AUTHORIZE), entity, JSONObject.class); - payConfigStorage.updateAccessToken(String.format("%s %s", resp.getString("token_type" ), resp.getString("access_token" )), resp.getLongValue("expires_in" )); + payConfigStorage.updateAccessToken(String.format("%s %s", resp.getString("token_type" ), resp.getString("access_token" )), resp.getIntValue("expires_in" )); } catch (UnsupportedEncodingException e) { throw new PayErrorException(new PayException("failure", e.getMessage())); } - } return payConfigStorage.getAccessToken(); } } finally { diff --git a/pay-java-union/src/main/java/com/egzosn/pay/union/api/UnionPayConfigStorage.java b/pay-java-union/src/main/java/com/egzosn/pay/union/api/UnionPayConfigStorage.java index 56ce420..5ae5003 100644 --- a/pay-java-union/src/main/java/com/egzosn/pay/union/api/UnionPayConfigStorage.java +++ b/pay-java-union/src/main/java/com/egzosn/pay/union/api/UnionPayConfigStorage.java @@ -5,11 +5,11 @@ import com.egzosn.pay.common.api.BasePayConfigStorage; /** * @author Actinia - * - *

- * email hayesfu@qq.com
- *   create 2017 2017/11/4 0004
- * 
+ *

+ *

+ *         email hayesfu@qq.com
+ *           create 2017 2017/11/4 0004
+ *         
*/ public class UnionPayConfigStorage extends BasePayConfigStorage { @@ -17,20 +17,20 @@ public class UnionPayConfigStorage extends BasePayConfigStorage { /** * 商户号 */ - private volatile String merId; + private String merId; /** * 商户收款账号 */ - private volatile String seller; + private String seller; - private volatile String version = "5.1.0"; + private String version = "5.1.0"; /** * 0:普通商户直连接入 * 1: 收单机构 * 2:平台类商户接入 */ - private volatile String accessType = "0"; + private String accessType = "0"; /** * 中级证书路径 @@ -43,38 +43,42 @@ public class UnionPayConfigStorage extends BasePayConfigStorage { /** * 私钥证书是否已经初始化 - * 默认没有 + * 默认没有 */ private boolean keyPrivateInit = false; /** * 公钥证书是否已经初始化 - * 默认没有 + * 默认没有 */ private boolean keyPublicInit = false; /** * 设置私钥证书 + * * @param certificatePath 私钥证书地址 - * 私钥证书密码 {@link #setKeyPrivateCertPwd(String)} + * 私钥证书密码 {@link #setKeyPrivateCertPwd(String)} */ - public void setKeyPrivateCert(String certificatePath){ + public void setKeyPrivateCert(String certificatePath) { super.setKeyPrivate(certificatePath); } /** * 设置中级证书 + * * @param certificatePath 证书地址 */ - public void setAcpMiddleCert(String certificatePath){ + public void setAcpMiddleCert(String certificatePath) { this.acpMiddleCert = certificatePath; } + /** * 设置根证书路径 + * * @param certificatePath 证书路径 */ - public void setAcpRootCert(String certificatePath){ + public void setAcpRootCert(String certificatePath) { this.acpRootCert = certificatePath; } @@ -87,20 +91,20 @@ public class UnionPayConfigStorage extends BasePayConfigStorage { } /** + * 设置私钥证书与证书密码 * - * 设置私钥证书与证书密码 * @param keyPrivate 私钥证书与证书对应的密码 格式: D:/certs/acp_test_sign.pfx;000000 - * 替代方法 - * {@link #setKeyPrivateCert(String)} - * {@link #setKeyPrivateCertPwd(String)} + * 替代方法 + * {@link #setKeyPrivateCert(String)} + * {@link #setKeyPrivateCertPwd(String)} */ @Deprecated @Override public void setKeyPrivate(String keyPrivate) { super.setKeyPrivate(keyPrivate); - if (isCertSign() && keyPrivate.length() < 1024 && keyPrivate.contains(";")){ + if (isCertSign() && keyPrivate.length() < 1024 && keyPrivate.contains(";")) { String[] split = keyPrivate.split(";"); - super.setKeyPrivateCertPwd( split[1]); + super.setKeyPrivateCertPwd(split[1]); super.setKeyPrivate(split[0]); getCertDescriptor().initPrivateSignCert(getKeyPrivate(), getKeyPrivateCertPwd(), "PKCS12"); keyPrivateInit = true; @@ -109,16 +113,17 @@ public class UnionPayConfigStorage extends BasePayConfigStorage { /** * 设置中级证书与根证书 格式:D:/certs/acp_test_middle.cer;D:/certs/acp_test_root.cer + * * @param keyPublic 中级证书与根证书 - * 替代方法 - * {@link #setAcpRootCert(String)} - * {@link #setAcpMiddleCert(String)} + * 替代方法 + * {@link #setAcpRootCert(String)} + * {@link #setAcpMiddleCert(String)} */ @Deprecated @Override public void setKeyPublic(String keyPublic) { super.setKeyPublic(keyPublic); - if (isCertSign() && keyPublic.length() < 1024 ){ + if (isCertSign() && keyPublic.length() < 1024) { String[] split = keyPublic.split(";"); getCertDescriptor().initPublicCert(split[0]); getCertDescriptor().initRootCert(split[1]); @@ -157,15 +162,16 @@ public class UnionPayConfigStorage extends BasePayConfigStorage { return merId; } - public void setPid (String pid) { + public void setPid(String pid) { this.merId = pid; } + @Override public String getSeller() { return seller; } - public void setSeller (String seller) { + public void setSeller(String seller) { this.seller = seller; } @@ -173,7 +179,7 @@ public class UnionPayConfigStorage extends BasePayConfigStorage { return merId; } - public void setMerId (String merId) { + public void setMerId(String merId) { this.merId = merId; } diff --git a/pay-java-wx-youdian/src/main/java/com/egzosn/pay/wx/youdian/api/WxYouDianPayConfigStorage.java b/pay-java-wx-youdian/src/main/java/com/egzosn/pay/wx/youdian/api/WxYouDianPayConfigStorage.java index 8523223..7548278 100644 --- a/pay-java-wx-youdian/src/main/java/com/egzosn/pay/wx/youdian/api/WxYouDianPayConfigStorage.java +++ b/pay-java-wx-youdian/src/main/java/com/egzosn/pay/wx/youdian/api/WxYouDianPayConfigStorage.java @@ -4,10 +4,11 @@ import com.egzosn.pay.common.api.BasePayConfigStorage; /** * 支付客户端配置存储 - * @author egan * - * email egzosn@gmail.com - * date 2017/01/12 22:58 + * @author egan + *

+ * email egzosn@gmail.com + * date 2017/01/12 22:58 */ public class WxYouDianPayConfigStorage extends BasePayConfigStorage { @@ -15,11 +16,7 @@ public class WxYouDianPayConfigStorage extends BasePayConfigStorage { /** * 账号 */ - public volatile String seller; - - - - + public String seller; @Override @@ -43,9 +40,8 @@ public class WxYouDianPayConfigStorage extends BasePayConfigStorage { } - public void setToken(String accessToken) { - setAccessToken(accessToken); + setAccessToken(accessToken); } @Override @@ -54,8 +50,4 @@ public class WxYouDianPayConfigStorage extends BasePayConfigStorage { } - - - - }