OSDN Git Service

コンパイルエラー対応
[coroid/inqubus.git] / frontend / src / saccubus / net / CookieWinFirefox4.java
1 package saccubus.net;
2
3 import java.io.File;
4 import java.io.IOException;
5 import java.nio.file.Path;
6 import org.apache.commons.io.FileUtils;
7
8 /**
9  *
10  * @author yuki
11  */
12 public class CookieWinFirefox4 extends Cookie {
13
14     /// <summary>
15     /// Firefox4, 5 から user_session を取得。エラーが起こった場合、例外を投げずに空文字を返す
16     /// </summary>
17     /// <returns>user_session</returns>
18     @Override
19     public String getUserSessionString() throws IOException {
20         String user_session = "";
21         try {
22             String app_dir = System.getenv("APPDATA");
23             if (app_dir == null || app_dir.isEmpty()) {
24                 return "";
25             }
26             File dir = new File(app_dir + "\\Mozilla\\Firefox\\Profiles\\");
27             File[] userLists = dir.listFiles();
28             for (File user_dir : userLists) {
29                 File sqlist_filename = new File(user_dir, "cookies.sqlite");
30                 if (sqlist_filename.isFile()) {
31                     String dataStr = FileUtils.readFileToString(sqlist_filename, "US-ASCII");
32                     user_session = cutUserSession(dataStr);
33                     if (!user_session.isEmpty()) {
34                         return user_session;
35                     }
36                     // else continue
37                 }
38             }
39             return "";  // not found
40         } catch (Exception e) {
41             e.printStackTrace();
42             return "";
43         }
44
45     }
46 }