18e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project/* 28e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * Copyright (C) 2006 Apple Computer, Inc. All rights reserved. 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 * 1. 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 * 2. 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 APPLE COMPUTER, INC. ``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 168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. 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 */ 258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#ifndef ResourceResponse_h 278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#define ResourceResponse_h 288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "ResourceResponseBase.h" 308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 31231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block#include <libsoup/soup.h> 32231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block 338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectnamespace WebCore { 348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectclass ResourceResponse : public ResourceResponseBase { 368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectpublic: 378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project ResourceResponse() 388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project : ResourceResponseBase() 39dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block , m_soupFlags(static_cast<SoupMessageFlags>(0)) 408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project { 418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project } 428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project ResourceResponse(const KURL& url, const String& mimeType, long long expectedLength, const String& textEncodingName, const String& filename) 448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project : ResourceResponseBase(url, mimeType, expectedLength, textEncodingName, filename) 458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project { 468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project } 478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 48643ca7872b450ea4efacab6188849e5aac2ba161Steve Block ResourceResponse(SoupMessage* soupMessage) 49643ca7872b450ea4efacab6188849e5aac2ba161Steve Block : ResourceResponseBase() 50dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block , m_soupFlags(static_cast<SoupMessageFlags>(0)) 51643ca7872b450ea4efacab6188849e5aac2ba161Steve Block { 52643ca7872b450ea4efacab6188849e5aac2ba161Steve Block updateFromSoupMessage(soupMessage); 53643ca7872b450ea4efacab6188849e5aac2ba161Steve Block } 54643ca7872b450ea4efacab6188849e5aac2ba161Steve Block 55231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block SoupMessage* toSoupMessage() const; 56643ca7872b450ea4efacab6188849e5aac2ba161Steve Block void updateFromSoupMessage(SoupMessage* soupMessage); 57231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block 58dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block SoupMessageFlags soupMessageFlags() const { return m_soupFlags; } 59dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block void setSoupMessageFlags(SoupMessageFlags soupFlags) { m_soupFlags = soupFlags; } 60dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectprivate: 628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project friend class ResourceResponseBase; 638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 64dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block SoupMessageFlags m_soupFlags; 65dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 66a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch void doUpdateResourceResponse() { } 67a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch 68a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch PassOwnPtr<CrossThreadResourceResponseData> doPlatformCopyData(PassOwnPtr<CrossThreadResourceResponseData> data) const { return data; } 69a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch void doPlatformAdopt(PassOwnPtr<CrossThreadResourceResponseData>) { } 70a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch}; 71a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch 72a94275402997c11dd2e778633dacf4b7e630a35dBen Murdochstruct CrossThreadResourceResponseData : public CrossThreadResourceResponseDataBase { 738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}; 748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project} // namespace WebCore 768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#endif // ResourceResponse_h 78