--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/webengine/wmlengine/src/utils/include/nw_loadreq.h Wed Sep 01 12:28:30 2010 +0100
@@ -0,0 +1,154 @@
+/*
+* 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 */
+
+