OSDN Git Service

Cookieのパッケージ移動
[coroid/inqubus.git] / frontend / src / yukihane / inqubus / config / Config.java
index 7e654e8..106f74e 100644 (file)
@@ -5,10 +5,54 @@ import java.util.ArrayList;
 import java.util.List;
 import org.apache.commons.configuration.ConfigurationException;
 import org.apache.commons.configuration.XMLConfiguration;
+import yukihane.inqubus.cookie.Cookie.BrowserType;
 
 public enum Config {
 
     INSTANCE;
+
+    public enum CookieBrowser {
+
+        MSIE {
+
+            @Override
+            public BrowserType toBrowserType() {
+                return BrowserType.MSIE;
+            }
+        }, FIREFOX {
+
+            @Override
+            public BrowserType toBrowserType() {
+                return BrowserType.FIREFOX;
+            }
+        }, CHROME {
+
+            @Override
+            public BrowserType toBrowserType() {
+                return BrowserType.CHROME;
+            }
+        }, CHROMIUM {
+
+            @Override
+            public BrowserType toBrowserType() {
+                return BrowserType.CHROMIUM;
+            }
+        }, OPERA {
+
+            @Override
+            public BrowserType toBrowserType() {
+                return BrowserType.OPERA;
+            }
+        }, OTHER {
+
+            @Override
+            public BrowserType toBrowserType() {
+                return BrowserType.OTHER;
+            }
+        };
+
+        public abstract BrowserType toBrowserType();
+    }
     private final XMLConfiguration config = new XMLConfiguration();
 
     void clear() {
@@ -18,6 +62,15 @@ public enum Config {
     /*
      * ネットワーク - アカウント
      */
+    private static final String LOGIN_NEED = "network.login";
+
+    public boolean getNeedsLogin() {
+        return config.getBoolean(LOGIN_NEED, true);
+    }
+
+    public void setNeedsLogin(boolean s) {
+        config.setProperty(LOGIN_NEED, s);
+    }
     private static final String ACCOUNT_ID = "network.account.id";
 
     public String getId() {
@@ -36,7 +89,25 @@ public enum Config {
     public void setPassword(String s) {
         config.setProperty(ACCOUNT_PASSWORD, s);
     }
+    private static final String COOKIE_BROWSER = "network.cookie.browser";
+
+    public CookieBrowser getCookieBrowser() {
+        final String str = config.getString(COOKIE_BROWSER, CookieBrowser.MSIE.name());
+        return CookieBrowser.valueOf(str);
+    }
+
+    public void setCookieBrowser(CookieBrowser s) {
+        config.setProperty(COOKIE_BROWSER, s.name());
+    }
+    private static final String COOKIE_DIR = "network.cookie.dir";
+
+    public String getCookieDir() {
+        return config.getString(COOKIE_DIR, "");
+    }
 
+    public void setCookieDir(String s) {
+        config.setProperty(COOKIE_DIR, s);
+    }
     /*
      * ネットワーク - プロキシ
      */
@@ -328,6 +399,15 @@ public enum Config {
     public void setFfmpegDllPath(String s) {
         config.setProperty(FFMPEG_DLLPATH, s);
     }
+    private static final String MEDIAINFO_PATH = "ffmpeg.mediainfopath";
+
+    public String getMediaInfoPath() {
+        return config.getString(MEDIAINFO_PATH, "bin/MediaInfo.exe");
+    }
+
+    public void setMediaInfoPath(String s) {
+        config.setProperty(MEDIAINFO_PATH, s);
+    }
     private static final String FFMPEG_PARAM_OPTIONFILE = "ffmpeg.param.optionfile";
 
     public String getFfmpegOptionFile() {
@@ -445,7 +525,6 @@ public enum Config {
     }
 
     public void setNgWords(List<String> s) {
-        final String[] str = s.toArray(new String[0]);
         config.setProperty(NG_WORD, s);
     }
     private static final String NG_ID = "ng.id";
@@ -543,7 +622,7 @@ public enum Config {
     private static final String SYSTEM_WINDOW_POS_X = "system.window.posx";
 
     public int getSystemWindowPosX() {
-        return config.getInt(SYSTEM_WINDOW_POS_X, Integer.MIN_VALUE);
+        return config.getInt(SYSTEM_WINDOW_POS_X, Integer.MIN_VALUE / 2);
     }
 
     public void setSystemWindowPosX(int s) {
@@ -552,7 +631,7 @@ public enum Config {
     private static final String SYSTEM_WINDOW_POS_Y = "system.window.posy";
 
     public int getSystemWindowPosY() {
-        return config.getInt(SYSTEM_WINDOW_POS_Y, Integer.MIN_VALUE);
+        return config.getInt(SYSTEM_WINDOW_POS_Y, Integer.MIN_VALUE / 2);
     }
 
     public void setSystemWindowPosY(int s) {