S60 3rd Edition API Reference: httpdownloadmgrcommon.h Source File

httpdownloadmgrcommon.h

Go to the documentation of this file.
00001 /*
00002 * ============================================================================
00003 *  Name        : HttpDownloadMgrCommon.h
00004 *  Part of     : Download Manager Engine
00005 *  Interface   : Download Manager Engine API
00006 *  Description : Common constants used in Download Manager Engine
00007 *  Version     : %version: 1.1.11.2.3.3.1.1.3 %
00008 *
00009 *  Copyright © 2002-2005 Nokia.  All rights reserved.
00010 *  This material, including documentation and any related computer
00011 *  programs, is protected by copyright controlled by Nokia.  All
00012 *  rights are reserved.  Copying, including reproducing, storing,
00013 *  adapting or translating, any or all of this material requires the
00014 *  prior written consent of Nokia.  This material also contains
00015 *  confidential information which may not be disclosed to others
00016 *  without the prior written consent of Nokia.
00017 * ============================================================================
00018 * Template version: 4.0
00019 */
00020 
00021 
00022 #ifndef HTTPDOWNLOADMGRCOMMON_H
00023 #define HTTPDOWNLOADMGRCOMMON_H
00024 
00025 //  INCLUDES
00026 #include <e32base.h>
00027 
00028 // CONSTANTS
00029 const TInt KMaxUrlLength = 2048;
00030 const TInt KMaxChunkSize = 4096;
00031 const TUint KMaxDefAttrLength = 32;
00032 const TUint KMaxRealmLength = 128;
00033 const TUint KMaxContentTypeLength = 256;
00034 #start_since SINCE_3_1_SDK
00035 
00038 const TUint KMaxDispositionTypeLength = 256;
00039 #end_since SINCE_3_1_SDK
00040 const TInt32 KDefaultPort = 80;
00041 const TInt32 KDefaultContentLength = -1;
00042 const TUint KMaxGeneralHeaderFieldLength = 256;
00044 const TInt KHashLength = 32;
00046 const TInt KRawHashLength = 16;
00048 const TInt32 KDefaultFotaPckgId = -1;
00049 
00050 const TInt KColon( ':' );
00051 const TInt KSemiColon( ';' );
00052 #start_since SINCE_3_1_SDK
00053 
00056 const TInt KQuote( '"' );
00060 const TInt KEqual( '=' );
00061 #end_since SINCE_3_1_SDK
00062 
00063 _LIT8( KHttpFieldSeparator, "\n");
00064 #start_since SINCE_3_1_SDK
00065 _LIT8( KHttpDispositionTypeAttachment, "attachment");
00066 _LIT8( KHttpDispositionTypeInline, "inline");
00067 _LIT8( KHttpFileNameParm, "filename");
00068 #end_since SINCE_3_1_SDK
00069 
00071 _LIT8( KCodMimeType, "text/x-co-desc" );
00073 _LIT8( KDdMimeType, "application/vnd.oma.dd+xml" );
00074 _LIT8( KRoapMimeType, "application/vnd.oma.drm.roap-trigger+xml" );
00076 _LIT8( KMultiPartMimeType, "multipart/related" );
00077 
00079 _LIT8( KDrmMessageMimeType, "application/vnd.oma.drm.message" );
00081 _LIT8( KDrmMessageMimeTypeDrmContent, "application/vnd.oma.drm.content" );
00083 _LIT8( KDrmMessageMimeTypeDrmDcf, "application/vnd.oma.drm.dcf" );
00084 
00090 enum THttpDownloadState
00091     {
00092     EHttpDlCreated = 1,
00093     EHttpDlInprogress,
00094     EHttpDlPaused,
00095     EHttpDlCompleted,
00096     EHttpDlFailed,
00097 
00099     EHttpDlMoved,
00101     EHttpDlMediaRemoved,
00107     EHttpDlMediaInserted,
00110     EHttpDlPausable,
00112     EHttpDlNonPausable,
00114     EHttpDlDeleted,
00116     EHttpDlAlreadyRunning,
00118     EHttpDlDeleting,
00120     EHttpDlCancelTransaction = 128
00121     };
00122 
00128 enum THttpProgressState
00129     {
00130     EHttpProgNone = 0,
00131 
00132     EHttpStarted = 500,
00133 
00134     EHttpProgCreatingConnection = 1000,
00135     EHttpProgConnectionNeeded = 1010,
00136     EHttpProgConnected = 1020,
00137 
00138     EHttpProgConnectionSuspended = 1022,
00139 
00140     EHttpProgDisconnected = 1030,
00141 
00142     EHttpProgDownloadStarted = 2000,
00143     EHttpContentTypeRequested = EHttpProgDownloadStarted + 20,
00144 
00149     EHttpContentTypeReceived,
00150 
00151     EHttpProgSubmitIssued = EHttpProgDownloadStarted + 30,
00152 
00153     EHttpProgResponseHeaderReceived = 2050,
00154     EHttpProgResponseBodyReceived,
00155     EHttpProgRedirectedPermanently,
00156     EHttpProgRedirectedTemporarily,
00157     EHttpProgDlNameChanged,
00158     EHttpProgContentTypeChanged,
00159 
00161     EHttpProgCodDescriptorDownloaded = 2500,
00163     EHttpProgCodDownloadStarted,
00165     EHttpProgCodDescriptorAccepted,
00169     EHttpProgCodLoadEnd,
00170     EHttpProgSupportedMultiPart,
00171     
00172 
00173     EHttpProgMovingContentFile = 3000,
00174     EHttpProgContentFileMoved
00175 #start_since SINCE_3_1_SDK
00176 
00177     // We have received sufficient HTTP response body to allow us to recognize 
00178     // content-type from data rather than trust content-type header
00179     ,EHttpContTypeRecognitionAvail
00180 #end_since SINCE_3_1_SDK
00181     };
00182 
00193 enum THttpDownloadMgrAttrib
00194     {
00195     EDlMgrAppUid,    
00199     EDlMgrIap,          
00203     EDlMgrExitAction,  
00207     EDlMgrSilentMode,       
00212     EDlMgrMaster,           
00221     EDlMgrAllDlsInMaster,   
00225     EDlMgrNoMediaDlsInMaster, 
00230     EDlMgrConnectionName,   
00239     EDlMgrAPName,   
00244     EDlMgrNumInprogressDownloads,  
00248     EDlMgrConnected,  
00251     EDlMgrNoMediaDls, 
00255     EDlMgrEnableCookies,  
00260     EDlAutoConnect,    
00266     EDlMgrAutoConnect = EDlAutoConnect,
00267 
00268     EDlMgrFotaDownload,   
00273     EDlMgrCodFolder,    
00276     EDlMgrNumOfClientSideDownload,    
00279 #start_since SINCE_3_1_SDK
00280     EDlMgrHasActiveDownloads,
00285     EDlMgrAutoAcceptCod     
00289 #end_since SINCE_3_1_SDK
00290     };
00291 
00300 enum THttpDownloadAttrib
00301     {
00302     // Download progress attributes
00303     EDlAttrState,           
00306     EDlAttrProgressState,   
00309     EDlAttrUserData,    
00312     EDlAttrId,         
00315     //
00316     // Attributes mandatory to issue the request
00317     //
00318     EDlAttrReqUrl = 100,    
00321     EDlAttrRedirUlr,        
00325     EDlAttrRedirUrl = EDlAttrRedirUlr,
00326 
00327     EDlAttrCurrentUrl,      
00331     EDlAttrName,   
00336     EDlAttrPort,      
00340     EDlAttrMethod,          
00343     EDlAttrRequestHeaderAddon,  
00353     EDlAttrNextBodyData,    
00357     EDlAttrReleaseBodyData, 
00364     EDlAttrRedirected,      
00372     EDlAttrResponseHeader,  
00378     EDlAttrRequestHeaderAddonLength, 
00382     //
00383     // HTTP/Proxy authentication attributes.
00384     // Have to be set when state is EHttpDlPaused/EHttpContentTypeReceived
00385     //
00386     EDlAttrAuthScheme = 200,  
00390     EDlAttrRealm,           
00394     EDlAttrUsername,        
00397     EDlAttrPassword,        
00400     EDlAttrProxyRealm,      
00404     EDlAttrProxyUsername,   
00407     EDlAttrProxyPassword,   
00410     //
00411     // Miscellaneous download attributes
00412     //
00413     EDlAttrDestFilename,    
00419     EDlAttrLength,          
00424     EDlAttrDownloadedSize,  
00427     EDlAttrNoContentTypeCheck,  
00431     EDlAttrContinueBody,    
00441         EDlAttrDestRemovable,   
00445     //
00446     // Attributes to indicate error occured during download
00447     //
00448     EDlAttrStatusCode = 500, 
00451     EDlAttrErrorId, 
00454     EDlAttrGlobalErrorId,   
00457     EDlAttrContentType,     
00461     EDlAttrTargetApp,       
00465     EDlAttrMediaType,       
00467     EDlAttrMediaTypeBoundary, 
00470 #start_since SINCE_3_1_SDK
00471         EDlAttrAttachmentFileName,
00472 #end_since SINCE_3_1_SDK
00473 
00474     //
00475     // Other 
00476     //
00477     EDlAttrDisconnectOnReset = 1000, 
00481     EDlAttrDisconnectOnPause,   
00488     EDlAttrUnused1, 
00489 
00490     EDlAttrAction,   
00494     EDlAttrRestartAction,   
00498     EDlAttrNoMedia,   
00502     EDlAttrContinue,  
00508     EDlAttrPausable,  
00513     EDlAttrHidden,      
00518     EDlAttrSilent,    
00526     EDlAttrProgressive,     
00530     EDlAttrFotaPckgId,      
00534     EDlAttrDownloadNextUrl, 
00545     EDlAttrHeaderFields     = 1500,
00546     EDlAttrCharSet          = EDlAttrHeaderFields, // Character Set
00547     EDlAttrResponseCharSet  = EDlAttrCharSet,
00548     EDlAttrResponseAge,
00549     EDlAttrResponseETag,
00550     EDlAttrResponseLocation,
00551     EDlAttrResponseRetryAfter,
00552     EDlAttrResponseServer,
00553     EDlAttrResponseVary,
00554 
00556     EDlAttrRequestAccept = 2000,
00557     EDlAttrRequestAcceptCharSet,
00558     EDlAttrRequestAcceptLanguage,
00559     EDlAttrRequestExpect,
00560     EDlAttrRequestFrom,
00561     EDlAttrRequestHost,
00562     EDlAttrRequestMaxForwards,
00563     EDlAttrRequestPragma,
00564     EDlAttrRequestReferer,
00565     EDlAttrRequestUserAgent,
00566     EDlAttrRequestVary,
00567 
00569     EDlAttrEntityAllow = 2500,
00570     EDlAttrEntityContentEncoding,
00571     EDlAttrEntityContentLanguage,
00572     EDlAttrEntityContentLocation,
00573     EDlAttrEntityExpires,
00574     EDlAttrEntityLastModified,
00575 
00577     EDlAttrGeneralCacheControl = 3000,
00578     EDlAttrGeneralDate,
00579     EDlAttrGeneralPragma,
00580     EDlAttrGeneralVia,
00581     EDlAttrGeneralWarning,
00582 
00584     EDlAttrSucceeded = 8192,
00586     EDlAttUnused2,
00588     EDlAttrFailed,
00589     
00590     EDlAttrCodDownload,    
00596     EDlAttrHashedMsgBody, 
00598     EDlAttrDefaultEvent,
00600     EDlAttrRedirectedTemporary,
00602     EDlAttrRedirectedPermanently,
00604     EDlAttrCodDescriptorAccepted,
00606     EDlAttrCodLoadEnd
00607 
00608 #start_since SINCE_3_1_SDK
00609     ,EDlAttrDiskBufferingSize
00614 #end_since SINCE_3_1_SDK
00615 
00616     };
00617 
00621 enum THttpMethod
00622     {
00623     EMethodGET,     
00624     EMethodPOST,
00625     EMethodHEAD
00626     };
00627 
00631 enum THttpAuthenticationScheme
00632     {
00633     EAuthBasic,                 
00634     EAuthDigest                
00635     };
00636 
00641 enum THttpDownloadMgrExitAction
00642     {
00643     EExitNothing,              
00644     EExitPause,                
00645     EExitDelete                 
00646     };
00647 
00651 enum THttpDownloadMgrAction
00652     {
00656     EDoNothing  = 0,
00660     EMove           = 0x0001,
00665     ELaunch         = 0x0002
00666     };
00667 
00671 enum THttpRestartActions
00672     {
00673     ERestartIfExpired,    
00674     ERestartNoIfCompleted,  
00679     ERestartForced         
00681     };
00682 
00686 enum THttpDownloadMgrError
00687     {
00688     ENoError = 0,
00689     EGeneral = -30421,  
00690     EInternal = -30422,  
00693     EContentFileIntegrity = -30423, 
00696     EDiskFull = -30424,  
00697     EConnectionFailed = -30425,    
00699     ETransactionFailed = -30426,    
00701     EMoveFailed = -30427,  
00703     EDestFileWriteFailed = -30428,  
00704     EMMCRemoved = -30429,  
00705     EBadUrl = -30430,   
00709     // Download attributes related error
00710 
00711     EWrongDestFilename = -30431,    
00713     EDestFileInUse = -30432,        
00717     //HTTP error case
00718 
00719     EHttpUnhandled = -30433,   
00722     EHttpAuthenticationFailed = -30434,  
00725     EProxyAuthenticationFailed = -30435, 
00728     EObjectNotFound = -30436,    
00730     EPartialContentModified = -30437,    
00735     EContentExpired = -30438,       
00740     // miscellaneous errors
00741     EHttpRestartFailed  = -30450    
00742     };
00743 
00744 // HTTPDOWNLOADMGRCOMMON_H   
00745 #endif
00746 
00747 // End of File

Copyright © Nokia Corporation 2001-2007
Back to top