OSDN Git Service

リファクタリング. コメント表示数取得をフィールドでなく動画の長さから都度求めるように変更
authoryukihane <yukihane.feather@gmail.com>
Sun, 14 Aug 2011 22:06:24 +0000 (07:06 +0900)
committeryukihane <yukihane.feather@gmail.com>
Mon, 15 Aug 2011 02:02:11 +0000 (11:02 +0900)
src/nicobrowser/NicoHttpClient.java
src/nicobrowser/VideoInfo.java

index e67e3ca..37d0748 100644 (file)
@@ -842,7 +842,7 @@ public class NicoHttpClient {
         }
         final String officialOption = builder.toString();
 
-        return "<thread " + VideoInfo.KEY_USER_ID + "=\"" + vi.getUserId() + "\" res_from=\"" + vi.getResFrom()
+        return "<thread " + VideoInfo.KEY_USER_ID + "=\"" + vi.getUserId() + "\" res_from=\"" + (-1 * vi.getResFrom())
                 + "\" version=\"20061206\" thread=\"" + vi.getThreadId() + "\" " + tcommStr + officialOption + "/>";
     }
 
index 07af8b0..3857725 100644 (file)
@@ -28,7 +28,6 @@ public class VideoInfo {
     private final String userId;
     private final int videoLength;
     private final Map<String, String> keyMap;
-    private final String resFrom;
 
     /**
      *
@@ -47,16 +46,6 @@ public class VideoInfo {
             userId = getflvReceivedMap.get(KEY_USER_ID);
             videoLength = Integer.parseInt(getflvReceivedMap.get(KEY_VIDEO_LENGTH));
             this.keyMap = keyMap;
-
-            if (videoLength < 60) {
-                resFrom = "-100";
-            } else if (videoLength >= 60 && videoLength < 300) {
-                resFrom = "-250";
-            } else if (videoLength >= 300 && videoLength < 600) {
-                resFrom = "-500";
-            } else {
-                resFrom = "-1000";
-            }
         } catch (Exception e) {
             throw new IllegalArgumentException(e);
         }
@@ -98,7 +87,18 @@ public class VideoInfo {
         return keyMap;
     }
 
-    public String getResFrom() {
-        return resFrom;
+    /**
+     * 実際のres_fromに設定するにはこの値に-1をかける必要があります.
+     * @return 動画の長さに応じたコメント表示数.
+     */
+    public int getResFrom() {
+        if (videoLength < 60) {
+            return 100;
+        } else if (videoLength < 300) {
+            return 250;
+        } else if (videoLength < 600) {
+            return 500;
+        }
+        return 1000;
     }
 }