package com.ruoyi.order.util.tencent.service; import com.ruoyi.order.util.tencent.common.IWXPayDomain; import com.ruoyi.order.util.tencent.common.WXPayConfig; import java.io.ByteArrayInputStream; import java.io.File; import java.io.FileInputStream; import java.io.InputStream; public class WXPayConfigImpl extends WXPayConfig { private byte[] certData; private static WXPayConfigImpl INSTANCE; private WXPayConfigImpl() throws Exception{ String certPath = WXPayConfigImpl.class.getClassLoader().getResource("").getPath() + "com/ruoyi/order/util/tencent/common/cert/apiclient_cert.p12"; File file = new File(certPath); InputStream certStream = new FileInputStream(file); this.certData = new byte[(int) file.length()]; certStream.read(this.certData); certStream.close(); } public static WXPayConfigImpl getInstance() throws Exception{ if (INSTANCE == null) { synchronized (WXPayConfigImpl.class) { if (INSTANCE == null) { INSTANCE = new WXPayConfigImpl(); } } } return INSTANCE; } public String getMchID() { return "11473623"; } public String getKey() { return "2ab9071b06b9f739b950ddb41db2690d"; } public InputStream getCertStream() { ByteArrayInputStream certBis; certBis = new ByteArrayInputStream(this.certData); return certBis; } public int getHttpConnectTimeoutMs() { return 2000; } public int getHttpReadTimeoutMs() { return 10000; } public IWXPayDomain getWXPayDomain() { return WXPayDomainSimpleImpl.instance(); } public String getPrimaryDomain() { return "api.mch.weixin.qq.com"; } public String getAlternateDomain() { return "api2.mch.weixin.qq.com"; } @Override public int getReportWorkerNum() { return 1; } @Override public int getReportBatchSize() { return 2; } @Override public String getAppID() { // TODO Auto-generated method stub return null; } }