00001 /* 00002 * ============================================================================== 00003 * Name : BrCtlBrCtlSpecialLoadObserver.h 00004 * Part of : WebKit \ BrowserControl 00005 * Interface : Browser Control API 00006 * Description : Handle special load events such as network connection, deal with non-http or non-html requests 00007 * Version : %Version% 00008 * 00009 * Copyright (c) 2006, Nokia Corporation 00010 * All rights reserved. 00011 * 00012 * Redistribution and use in source and binary forms, with or without 00013 * modification, are permitted provided that the following conditions 00014 * are met: 00015 * 00016 * * Redistributions of source code must retain the above copyright 00017 * notice, this list of conditions and the following disclaimer. 00018 * * Redistributions in binary form must reproduce the above copyright 00019 * notice, this list of conditions and the following disclaimer in 00020 * the documentation and/or other materials provided with the 00021 * distribution. 00022 * * Neither the name of the Nokia Corporation nor the names of its 00023 * contributors may be used to endorse or promote products derived 00024 * from this software without specific prior written permission. 00025 * 00026 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 00027 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 00028 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 00029 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 00030 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 00031 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 00032 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 00033 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 00034 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 00035 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE 00036 * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH 00037 * DAMAGE. 00038 * 00039 * Please see file patentlicense.txt for further grants. 00040 * ============================================================================== 00041 */ 00042 00043 00044 #ifndef BRCTLSPECIALLOADOBSERVER_H 00045 #define BRCTLSPECIALLOADOBSERVER_H 00046 00047 // INCLUDES 00048 #include <e32std.h> 00049 #include <e32base.h> 00050 #include <apmstd.h> 00051 #include <ApEngineConsts.h> 00052 #include <badesca.h> 00053 00054 // CONSTANTS 00055 00056 // MACROS 00057 00058 // DATA TYPES 00059 enum TBrCtlDownloadParam 00060 { 00061 EParamRequestUrl, 00062 EParamRealm, 00063 EParamUsername, 00064 EParamPassword, 00065 EParamProxyRealm, 00066 EParamProxyUsername, 00067 EParamProxyPassword, 00068 EParamRawRequestHeader, 00069 EParamReceivedContentType, 00070 EParamExpectedContentType, 00071 EParamTotalContentLength, 00072 EParamReceivedContentLength, 00073 EParamReceivedContent, 00074 EParamRawResponseHeader, 00075 EParamLocalFileName, 00076 EParamCharset, 00077 EParamRefererHeader 00078 #start_since SINCE_3_1_SDK 00079 ,EParamTransactionId 00080 #end_since SINCE_3_1_SDK 00081 }; 00082 00083 // FUNCTION PROTOTYPES 00084 00085 00101 class MBrCtlSpecialLoadObserver 00102 { 00103 public: // New functions 00125 virtual void NetworkConnectionNeededL(TInt* aConnectionPtr, 00126 TInt* aSockSvrHandle, 00127 TBool* aNewConn, 00128 TApBearerType* aBearerType) = 0; 00129 00145 virtual TBool HandleRequestL(RArray<TUint>* aTypeArray, CDesCArrayFlat* aDesArray) = 0; 00146 00166 virtual TBool HandleDownloadL(RArray<TUint>* aTypeArray, CDesCArrayFlat* aDesArray) = 0; 00167 00168 }; 00169 00170 // BRCTLSPECIALLOADOBSERVER_H 00171 #endif 00172 00173 // End of File