18e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project/* 28e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * Copyright 2007, The Android Open Source Project 38e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * 48e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * Redistribution and use in source and binary forms, with or without 58e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * modification, are permitted provided that the following conditions 68e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * are met: 78e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * * Redistributions of source code must retain the above copyright 88e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * notice, this list of conditions and the following disclaimer. 98e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * * Redistributions in binary form must reproduce the above copyright 108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * notice, this list of conditions and the following disclaimer in the 118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * documentation and/or other materials provided with the distribution. 128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * 138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS'' AND ANY 148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 16e03118fd5d9b776df29de3f96232ed6b5395c845Steve Block * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project */ 25e03118fd5d9b776df29de3f96232ed6b5395c845Steve Block 268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "config.h" 27730ef1944495761bb07f38e435da91f1ad059972Andrei Popescu 288457f5dc1324682e3874821191e733aa37d95edbAndrei Popescu#include "CookieJar.h" 298457f5dc1324682e3874821191e733aa37d95edbAndrei Popescu 3040a90188cf739cbcc2a44669c05ca526aaf0b0d8Andrei Popescu#include "PlatformBridge.h" 318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectnamespace WebCore { 338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 34918f81255bd5490e0536420428111e71d31ae209Elliott Slaughtervoid setCookies(Document* document, const KURL& url, const String& value) 35730ef1944495761bb07f38e435da91f1ad059972Andrei Popescu{ 36918f81255bd5490e0536420428111e71d31ae209Elliott Slaughter PlatformBridge::setCookies(document, url, value); 37730ef1944495761bb07f38e435da91f1ad059972Andrei Popescu} 38730ef1944495761bb07f38e435da91f1ad059972Andrei Popescu 39918f81255bd5490e0536420428111e71d31ae209Elliott SlaughterString cookies(const Document* document, const KURL& url) 40730ef1944495761bb07f38e435da91f1ad059972Andrei Popescu{ 41918f81255bd5490e0536420428111e71d31ae209Elliott Slaughter return PlatformBridge::cookies(document, url); 42730ef1944495761bb07f38e435da91f1ad059972Andrei Popescu} 43730ef1944495761bb07f38e435da91f1ad059972Andrei Popescu 44918f81255bd5490e0536420428111e71d31ae209Elliott SlaughterString cookieRequestHeaderFieldValue(const Document* document, const KURL& url) 458a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block{ 468a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block // FIXME: include HttpOnly cookie. 47918f81255bd5490e0536420428111e71d31ae209Elliott Slaughter return PlatformBridge::cookies(document, url); 488a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block} 498a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block 50918f81255bd5490e0536420428111e71d31ae209Elliott Slaughterbool cookiesEnabled(const Document* document) 51730ef1944495761bb07f38e435da91f1ad059972Andrei Popescu{ 52918f81255bd5490e0536420428111e71d31ae209Elliott Slaughter return PlatformBridge::cookiesEnabled(document); 53730ef1944495761bb07f38e435da91f1ad059972Andrei Popescu} 548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 5581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochvoid getHostnamesWithCookies(HashSet<String>& hostnames) 5681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch{ 5781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch // FIXME: Not yet implemented 5881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch} 5981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 6081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochvoid deleteCookiesForHostname(const String& hostname) 6181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch{ 6281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch // FIXME: Not yet implemented 6381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch} 6481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 6581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochvoid deleteAllCookies() 6681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch{ 6781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch // FIXME: Not yet implemented 6881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch} 6981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project} 71