1f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick/*
2f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick    Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
3f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick
4f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick    This library is free software; you can redistribute it and/or
5f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick    modify it under the terms of the GNU Library General Public
6f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick    License as published by the Free Software Foundation; either
7f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick    version 2 of the License, or (at your option) any later version.
8f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick
9f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick    This library is distributed in the hope that it will be useful,
10f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick    but WITHOUT ANY WARRANTY; without even the implied warranty of
11f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick    Library General Public License for more details.
13f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick
14f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick    You should have received a copy of the GNU Library General Public License
15f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick    along with this library; see the file COPYING.LIB.  If not, write to
16f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick    Boston, MA 02110-1301, USA.
18f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick*/
19f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick
20f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick#ifndef WebFrameNetworkingContext_h
21f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick#define WebFrameNetworkingContext_h
22f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick
23f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick#include <WebCore/FrameNetworkingContext.h>
2468513a70bcd92384395513322f1b801e7bf9c729Steve Block#include <WebCore/ResourceError.h>
25f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick
26f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrickclass WebFrameNetworkingContext : public WebCore::FrameNetworkingContext {
27f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrickpublic:
28f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick    static PassRefPtr<WebFrameNetworkingContext> create(WebCore::Frame*, const WTF::String& userAgent);
29f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick
30f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrickprivate:
31f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick    WebFrameNetworkingContext(WebCore::Frame* frame, const WTF::String& userAgent)
32f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick        : WebCore::FrameNetworkingContext(frame)
33f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick        , m_userAgent(userAgent)
34f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick    {
35f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick    }
36f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick
37f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick    virtual WTF::String userAgent() const;
38f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick    virtual WTF::String referrer() const;
3968513a70bcd92384395513322f1b801e7bf9c729Steve Block    virtual WebCore::ResourceError blockedError(const WebCore::ResourceRequest&) const;
40f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick
41f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick    WTF::String m_userAgent;
42f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick};
43f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick
44f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick#endif // WebFrameNetworkingContext_h
45