OSDN Git Service

Cookieのパッケージ移動
[coroid/inqubus.git] / frontend / src / yukihane / inqubus / config / ConfigLoginProfile.java
index 29cdbf2..7783584 100644 (file)
@@ -1,7 +1,11 @@
 package yukihane.inqubus.config;
 
+import java.util.HashMap;
+import java.util.Map;
 import org.apache.commons.lang.builder.ToStringBuilder;
+import yukihane.inqubus.cookie.Cookie;
 import saccubus.worker.profile.LoginProfile;
+import yukihane.inqubus.config.Config.CookieBrowser;
 
 /**
  * コンフィグに設定された値を基にしたLoginProfile実装.
@@ -9,13 +13,26 @@ import saccubus.worker.profile.LoginProfile;
  */
 public class ConfigLoginProfile implements LoginProfile {
 
+    private final boolean login;
     private final String mail;
     private final String password;
+    private final Map<String, String> cookies;
 
     public ConfigLoginProfile() {
         final Config p = Config.INSTANCE;
+        this.login = p.getNeedsLogin();
         this.mail = p.getId();
         this.password = p.getPassword();
+
+        final CookieBrowser cookieBrowser = p.getCookieBrowser();
+        final String cookieDir = p.getCookieDir();
+        final Cookie cookie = Cookie.create(cookieBrowser.toBrowserType(), cookieDir);
+        this.cookies = new HashMap<>(cookie.get());
+    }
+
+    @Override
+    public boolean needsLogin() {
+        return this.login;
     }
 
     @Override
@@ -29,6 +46,11 @@ public class ConfigLoginProfile implements LoginProfile {
     }
 
     @Override
+    public Map<String, String> getCookies() {
+        return new HashMap<>(this.cookies);
+    }
+
+    @Override
     public String toString() {
         return ToStringBuilder.reflectionToString(this);
     }