Skip to content

Commit f63bfc8

Browse files
authored
Merge pull request #410 from YangSen-qn/sdk_v7_uc_query_to_v4
version 7: uc query v2 to v4
2 parents fed2aa1 + e6a2abd commit f63bfc8

File tree

3 files changed

+24
-24
lines changed

3 files changed

+24
-24
lines changed

library/src/main/java/com/qiniu/android/common/AutoZone.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,12 +53,12 @@ public String getUcServer() {
5353
}
5454

5555
private void getZoneJsonAsync(LogHandler logHandler, ZoneIndex index, CompletionHandler handler) {
56-
String address = ucServer + "/v2/query?ak=" + index.accessKey + "&bucket=" + index.bucket;
56+
String address = ucServer + "/v4/query?ak=" + index.accessKey + "&bucket=" + index.bucket;
5757
client.asyncGet(logHandler, address, null, UpToken.NULL, handler);
5858
}
5959

6060
private ResponseInfo getZoneJsonSync(LogHandler logHandler, ZoneIndex index) {
61-
String address = ucServer + "/v2/query?ak=" + index.accessKey + "&bucket=" + index.bucket;
61+
String address = ucServer + "/v4/query?ak=" + index.accessKey + "&bucket=" + index.bucket;
6262
return client.syncGet(logHandler, address, null);
6363
}
6464

library/src/main/java/com/qiniu/android/common/ZoneInfo.java

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -35,35 +35,35 @@ public ZoneInfo(int ttl, List<String> upDomainsList, Map<String, Long> upDomains
3535
* @throws JSONException
3636
*/
3737
public static ZoneInfo buildFromJson(JSONObject obj) throws JSONException {
38-
int ttl = obj.getInt("ttl");
38+
3939
List<String> domainsList = new ArrayList<>();
4040
ConcurrentHashMap<String, Long> domainsMap = new ConcurrentHashMap<>();
41-
JSONObject upObj = obj.getJSONObject("up");
4241

43-
String[] upDomainTags = new String[]{"acc", "src", "old_acc", "old_src"};
44-
for (String tag : upDomainTags) {
45-
JSONObject tagRootObj = upObj.getJSONObject(tag);
46-
JSONArray tagMainObj = tagRootObj.getJSONArray("main");
47-
for (int i = 0; i < tagMainObj.length(); i++) {
48-
String upDomain = tagMainObj.getString(i);
49-
domainsList.add(upDomain);
50-
domainsMap.put(upDomain, 0L);
51-
}
42+
JSONArray hostsJson = obj.optJSONArray("hosts");
43+
44+
if (hostsJson == null || hostsJson.length() == 0){
45+
return new ZoneInfo(0, domainsList, domainsMap);
46+
}
5247

53-
try {
54-
JSONArray tagBackupObj = tagRootObj.getJSONArray("backup");
55-
if (tagBackupObj != null) {
56-
//this backup tag is optional
57-
for (int i = 0; i < tagBackupObj.length(); i++) {
58-
String upHost = tagBackupObj.getString(i);
59-
domainsList.add(upHost);
60-
domainsMap.put(upHost, 0L);
48+
JSONObject regionJson = hostsJson.optJSONObject(0);
49+
50+
int ttl = regionJson.optInt("ttl");
51+
JSONObject upObj = regionJson.optJSONObject("up");
52+
53+
String[] upDomainTags = new String[]{"domains", "old"};
54+
for (String tag : upDomainTags) {
55+
JSONArray tagObjects = upObj.optJSONArray(tag);
56+
if (tagObjects != null && tagObjects.length() > 0){
57+
for (int i = 0; i < tagObjects.length(); i++) {
58+
String upDomain = tagObjects.optString(i);
59+
if (upDomain != null && upDomain.length() > 0){
60+
domainsList.add(upDomain);
61+
domainsMap.put(upDomain, 0L);
6162
}
6263
}
63-
} catch (JSONException ex) {
64-
//some zone has not backup domain, just ignore here
6564
}
6665
}
66+
6767
return new ZoneInfo(ttl, domainsList, domainsMap);
6868
}
6969

library/src/main/java/com/qiniu/android/http/DnsPrefetcher.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -262,7 +262,7 @@ ResponseInfo getZoneJsonSync(DnsPrefetcher.ZoneIndex index) {
262262
if (!config.useHttps) {
263263
schema = "http://";
264264
}
265-
String address = schema + Config.preQueryHost + "/v2/query?ak=" + index.accessKey + "&bucket=" + index.bucket;
265+
String address = schema + Config.preQueryHost + "/v4/query?ak=" + index.accessKey + "&bucket=" + index.bucket;
266266

267267
LogHandler logHandler = UploadInfoElementCollector.getUplogHandler(UploadInfo.getReqInfo());
268268
logHandler.send("up_type", "uc_query");

0 commit comments

Comments
 (0)