1 package com.xtremelabs.robolectric.shadows; 2 3 import android.webkit.CookieManager; 4 import com.xtremelabs.robolectric.Robolectric; 5 import com.xtremelabs.robolectric.internal.Implementation; 6 import com.xtremelabs.robolectric.internal.Implements; 7 8 import java.util.HashMap; 9 import java.util.Map; 10 11 /** 12 * Shadows the {@code android.telephony.TelephonyManager} class. 13 */ 14 @SuppressWarnings({"UnusedDeclaration"}) 15 @Implements(CookieManager.class) 16 public class ShadowCookieManager { 17 private static CookieManager sRef; 18 private Map<String,String> cookies = new HashMap<String, String>(); 19 private boolean accept; 20 21 @Implementation 22 public static CookieManager getInstance() { 23 if (sRef == null) { 24 sRef = Robolectric.newInstanceOf(CookieManager.class); 25 } 26 return sRef; 27 } 28 29 @Implementation 30 public void setCookie(String url, String value) { 31 cookies.put(url, value); 32 } 33 34 @Implementation 35 public String getCookie(String url) { 36 return cookies.get(url); 37 } 38 39 @Implementation 40 public void setAcceptCookie(boolean accept) { 41 this.accept = accept; 42 } 43 44 @Implementation 45 public boolean acceptCookie() { 46 return this.accept; 47 } 48 49 @Implementation 50 public void removeAllCookie() { 51 cookies.clear(); 52 } 53 } 54