OSDN Git Service

ログ出力の見直し.
[coroid/NicoBrowser.git] / src / nicobrowser / main / Main.java
index c12a527..2c6fe46 100644 (file)
@@ -1,11 +1,6 @@
 /*$Id$*/
 package nicobrowser.main;
 
-import java.io.IOException;
-import java.net.URISyntaxException;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-import nicobrowser.*;
 import java.io.File;
 import java.util.ArrayList;
 import java.util.Calendar;
@@ -17,24 +12,30 @@ import javax.persistence.EntityManagerFactory;
 import javax.persistence.EntityTransaction;
 import javax.persistence.Persistence;
 import javax.persistence.Query;
+import nicobrowser.Config;
+import nicobrowser.NicoHttpClient;
 import nicobrowser.entity.NicoContent;
 import nicobrowser.entity.NicoContent.Status;
-import org.apache.http.HttpException;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
 
 public class Main {
 
+    private static Log log = LogFactory.getLog(Main.class);
+
     public static void main(String[] args) {
-        System.out.println("Start");
         new Main();
     }
 
     public Main() {
+        log.info("program start");
+
         Config config = Config.getInstance();
         List<NicoContent> dailyList = null;
         ArrayList<List<NicoContent>> myLists = new ArrayList<List<NicoContent>>();
         NicoHttpClient instance = null;
         try {
-            System.out.println("リストの取得");
+            log.info("リストを取得します");
             instance = NicoHttpClient.getInstance();
             //list = instance.loadMyList("4315046");
             dailyList = instance.loadMyListDaily();
@@ -48,7 +49,8 @@ public class Main {
             return;
         }
 
-        System.out.println("DBとの突合せ");
+        log.info("今回取得したデータを過去の取得データと比較します");
+
         EntityManagerFactory factory;
         EntityManager manager;
 
@@ -94,29 +96,30 @@ public class Main {
                     long sleep = nowDate.getTime() - prevDate.getTime();
                     sleep = 5000 - sleep;
                     if (sleep > 0) {
-                        System.out.print("" + sleep + "ms sleep");
+                        log.info("" + sleep + "ms sleep");
                         Thread.sleep(sleep);
                     }
                 }
                 prevDate = Calendar.getInstance().getTime();
-                System.out.print("FLVファイル取得: " + config.getSrcSaveDir() + File.separator + c.getFileName());
+                File saveDir = new File(config.getSrcSaveDir(), c.getFileName());
+                log.info("ファイルを取得します: " + saveDir.getCanonicalPath());
                 Status status;
                 try {
                     status = instance.getFlvFile(c.getNicoId(),
-                            config.getSrcSaveDir() + File.separator + c.getFileName(), c.getStatus(),
+                            saveDir.getCanonicalPath(), c.getStatus(),
                             config.isExtMp4Use());
                     c.setStatus(status);
                     if (status == Status.GET_INFO) {
                         c.setFailTimes(c.getFailTimes() + 1);
                     }
                 } catch (Exception ex) {
-                    Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
                     c.setFailTimes(c.getFailTimes() + 1);
+                    log.fatal("ファイル取得に失敗しました。" + c.getNicoId() + ", 通算失敗回数: " + c.getFailTimes(), ex);
                 }
                 transaction.begin();
                 manager.persist(c);
                 transaction.commit();
-                System.out.println("...完了");
+                log.info("完了しました");
             }
         } catch (Exception ex) {
             ex.printStackTrace();
@@ -133,7 +136,7 @@ public class Main {
                 setParameter(1, c.getNicoId());
         List<NicoContent> resList = query.getResultList();
         if (resList.isEmpty()) {
-            System.out.println("NEW! " + c.getNicoId() + " : " + c.getFileName());
+            log.info("NEW! " + c.getNicoId() + " : " + c.getFileName());
             manager.persist(c);
         }
     }