OSDN Git Service

Cookie関係情報をコンフィグから取得しプロファイルを作成する処理の実装
[coroid/inqubus.git] / frontend / src / yukihane / inqubus / config / Config.java
index 9499567..1b94606 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 saccubus.net.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);
+    }
     /*
      * ネットワーク - プロキシ
      */