| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- package com.zhongzheng.common.wxpay;
- /**
- * 域名管理,实现主备域名自动切换
- */
- public abstract interface IWXPayDomain {
- /**
- * 上报域名网络状况
- * @param domain 域名。 比如:api.mch.weixin.qq.com
- * @param elapsedTimeMillis 耗时
- * @param ex 网络请求中出现的异常。
- * null表示没有异常
- * ConnectTimeoutException,表示建立网络连接异常
- * UnknownHostException, 表示dns解析异常
- */
- abstract void report(final String domain, long elapsedTimeMillis, final Exception ex);
- /**
- * 获取域名
- * @param config 配置
- * @return 域名
- */
- abstract DomainInfo getDomain(final WXPayConfig config);
- static class DomainInfo{
- public String domain; //域名
- public boolean primaryDomain; //该域名是否为主域名。例如:api.mch.weixin.qq.com为主域名
- public DomainInfo(String domain, boolean primaryDomain) {
- this.domain = domain;
- this.primaryDomain = primaryDomain;
- }
- @Override
- public String toString() {
- return "DomainInfo{" +
- "domain='" + domain + '\'' +
- ", primaryDomain=" + primaryDomain +
- '}';
- }
- }
- }
|