WebResponse.h revision bdcebcb37eb20e212451130aee402c1927ad0e14
19de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen/* 29de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen * Copyright 2010, The Android Open Source Project 39de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen * 49de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen * Redistribution and use in source and binary forms, with or without 59de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen * modification, are permitted provided that the following conditions 69de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen * are met: 79de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen * * Redistributions of source code must retain the above copyright 89de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen * notice, this list of conditions and the following disclaimer. 99de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen * * Redistributions in binary form must reproduce the above copyright 109de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen * notice, this list of conditions and the following disclaimer in the 119de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen * documentation and/or other materials provided with the distribution. 129de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen * 139de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS'' AND ANY 149de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 159de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 169de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 179de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 189de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 199de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 209de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 219de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 229de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 239de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 249de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen */ 259de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen 269de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen#ifndef WebResponse_h 279de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen#define WebResponse_h 289de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen 29bdcebcb37eb20e212451130aee402c1927ad0e14Kristian Monsen#include "ChromiumIncludes.h" 309de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen#include "KURL.h" 319de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen 329de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen#include <map> 339de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen#include <string> 349de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen 359de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsennamespace WebCore { 369de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsenclass ResourceResponse; 3721baf41667f5ac764512f0168a702390daf45bf3Kristian Monsenclass ResourceError; 389de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen} 399de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen 409de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsennamespace android { 419de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen 429de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsenclass WebResponse { 439de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen 449de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsenpublic: 459de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen WebResponse() {} 469de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen WebResponse(URLRequest*); 479de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen WebResponse(const std::string &url, const std::string &mimeType, const long long length, const std::string &encoding, const int httpStatusCode); 489de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen WebCore::KURL url(); 499de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen void setUrl(std::string); 509de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen 519de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen // Only use on the WebCore thread! 529de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen WebCore::ResourceResponse createResourceResponse(); 5321baf41667f5ac764512f0168a702390daf45bf3Kristian Monsen // Only use on the WebCore thread! 5421baf41667f5ac764512f0168a702390daf45bf3Kristian Monsen WebCore::ResourceError createResourceError(); 559de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen 569de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsenprivate: 579de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen std::string m_encoding; 589de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen int m_httpStatusCode; 5921baf41667f5ac764512f0168a702390daf45bf3Kristian Monsen std::string m_host; 609de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen std::string m_httpStatusText; 619de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen long long m_length; 629de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen std::string m_mime; 639de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen std::string m_url; 649de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen 659de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen std::map<std::string, std::string> m_headerFields; 669de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen}; 679de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen 689de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen} // namespace android 699de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen 709de447de54fcb62a01a3338bb4d2f4d1716f522dKristian Monsen#endif 71