1// Copyright (c) 2012 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef CONTENT_RENDERER_RENDERER_WEBCOOKIEJAR_IMPL_H_
6#define CONTENT_RENDERER_RENDERER_WEBCOOKIEJAR_IMPL_H_
7
8// TODO(darin): WebCookieJar.h is missing a WebString.h include!
9#include "third_party/WebKit/public/platform/WebCookieJar.h"
10
11namespace content {
12class RenderFrameImpl;
13
14class RendererWebCookieJarImpl : public blink::WebCookieJar {
15 public:
16  explicit RendererWebCookieJarImpl(RenderFrameImpl* sender)
17      : sender_(sender) {
18  }
19  virtual ~RendererWebCookieJarImpl() {}
20
21 private:
22  // blink::WebCookieJar methods:
23  virtual void setCookie(
24      const blink::WebURL& url, const blink::WebURL& first_party_for_cookies,
25      const blink::WebString& value);
26  virtual blink::WebString cookies(
27      const blink::WebURL& url, const blink::WebURL& first_party_for_cookies);
28  virtual blink::WebString cookieRequestHeaderFieldValue(
29      const blink::WebURL& url, const blink::WebURL& first_party_for_cookies);
30  virtual void rawCookies(
31      const blink::WebURL& url, const blink::WebURL& first_party_for_cookies,
32      blink::WebVector<blink::WebCookie>& cookies);
33  virtual void deleteCookie(
34      const blink::WebURL& url, const blink::WebString& cookie_name);
35  virtual bool cookiesEnabled(
36      const blink::WebURL& url, const blink::WebURL& first_party_for_cookies);
37
38  RenderFrameImpl* sender_;
39};
40
41}  // namespace content
42
43#endif  // CONTENT_RENDERER_RENDERER_WEBCOOKIEJAR_IMPL_H_
44