正在查看: 新暖心缘 v8.1.1 应用的 AutoZone.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: 新暖心缘 v8.1.1 应用的 AutoZone.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.qiniu.common;
import com.qiniu.http.Client;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
@Deprecated
public final class AutoZone extends Zone {
public static AutoZone instance = new AutoZone();
private Client client;
private Map<String, Zone> inferDomainsMap;
public final String ucServer;
private Map<ZoneIndex, ZoneInfo> zones;
private class UCRet {
Map<String, List<String>> http;
Map<String, List<String>> https;
private UCRet() {
}
}
private static class ZoneIndex {
private final String accessKey;
private final String bucket;
ZoneIndex(String str, String str2) {
this.accessKey = str;
this.bucket = str2;
}
public boolean equals(Object obj) {
if (obj != this) {
if (obj != null && (obj instanceof ZoneIndex)) {
ZoneIndex zoneIndex = (ZoneIndex) obj;
if (!zoneIndex.accessKey.equals(this.accessKey) || !zoneIndex.bucket.equals(this.bucket)) {
}
}
return false;
}
return true;
}
public int hashCode() {
return (this.accessKey.hashCode() * 37) + this.bucket.hashCode();
}
}
static class ZoneInfo {
final String iovipHttp;
final String iovipHttps;
final String upBackupHttp;
final String upBackupHttps;
final String upHttp;
final String upHttps;
final String upIpHttp;
final String upIpHttps;
private ZoneInfo(String str, String str2, String str3, String str4, String str5, String str6, String str7, String str8) {
this.upHttp = str;
this.upBackupHttp = str2;
this.upIpHttp = str3;
this.iovipHttp = str4;
this.upHttps = str5;
this.upBackupHttps = str6;
this.upIpHttps = str7;
this.iovipHttps = str8;
}
static ZoneInfo buildFromUcRet(UCRet uCRet) {
List<String> list = uCRet.http.get("up");
String str = list.get(0);
String str2 = list.get(1);
String str3 = list.get(2).split(" ")[2].split("//")[1];
String str4 = uCRet.http.get("io").get(0);
List<String> list2 = uCRet.https.get("up");
String str5 = list2.get(0);
return new ZoneInfo(str, str2, str3, str4, str5, list2.size() > 1 ? list2.get(1) : str5, list2.size() > 2 ? list2.get(2).split(" ")[2].split("//")[1] : "", uCRet.https.get("io").get(0));
}
}
public AutoZone() {
this("https://uc.qbox.me");
}
private UCRet getZoneJson(ZoneIndex zoneIndex) throws QiniuException {
return (UCRet) this.client.get(this.ucServer + "/v1/query?ak=" + zoneIndex.accessKey + "&bucket=" + zoneIndex.bucket).jsonToObject(UCRet.class);
}
@Override
public String getApiHttp(ZoneReqInfo zoneReqInfo) {
ZoneInfo queryZoneInfo = queryZoneInfo(zoneReqInfo);
if (queryZoneInfo == null) {
return super.getApiHttp();
}
Zone zone = this.inferDomainsMap.get(queryZoneInfo.upHttp);
return zone != null ? zone.getApiHttp() : super.getApiHttp();
}
@Override
public String getApiHttps(ZoneReqInfo zoneReqInfo) {
ZoneInfo queryZoneInfo = queryZoneInfo(zoneReqInfo);
if (queryZoneInfo == null) {
return super.getApiHttps();
}
Zone zone = this.inferDomainsMap.get(queryZoneInfo.upHttp);
return zone != null ? zone.getApiHttps() : super.getApiHttps();
}
@Override
public String getIovipHttp(ZoneReqInfo zoneReqInfo) {
ZoneInfo queryZoneInfo = queryZoneInfo(zoneReqInfo);
return queryZoneInfo == null ? "" : queryZoneInfo.iovipHttp;
}
@Override
public String getIovipHttps(ZoneReqInfo zoneReqInfo) {
ZoneInfo queryZoneInfo = queryZoneInfo(zoneReqInfo);
return queryZoneInfo == null ? "" : queryZoneInfo.iovipHttps;
}
@Override
public String getRsHttp(ZoneReqInfo zoneReqInfo) {
ZoneInfo queryZoneInfo = queryZoneInfo(zoneReqInfo);
if (queryZoneInfo == null) {
return super.getRsHttp();
}
Zone zone = this.inferDomainsMap.get(queryZoneInfo.upHttp);
return zone != null ? zone.getRsHttp() : super.getRsHttp();
}
@Override
public String getRsHttps(ZoneReqInfo zoneReqInfo) {
ZoneInfo queryZoneInfo = queryZoneInfo(zoneReqInfo);
if (queryZoneInfo == null) {
return super.getRsHttps();
}
Zone zone = this.inferDomainsMap.get(queryZoneInfo.upHttp);
return zone != null ? zone.getRsHttps() : super.getRsHttps();
}
@Override
public String getRsfHttp(ZoneReqInfo zoneReqInfo) {
ZoneInfo queryZoneInfo = queryZoneInfo(zoneReqInfo);
if (queryZoneInfo == null) {
return super.getRsfHttp();
}
Zone zone = this.inferDomainsMap.get(queryZoneInfo.upHttp);
return zone != null ? zone.getRsfHttp() : super.getRsfHttp();
}
@Override
public String getRsfHttps(ZoneReqInfo zoneReqInfo) {
ZoneInfo queryZoneInfo = queryZoneInfo(zoneReqInfo);
if (queryZoneInfo == null) {
return super.getRsfHttps();
}
Zone zone = this.inferDomainsMap.get(queryZoneInfo.upHttp);
return zone != null ? zone.getRsfHttps() : super.getRsfHttps();
}
@Override
public String getUpBackupHttp(ZoneReqInfo zoneReqInfo) {
ZoneInfo queryZoneInfo = queryZoneInfo(zoneReqInfo);
return queryZoneInfo == null ? "" : queryZoneInfo.upBackupHttp;
}
@Override
public String getUpBackupHttps(ZoneReqInfo zoneReqInfo) {
ZoneInfo queryZoneInfo = queryZoneInfo(zoneReqInfo);
return queryZoneInfo == null ? "" : queryZoneInfo.upBackupHttps;
}
@Override
public String getUpHttp(ZoneReqInfo zoneReqInfo) {
ZoneInfo queryZoneInfo = queryZoneInfo(zoneReqInfo);
return queryZoneInfo == null ? "" : queryZoneInfo.upHttp;
}
@Override
public String getUpHttps(ZoneReqInfo zoneReqInfo) {
ZoneInfo queryZoneInfo = queryZoneInfo(zoneReqInfo);
return queryZoneInfo == null ? "" : queryZoneInfo.upHttps;
}
@Override
public String getUpIpHttp(ZoneReqInfo zoneReqInfo) {
ZoneInfo queryZoneInfo = queryZoneInfo(zoneReqInfo);
return queryZoneInfo == null ? "" : queryZoneInfo.upIpHttp;
}
@Override
public String getUpIpHttps(ZoneReqInfo zoneReqInfo) {
ZoneInfo queryZoneInfo = queryZoneInfo(zoneReqInfo);
return queryZoneInfo == null ? "" : queryZoneInfo.upIpHttps;
}
public ZoneInfo queryZoneInfo(String str, String str2) throws QiniuException {
ZoneIndex zoneIndex = new ZoneIndex(str, str2);
ZoneInfo zoneInfo = this.zones.get(zoneIndex);
if (zoneInfo == null) {
try {
zoneInfo = ZoneInfo.buildFromUcRet(getZoneJson(zoneIndex));
} catch (Exception e8) {
e8.printStackTrace();
}
if (zoneInfo != null) {
this.zones.put(zoneIndex, zoneInfo);
}
}
return zoneInfo;
}
public AutoZone(String str) {
this.ucServer = str;
this.client = new Client();
this.zones = new ConcurrentHashMap();
ConcurrentHashMap concurrentHashMap = new ConcurrentHashMap();
this.inferDomainsMap = concurrentHashMap;
concurrentHashMap.put("http://up.qiniu.com", Zone.zone0());
this.inferDomainsMap.put("http://up-z1.qiniu.com", Zone.zone1());
this.inferDomainsMap.put("http://up-z2.qiniu.com", Zone.zone2());
this.inferDomainsMap.put("http://up-na0.qiniu.com", Zone.zoneNa0());
this.inferDomainsMap.put("http://up-as0.qiniu.com", Zone.zoneAs0());
}
public ZoneInfo queryZoneInfo(ZoneReqInfo zoneReqInfo) {
try {
return queryZoneInfo(zoneReqInfo.getAccessKey(), zoneReqInfo.getBucket());
} catch (Exception e8) {
e8.printStackTrace();
return null;
}
}
}