All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.rx.net.http.cookie.MemoryCookiePersistor Maven / Gradle / Ivy

There is a newer version: 3.0.0
Show newest version
package org.rx.net.http.cookie;

import java.util.*;

import okhttp3.Cookie;

public class MemoryCookiePersistor implements CookiePersistor {
    static String createCookieKey(Cookie cookie) {
        return (cookie.secure() ? "https" : "http") + "://" + cookie.domain() + cookie.path() + "|" + cookie.name();
    }

    final Map store = new HashMap<>();

    @Override
    public List loadAll() {
        return new ArrayList<>(store.values());
    }

    @Override
    public void saveAll(Collection cookies) {
        for (Cookie cookie : cookies) {
            store.put(createCookieKey(cookie), cookie);
        }
    }

    @Override
    public void removeAll(Collection cookies) {
        for (Cookie cookie : cookies) {
            store.remove(createCookieKey(cookie));
        }
    }

    @Override
    public void clear() {
        store.clear();
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy