diff -r 000000000000 -r 8e480a14352b messagingfw/wappushfw/pushutils/inc/thttpfields.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/messagingfw/wappushfw/pushutils/inc/thttpfields.h Mon Jan 18 20:36:02 2010 +0200 @@ -0,0 +1,544 @@ +// Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies). +// All rights reserved. +// This component and the accompanying materials are made available +// under the terms of "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: +// Purpose: This file contains definitions of types THttpStatusCode, +// THttpParameter, THttpHeaderField, KHttpContentTypes, +// KHttpCharacterSetNames and KHttpCharacterSetCodes +// This header is a direct transcoding of [WSP] Appendix A - Assigned +// Numbers, which contains the following assignment tables: +// Table 34 : PDU Type Assignments +// 35 : Abort Reason Code Assignments +// 36 : Status Code Assignments +// 37 : Capability Assignments +// 38 : Well-Known Parameter Assignments +// 39 : Header Field Name Assignments +// 40 : Content-Type Assignments +// 41 : ISO-639 Language Assignments +// 42 : Character Set Assignments +// +// + +#if !defined(__THTTPFIELDS_H__) +#define __THTTPFIELDS_H__ + +// +// Table 34 not implemented +// + + +// +// Table 35 not implemented +// + + +/** +HTTP/1.1 Status Codes: WSP Code Assignments + +(see [WSP] Appdx A Table 36) +Codes from RFC-2616 added where necessary for HTTP Caching +@publishedAll +@deprecated +*/ +enum THttpStatusCode + { + EHttpUnknown = 0, + EHttpContinue = 100, + EHttpSwitchingProtocols, + EHttpWarnStaleContent = 110, // From RFC-2616 + EHttpWarnRevalidationFailed, // " + EHttpWarnDisconnectedOperation, // " + EHttpWarnHeuristicExpiration, // " + EHttpWarnMiscellaneous, // " + EHttpOK = 200, + EHttpCreated, + EHttpAccepted, + EHttpNonAuthorativeInformation, + EHttpNoContent, + EHttpResetContent, + EHttpPartialContent, + EHttpWarnTransformationApplied, // From RFC-2616 + EHttpWarnPersistentMiscellanous, // " + EHttpMultipleChoices = 300, + EHttpMovedPermanently, + EHttpMovedTemporarily, + EHttpSeeOther, + EHttpNotModified, + EHttpUseProxy, + EHttpTemporaryRedirect = 307, // From RFC-2616 + EHttpBadRequest = 400, + EHttpUnauthorized, + EHttpPaymentRequired, + EHttpForbidden, + EHttpNotFound, + EHttpMethodNotAllowed, + EHttpNotAcceptable, + EHttpProxyAuthenticationRequired, + EHttpRequestTimeout, + EHttpConflict, + EHttpGone, + EHttpLengthRequired, + EHttpPreconditionFailed, + EHttpRequestEntityTooLarge, + EHttpRequestURITooLong, + EHttpUnsupportedMediaType, + EHttpRequestRangeNotSatisfiable, // From RFC-2616 + EHttpExpectationFailed, // From RFC-2616 + EHttpInternalServerError = 500, + EHttpNotImplemented, + EHttpBadGateway, + EHttpServiceUnavailable, + EHttpGatewayTimeout, + EHttpHTTPVersionNotSupported + // All other codes are extension codes + }; + + +// +// Table 37 not implemented +// + + +/** +HTTP/1.1 Parameters: WSP Well-known Parameter Assignments + +(see [WSP] Appdx A Table 38) +@publishedAll +@deprecated +*/ +enum THttpParameter + { + EHttpQ = 0x00, + EHttpCharset = 0x01, + EHttpLevel = 0x02, + EHttpType = 0x03, + EHttpName = 0x04, + EHttpFilename = 0x05, + EHttpDifferences = 0x06, + EHttpPadding = 0x07 + }; + + +/** +HTTP/1.1 Headers: WSP Field Name Assignments + +(see [WSP] Appdx A Table 39) +@publishedAll +@deprecated +*/ +enum THttpHeaderField + { + EHttpAccept = 0x00, + EHttpAcceptCharset, + EHttpAcceptEncoding, + EHttpAcceptLanguage, + EHttpAcceptRanges, + EHttpAge, + EHttpAllow, + EHttpAuthorization, + EHttpCacheControl = 0x08, + EHttpConnection, + EHttpContentBase, + EHttpContentEncoding, + EHttpContentLanguage, + EHttpContentLength, + EHttpContentLocation, + EHttpContentMD5, + EHttpContentRange = 0x10, + EHttpContentType, + EHttpDate, + EHttpETag, + EHttpExpires, + EHttpFrom, + EHttpHost, + EHttpIfModifiedSince, + EHttpIfMatch = 0x18, + EHttpIfNoneMatch, + EHttpIfRange, + EHttpIfUnmodifiedSince, + EHttpLocation, + EHttpLastModified, + EHttpMaxForwards, + EHttpPragma, + EHttpProxyAuthenticate = 0x20, + EHttpProxyAuthorization, + EHttpPublic, + EHttpRange, + EHttpReferer, + EHttpRetryAfter, + EHttpServer, + EHttpTransferEncoding, + EHttpUpgrade = 0x28, + EHttpUserAgent, + EHttpVary, + EHttpVia, + EHttpWarning, + EHttpWWWAuthenticate, + EHttpContentDisposition, + EHttpXWapApplicationID = 0x2F, // Additional Enums required for WAP1.2 Push + EHttpXWapContentURI, + EHttpXWapInitiatorURI, + EHttpAcceptApplication, + EHttpBearerIndication, + EHttpPushFlag, + EHttpProfile, + EHttpProfileDiff, + EHttpProfileWarning + }; + + +// +// WSP Content-Type Assignments +// +// (see [WSP] Appdx A Table 40) +// +/** +@publishedAll +@deprecated +*/ +const TInt KHttpNumContentTypes = 77; + +/** +@publishedAll +@deprecated +*/ +const TInt KHttpMaxLenghtOfContentType = 42; + +/** +@publishedAll +@deprecated +*/ +static const TText8* const KHttpContentTypes[] = + { + _S8("*/*"), //0x00 + _S8("text/*"), + _S8("text/html"), + _S8("text/plain"), + _S8("text/x-hdml"), + _S8("text/x-ttml"), + _S8("text/x-vCalendar"), + _S8("text/x-vCard"), + _S8("text/vnd.wap.wml"), // 0x08 + _S8("text/vnd.wap.wmlscript"), + _S8("application/vnd.wap.catc"), + _S8("Multipart/*"), + _S8("Multipart/mixed"), + _S8("Multipart/form-data"), + _S8("Multipart/byteranges"), + _S8("multipart/alternative"), + _S8("application/*"), // 0x10 + _S8("application/java-vm"), + _S8("application/x-www-form-urlencoded"), + _S8("application/x-hdmlc"), + _S8("application/vnd.wap.wmlc"), + _S8("application/vnd.wap.wmlscriptc"), + _S8("application/vnd.wap.wsic"), + _S8("application/vnd.wap.uaprof"), + _S8("application/vnd.wap.wtls-ca-certificate"), // 0x18 + _S8("application/vnd.wap.wtls-user-certificate"), + _S8("application/x-x509-ca-cert"), + _S8("application/x-x509-user-cert"), + _S8("image/*"), + _S8("image/gif"), + _S8("image/jpeg"), + _S8("image/tiff"), + _S8("image/png"), // 0x20 + _S8("image/vnd.wap.wbmp"), + _S8("application/vnd.wap.multipart.*"), + _S8("application/vnd.wap.multipart.mixed"), + _S8("application/vnd.wap.multipart.form-data"), + _S8("application/vnd.wap.multipart.byteranges"), + _S8("application/vnd.wap.multipart.alternative"), + _S8("application/xml"), + _S8("text/xml"), // 0x28 + _S8("application/vnd.wap.wbxml"), + _S8("application/x-x968-cross-cert"), //Additional C-Types in WAP 1.2 + _S8("application/x-x968-ca-cert"), + _S8("application/x-x968-user-cert"), + _S8("text/vnd.wap.si"), + _S8("application/vnd.wap.sic"), + _S8("text/vnd.wap.sl"), + _S8("application/vnd.wap.slc"), //0x30 + _S8("text/vnd.wap.co"), + _S8("application/vnd.wap.coc"), + _S8("application/vnd.wap.multipart.related"), + _S8("application/vnd.wap.sia"), //0x34 or 52 in decimal + _S8("text/vnd.wap.connectivity-xml"), + _S8("application/vnd.wap.connectivity-wbxml"), + _S8("application/pkcs7-mime"), + _S8("application/vnd.wap.hashed-certificate"), + _S8("application/vnd.wap.signed-certificate"), + _S8("application/vnd.wap.cert-response"), + _S8("application/xhtml+xml"), + _S8("application/wml+xml"), + _S8("text/css"), + _S8("application/vnd.wap.mms-message"), + _S8("application/vnd.wap.rollover-certificate"), + _S8("application/vnd.wap.locc+wbxml"), + _S8("application/vnd.wap.loc+xml"), + _S8("application/vnd.syncml.dm+wbxml"), + _S8("application/vnd.syncml.dm+xml"), + _S8("application/vnd.syncml.notification"), + _S8("application/vnd.wap.xhtml+xml"), + _S8("application/vnd.wv.csp.cir"), + _S8("application/vnd.oma.dd+xml"), + _S8("application/vnd.oma.drm.message"), + _S8("application/vnd.oma.drm.content"), + _S8("application/vnd.oma.drm.rights+xml"), + _S8("application/vnd.oma.drm.rights+wbxml"), + _S8("application/vnd.oma.drm.roap-trigger+xml"), + _S8("application/vnd.oma.drm.roap-trigger+wbxml"),//0x4D + }; + + +// +// Table 41. Languages +// +/** +@publishedAll +@deprecated +*/ +const TInt KHttpNumLanguages = 0x8D; + +/** +@publishedAll +@deprecated +*/ +static const TText8* const KHttpLanguages[] = + { + _S8("AFAR AA"), + _S8("ABKHAZIAN AB"), + _S8("AFRIKAANS AF"), + _S8("AMHARIC AM"), + _S8("ARABIC AR"), + _S8("ASSAMESE AS"), + _S8("AYMARA AY"), + _S8("AZERBAIJANI AZ"), + _S8("BASHKIR BA"), + _S8("BYELORUSSIAN BE"), + _S8("BULGARIAN BG"), + _S8("BIHARI BH"), + _S8("BISLAMA BI"), + _S8("BENGALI BANGLA BN"), + _S8("TIBETAN BO"), + _S8("BRETON BR"), + _S8("CATALAN CA"), + _S8("CORSICAN CO"), + _S8("CZECH CS"), + _S8("WELSH CY"), + _S8("DANISH DA"), + _S8("GERMAN DE"), + _S8("BHUTANI DZ"), + _S8("GREEK EL"), + _S8("ENGLISH EN"), + _S8("ESPERANTO EO"), + _S8("SPANISH ES"), + _S8("ESTONIAN ET"), + _S8("BASQUE EU"), + _S8("PERSIAN farsi FA"), + _S8("FINNISH FI"), + _S8("FIJI FJ"), + _S8("URDU UR"), + _S8("FRENCH FR"), + _S8("UZBEK UZ"), + _S8("IRISH GA"), + _S8("SCOTS-GAELIC GD"), + _S8("GALICIAN GL"), + _S8("GUARANI GN"), + _S8("GUJARATI GU"), + _S8("HAUSA HA"), + _S8("HEBREW HE"), + _S8("HINDI HI"), + _S8("CROATIAN HR"), + _S8("HUNGARIAN HU"), + _S8("ARMENIAN HY"), + _S8("VIETNAMESE VI"), + _S8("INDONESIAN ID"), + _S8("WOLOF WO"), + _S8("XHOSA XH"), + _S8("ICELANDIC IS"), + _S8("ITALIAN IT"), + _S8("YORUBA YO"), + _S8("JAPANESE JA"), + _S8("JAVANESE JV"), + _S8("GEORGIAN KA"), + _S8("KAZAKH KK"), + _S8("ZHUANG ZA"), + _S8("CAMBODIAN KM"), + _S8("KANNADA KN"), + _S8("KOREAN KO"), + _S8("KASHMIRI KS"), + _S8("KURDISH KU"), + _S8("KIRGHIZ KY"), + _S8("CHINESE ZH"), + _S8("LINGALA LN"), + _S8("LAOTHIAN LO"), + _S8("LITHUANIAN LT"), + _S8("LATVIAN LETTISH LV"), + _S8("MALAGASY MG"), + _S8("MAORI MI"), + _S8("MACEDONIAN MK"), + _S8("MALAYALAM ML"), + _S8("MONGOLIAN MN"), + _S8("MOLDAVIAN MO"), + _S8("MARATHI MR"), + _S8("MALAY MS"), + _S8("MALTESE MT"), + _S8("BURMESE MY"), + _S8("UKRAINIAN UK"), + _S8("NEPALI NE"), + _S8("DUTCH NL"), + _S8("NORWEGIAN NO"), + _S8("OCCITAN OC"), + _S8("AFAN OROMO OM"), + _S8("ORIYA OR"), + _S8("PUNJABI PA"), + _S8("POLISH PL"), + _S8("PASHTO PUSHTO PS"), + _S8("PORTUGUESE PT"), + _S8("QUECHUA QU"), + _S8("ZULU ZU"), + _S8("KURUNDI RN"), + _S8("ROMANIAN RO"), + _S8("RUSSIAN RU"), + _S8("KINYARWANDA RW"), + _S8("SANSKRIT SA"), + _S8("SINDHI SD"), + _S8("SANGHO SG"), + _S8("SERBO-CROATIAN SH"), + _S8("SINGHALESE SI"), + _S8("SLOVAK SK"), + _S8("SLOVENIAN SL"), + _S8("SAMOAN SM"), + _S8("SHONA SN"), + _S8("SOMALI SO"), + _S8("ALBANIAN SQ"), + _S8("SERBIAN SR"), + _S8("SISWATI SS"), + _S8("SESOTHO ST"), + _S8("SUNDANESE SU"), + _S8("SWEDISH SV"), + _S8("SWAHILI SW"), + _S8("TAMIL TA"), + _S8("TELUGU TE"), + _S8("TAJIK TG"), + _S8("THAI TH"), + _S8("TIGRINYA TI"), + _S8("TURKMEN TK"), + _S8("TAGALOG TL"), + _S8("SETSWANA TN"), + _S8("TONGA TO"), + _S8("TURKISH TR"), + _S8("TSONGA TS"), + _S8("TATAR TT"), + _S8("TWI TW"), + _S8("UIGUR UG"), + _S8(""), + _S8("NAURU NA"), + _S8("FAROESE FO"), + _S8("FRISIAN FY"), + _S8("INTERLINGUA IA"), + _S8("VOLAPUK VO"), + _S8("INTERLINGUE IE"), + _S8("INUPIAK IK"), + _S8("YIDDISH YI"), + _S8("INUKTITUT IU"), + _S8("GREENLANDIC KL"), + _S8("LATIN LA"), + _S8("RHAETO-ROMANCE RM") + }; + +// +// WSP Character Set Assignments +// +// (see [WSP] Appdx A Table 42) +// +// The following two arrays form a paired look-up table +// +/** +@publishedAll +@deprecated +*/ +const TInt KHttpNumCharacterSets = 15; + +/** +@publishedAll +@deprecated +*/ +static const TText8* const KHttpCharacterSetNames[] = + { + _S8("big5"), + _S8("iso-10646-ucs-2"), + _S8("iso-8859-1"), + _S8("iso-8859-2"), + _S8("iso-8859-3"), + _S8("iso-8859-4"), + _S8("iso-8859-5"), + _S8("iso-8859-6"), + _S8("iso-8859-7"), + _S8("iso-8859-8"), + _S8("iso-8859-9"), + _S8("shift_JIS"), + _S8("us-ascii"), + _S8("utf-8"), + _S8("gsm-default-alphabet") // (not yet assigned) + }; + +/** +@publishedAll +@deprecated +*/ +static const TInt KHttpCharacterSetCodes[] = + { + 0x07ea, // big5 + 0x03e8, // iso-10646-ucs-2 + 0x04, // iso-8859-1 + 0x05, // iso-8859-2 + 0x06, // iso-8859-3 + 0x07, // iso-8859-4 + 0x08, // iso-8859-5 + 0x09, // iso-8859-6 + 0x0a, // iso-8859-7 + 0x0b, // iso-8859-8 + 0x0c, // iso-8859-9 + 0x11, // shift_JIS + 0x03, // us-ascii + 0x6a, // utf-8 + 0xffff // gsm-default-alphabet (not yet assigned) + }; + + +/** +Additional enumeration implementations for well known field values +that may be found in the Cache-Control header +As described in section 14.9 of RFC-2616 +Assigned WSP encodings +@publishedAll +@deprecated +*/ +enum TCacheControlFieldValue + { + ECacheControlNoCache = 0x80,// "no-cache" + ECacheCtrlNoStore, // "no-store" + ECacheCtrlMaxAge, // "max-age" + ECacheCtrlMaxStale, // "max-stale" + ECacheCtrlMinFresh, // "min-fresh" + ECacheCtrlOnlyIfCached, // "only-if-cached" + ECacheCtrlPublic, // "public" + ECacheCtrlPrivate, // "private" + ECacheCtrlNoTransform, // "no-transform" + ECacheCtrlMustRevalidate, // "must-revalidate" + ECacheCtrlProxyRevalidate, // "proxy-revalidate" + ECacheCtrlCacheExtension // "cache-extension" + }; + +#endif // __THTTPFIELDS_H__