00001 /* 00002 * ============================================================================== 00003 * Name : SenSoapConstants.h 00004 * Part of : Web Services Framework / Utils 00005 * Interface : 00006 * Description : This header provides SOAP specific constants. 00007 * Version : 00008 * 00009 * Copyright © 2006 Nokia. All rights reserved. 00010 * This material, including documentation and any related 00011 * computer programs, is protected by copyright controlled by 00012 * Nokia. All rights are reserved. Copying, including 00013 * reproducing, storing, adapting or translating, any 00014 * or all of this material requires the prior written consent of 00015 * Nokia. This material also contains confidential 00016 * information which may not be disclosed to others without the 00017 * prior written consent of Nokia. 00018 * ============================================================================== 00019 */ 00020 00021 #ifndef SEN_SOAP_CONSTANTS_H 00022 #define SEN_SOAP_CONSTANTS_H 00023 00024 // CONSTANTS 00025 00027 _LIT8(KSenSoap12ContentTypeHeaderValue, "application/soap+xml; charset=utf-8"); 00028 _LIT8(KSenSoap12AcceptHeaderValue, "application/soap+xml"); 00029 _LIT8(KSenSoapEnvelopeName, "Envelope"); 00030 _LIT8(KSenSoapEnvelopePrefix, "S"); 00031 _LIT8(KSenSoapEnvelopeQName, "S:Envelope"); 00032 00033 _LIT8(KSenSoapEnvelopeXmlns, "http://schemas.xmlsoap.org/soap/envelope/"); 00034 _LIT8(KSenSoap12EnvelopeXmlns, "http://www.w3.org/2003/05/soap-envelope"); 00035 _LIT8(KSenSoapEnvelopeHeaderName, "Header"); 00036 _LIT8(KSenSoapEnvelopeHeaderQName, "S:Header"); 00037 _LIT8(KSenSoapEnvelopeBodyName, "Body"); 00038 _LIT8(KSenSoapEnvelopeBodyQName, "S:Body"); 00039 _LIT8(KSenSoapFaultName, "Fault"); 00040 00042 _LIT8(KSenSoapActionHeaderName, "SOAPAction"); 00043 _LIT8(KSenSoapActionHeaderValueEmpty, "\"\""); 00044 00046 _LIT8(KSecurityName, "Security"); 00047 _LIT8(KBinarySecurityToken, "BinarySecurityToken"); 00048 _LIT8(KSecurityXmlNs, "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"); 00049 _LIT8(KSecuritySchemeXmlNs, "http://schemas.xmlsoap.org/ws/2003/06/secext"); 00050 _LIT8(KSecurityXmlNsPrefix, "wsse"); 00051 00052 _LIT8(KSecurityAttrType, "Type"); // name of the XML attribute 00053 _LIT8(KSecurityAttrTypeText, "PasswordText"); // for default type: wsse:PasswordText 00054 _LIT8(KSecurityAttrTypeDigest, "PasswordDigest"); // digest type: wsse:Digest 00055 00056 _LIT8(KSecurityTokenReference, "SecurityTokenReference"); 00057 _LIT8(KSecurityUtilityXmlNs, "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"); 00058 _LIT8(KSecurityUtilityXmlNsPrefix, "wsu"); 00059 00060 _LIT8(KSecurityUtilityId, "Id"); 00061 _LIT8(KSecurityUtilityWsuId, "wsu:Id"); 00062 00063 00064 const TInt KStateParsingSoapHeader = 20; // ignore state (even number) 00065 const TInt KStateParsingSoapBody = 40; // ignore state (even number) 00066 const TInt KStateParsingSoapFault = 5; // save state (odd number) 00067 00069 // CONSTANTS 00070 _LIT8(KFaultCodeLocalname, "faultcode"); // "faultcode" is intended for use by software to 00071 // provide an algorithmic mechanism for 00072 // identifying the fault. 00073 00074 _LIT8(KFaultStringLocalname, "faultstring"); // "faultstring" is intended to provide a human 00075 // readable explanation of the fault and is not 00076 // intended for algorithmic processing. 00077 00078 _LIT8(KFaultActorLocalname, "faultactor"); // "faultactor" is intended to provide information 00079 // about which SOAP node on the SOAP message path 00080 // caused the fault to happen. 00081 // The value of the "faultactor" is a URI 00082 // identifying the source of the fault. 00083 00084 _LIT8(KDetailLocalname, "detail"); // "detail" is intended for carrying application 00085 // specific error information related to the SOAP 00086 // Body. It MUST be present when the contents of 00087 // the SOAP Body could not be processed 00088 // successfully. 00089 00090 // SOAP 1.2 (http://www.w3.org/TR/soap12-part1/): 00091 _LIT8(KFault12CodeLocalname, "Code"); // "Code" has a mandatory "Value" element 00092 // information item and may have an optional 00093 // Subcode element information item. 00094 00095 _LIT8(KFault12SubcodeLocalname, "Subcode"); // "Subcode" has a mandatory "Value" element 00096 // information item and may have an optional 00097 // Subcode element information item. 00098 00099 _LIT8(KFault12ValueLocalname, "Value"); // In "Code" element: 00100 // The type of the Value element information 00101 // item is env:faultCodeEnum. SOAP defines a 00102 // small set of SOAP fault codes covering high 00103 // level SOAP faults. 00104 // In "Subcode" element: 00105 // The type of the Value element information 00106 // item is xs:QName. The value of this element 00107 // is an application defined subcategory of 00108 // the value of the Value child element 00109 // information item of the Subcode element 00110 // information item's parent element information 00111 // item. 00112 00113 _LIT8(KFault12ReasonLocalname, "Reason"); // "Reason" has one or more "Text" element 00114 // information item children. Each child "Text" 00115 // element information item SHOULD have a 00116 // different value for its "xml:lang" attribute 00117 // information item. 00118 00119 _LIT8(KFault12TextLocalname, "Text"); // "Text" has a mandatory attribute information 00120 // item with a [local name] of lang and 00121 // [namespace name] of 00122 // "http://www.w3.org/XML/1998/namespace". 00123 // Note that the definition in of the lang 00124 // attribute information item requires that the 00125 // [prefix] is "xml" or any capitalization thereof. 00126 // 00127 // "Text" is similar to the 'Reason-Phrase' defined 00128 // by HTTP [RFC 2616] and SHOULD provide 00129 // information explaining the nature of the fault. 00130 // It is not intended for algorithmic processing. 00131 00132 _LIT8(KFault12NodeLocalname, "Node"); // "Node" is intended to provide information about 00133 // which SOAP node on the SOAP message path caused 00134 // the fault to happen. 00135 // "Node" contains the URI of the SOAP node that 00136 // generated the fault. 00137 00138 _LIT8(KFault12DetailLocalname, "Detail"); // "Detail" MAY be present in a SOAP fault in 00139 // which case it carries additional information 00140 // relative to the SOAP fault codes describing 00141 // the fault. For example, the Detail element 00142 // information item might contain information about 00143 // a message not containing the proper credentials, 00144 // a timeout, etc. The presence of the Detail 00145 // element information item has no significance as 00146 // to which parts of the faulty SOAP message were 00147 // processed. 00148 00149 // SOAP Fault Codes in SOAP 1.2 (http://www.w3.org/TR/soap12-part1/): 00150 _LIT8(KDataEncodingUnknown, "DataEncodingUnknown"); 00151 // A SOAP header block or SOAP body child element 00152 // information item targeted at the faulting SOAP 00153 // node is scoped (see 5.1.1 SOAP encodingStyle 00154 // Attribute) with a data encoding that the 00155 // faulting node does not support. 00156 00157 _LIT8(KMustUnderstand, "MustUnderstand"); 00158 // An immediate child element information item of 00159 // the SOAP Header element information item 00160 // targeted at the faulting node that was not 00161 // understood by the faulting node contained a SOAP 00162 // mustUnderstand attribute information item with a 00163 // value of "true". 00164 00165 _LIT8(KReceiver, "Receiver"); // The message could not be processed for reasons 00166 // attributable to the processing of the message 00167 // rather than to the contents of the message 00168 // itself. For example, processing could include 00169 // communicating with an upstream SOAP node, which 00170 // did not respond. The message could succeed if 00171 // resent at a later point in time. 00172 00173 _LIT8(KSender, "Sender"); // The message was incorrectly formed or did not 00174 // contain the appropriate information in order to 00175 // succeed. For example, the message could lack the 00176 // proper authentication or payment information. It 00177 // is generally an indication that the message is 00178 // not to be resent without change. 00179 00180 _LIT8(KVersionMismatch, "VersionMismatch"); 00181 // The faulting node found an invalid element 00182 // information item instead of the expected 00183 // Envelope element information item. The namespace, 00184 // local name or both did not match the Envelope 00185 // element information item required by this 00186 // recommendation. 00187 00188 enum TSOAPVersion 00189 { 00190 ESOAP11 = 1, 00191 ESOAP12 00192 }; 00193 00194 #endif // SEN_SOAP_CONSTANTS_H 00195 00196 00197 00198