OSDN Git Service

fix #26044 2011/2/3版コメント取得で公式動画用パラメータ設定が漏れていた
authoryukihane <yukihane.feather@gmail.com>
Wed, 17 Aug 2011 18:29:27 +0000 (03:29 +0900)
committeryukihane <yukihane.feather@gmail.com>
Wed, 17 Aug 2011 18:29:27 +0000 (03:29 +0900)
src/nicobrowser/NicoHttpClient.java

index 31800e6..d9121fa 100644 (file)
@@ -851,7 +851,7 @@ public class NicoHttpClient {
     }
 
     private String createCommendDownloadParameter(VideoInfo vi, WayBackInfo wayback, Integer commentNum) {
-        final String quote = "\"";
+        final Map<String, String> threadKey = vi.getKeyMap();
         final Map<String, String> th = new HashMap<String, String>();
         th.put("thread", vi.getThreadId());
         th.put("version", "20090904");
@@ -873,27 +873,13 @@ public class NicoHttpClient {
         str.append("<packet>");
 
         str.append("<thread");
-        for (String k : th.keySet()) {
-            final String v = th.get(k);
-            str.append(" ");
-            str.append(k);
-            str.append("=");
-            str.append(quote);
-            str.append(v);
-            str.append(quote);
-        }
+        addMapToAttr(str, th);
+        addMapToAttr(str, threadKey);
         str.append(" />");
 
         str.append("<thread_leaves");
-        for (String k : leaf.keySet()) {
-            final String v = th.get(k);
-            str.append(" ");
-            str.append(k);
-            str.append("=");
-            str.append(quote);
-            str.append(v);
-            str.append(quote);
-        }
+        addMapToAttr(str, leaf);
+        addMapToAttr(str, threadKey);
         str.append(">");
         str.append(element);
         str.append("</thread_leaves>");
@@ -903,6 +889,19 @@ public class NicoHttpClient {
         return str.toString();
     }
 
+    private static void addMapToAttr(final StringBuilder str, final Map<String, String> map) {
+        final String quote = "\"";
+        for (String k : map.keySet()) {
+            final String v = map.get(k);
+            str.append(" ");
+            str.append(k);
+            str.append("=");
+            str.append(quote);
+            str.append(v);
+            str.append(quote);
+        }
+    }
+
     /**
      * 2010/12/22 までのコメント表示仕様に基づいた取得パラメータ生成.
      * 「コメントの量を減らす」にチェックを入れた場合は現在でもこれが用いられているはず.