diff -r 000000000000 -r dd21522fd290 webengine/wmlengine/src/utils/include/nw_loadreq.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/webengine/wmlengine/src/utils/include/nw_loadreq.h Mon Mar 30 12:54:55 2009 +0300 @@ -0,0 +1,156 @@ +/* +* Copyright (c) 1999 - 2001 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of the License "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + + +#ifndef NW_LOADREQ_H +#define NW_LOADREQ_H + +/* +** Includes +*/ +#include "nwx_defs.h" + +#include "nw_nvpair.h" +#include "nwx_buffer.h" +#include "nwx_http_header.h" +#include "urlloader_urlresponse.h" +#include "nw_hed_appservices.h" +#include "BrsrStatusCodes.h" +/* +** Type Declarations +*/ + +/* +** Preprocessor Macro Definitions +*/ + + +#ifdef __cplusplus +extern "C" { +#endif + +/* +** Global Function Declarations +*/ + +/***************************************************************** + + Name: NW_LoadReq_Create + + Description: + Create loader data structures for an Http load request. + Helper routine to create request for the loaders. + + Parameters: + url - in: url to load. + postMethodFlag - in: flag indicating HTTP POST method or not. + referer - in: referer to the url. + acceptCharset - in: character set gateway will accept. + postfields - in: postdata name/value pairs. + Note: Not const because have to change to iterate over. + enctype - in: urlencoded or multipart/form-data. + docCharset - in: charset encoding for document. + header - in/out: if empty (NULL) a new header is created. + if not empty, a copy is made and added to. + resultUrl - out: url created for request + method - out: post or get. + body - out: body for load request. + appServices ? + appCtx ? + + Return Value: KBrsrSuccess + KBrsrFailure + KBrsrUnsupportedFormCharset + KBrsrOutOfMemory + + Notes: + cacheMode not needed for this helper function. + +******************************************************************/ +TBrowserStatusCode NW_LoadReq_Create ( const NW_Ucs2 *url, + const NW_Bool postMethodFlag, + const NW_Ucs2 *referer, + const NW_Ucs2 *acceptCharset, + NW_NVPair_t *postfields, /* Can't be const. */ + const NW_Ucs2 *enctype, + const NW_Http_CharSet_t docCharset, + NW_Http_Header_t **header, /* Start output params */ + NW_Ucs2 **resultUrl, + NW_Uint8 *method, + NW_Buffer_t **body, + NW_HED_AppServices_t * appServices, + void * appCtx); + + +/************************************************************************ + + Function: NW_LoadReq_BuildQuery + + Description: Construct a query from the url and escaped_postdata, + and places the result in *query. It is the caller's + responsibility to delete the resulting string. + + If the number of postfields is 0, the query is just a + new copy the original url. This prevents us from + appending a lone '?' at the end of a 'canned' query + url like + + "http://waplabdc/foo.wml?name=bar;value=foo" + + Parameters: url - in: pointer to the URL + postfields - in: pointer to the postfield data + resultUrl - out: constructed result URL. + appServices ? + appCtx ? + + Return Value: KBrsrSuccess + KBrsrFailure + KBrsrOutOfMemory + +**************************************************************************/ +TBrowserStatusCode NW_LoadReq_BuildQuery(const NW_Ucs2 *url, + NW_NVPair_t *postfields, + NW_Ucs2 **resultUrl, + NW_HED_AppServices_t * appServices, + void * appCtx); + +/** +* Checks the encoding type to see if it is for a multipart request. +* @since 2.5 +* @param aEncodingType Ptr to encoding type string to be checked. +* @return NW_TRUE if multipart. +* NW_FALSE if not multipart. +*/ +NW_Bool NW_LoadReq_IsMultipart( const NW_Ucs2* aEncodingType ); + +/** +* Determines whether or not the current part of the multipart post is for a +* file to be uploaded or not. +* @param aValue Ptr to value of the variable. +* @return NW_TRUE if the part is for file to be uploaded. +* NW_FALSE if not a file. +*/ +NW_Bool NW_LoadReq_IsUploadFile( const NW_Ucs2 *aValue ); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* NW_NVPAIR_H */ + +