1/* 2 * Copyright (C) 2012 Intel Corporation. All rights reserved. 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions 6 * are met: 7 * 1. Redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer. 9 * 2. Redistributions in binary form must reproduce the above copyright 10 * notice, this list of conditions and the following disclaimer in the 11 * documentation and/or other materials provided with the distribution. 12 * 13 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' 14 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 15 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 16 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS 17 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 18 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 19 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 20 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 21 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 22 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF 23 * THE POSSIBILITY OF SUCH DAMAGE. 24 */ 25 26/** 27 * @file ewk_url_request.h 28 * @brief Describes the Ewk URL request API. 29 */ 30 31#ifndef ewk_url_request_h 32#define ewk_url_request_h 33 34#include <Eina.h> 35 36#ifdef __cplusplus 37extern "C" { 38#endif 39 40/** 41 * Declare Ewk_Url_Request as Ewk_Object. 42 * 43 * @see Ewk_Object 44 */ 45typedef struct EwkObject Ewk_Url_Request; 46 47/** 48 * Query URL for this request. 49 * 50 * @param request request object to query. 51 * 52 * @return the URL pointer, that may be @c NULL. This pointer is 53 * guaranteed to be eina_stringshare, so whenever possible 54 * save yourself some cpu cycles and use 55 * eina_stringshare_ref() instead of eina_stringshare_add() or 56 * strdup(). 57 */ 58EAPI const char *ewk_url_request_url_get(const Ewk_Url_Request *request); 59 60/** 61 * Query first party for cookies for this request. 62 * 63 * If set, this first party URL is used to distinguish first party cookies 64 * from third party ones. This is usually set to the URL of the main document. 65 * 66 * @param request request object to query. 67 * 68 * @return the first party pointer, that may be @c NULL. This pointer is 69 * guaranteed to be eina_stringshare, so whenever possible 70 * save yourself some cpu cycles and use 71 * eina_stringshare_ref() instead of eina_stringshare_add() or 72 * strdup(). 73 */ 74EAPI const char *ewk_request_cookies_first_party_get(const Ewk_Url_Request *request); 75 76/** 77 * Query HTTP method for this request. 78 * 79 * HTTP methods are defined by: 80 * http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html 81 * 82 * Examples of HTTP methods are "GET", "POST". 83 * 84 * @param request request object to query. 85 * 86 * @return the HTTP method pointer, that may be @c NULL. This pointer is 87 * guaranteed to be eina_stringshare, so whenever possible 88 * save yourself some cpu cycles and use 89 * eina_stringshare_ref() instead of eina_stringshare_add() or 90 * strdup(). 91 */ 92EAPI const char *ewk_url_request_http_method_get(const Ewk_Url_Request *request); 93 94 95#ifdef __cplusplus 96} 97#endif 98 99#endif // ewk_url_request_h 100