00001 /* 00002 * ============================================================================= 00003 * Name : sippassociateduriheader.h 00004 * Part of : SIP Codec 00005 * Interface : SDK API, SIP Codec API 00006 * Description : 00007 * Version : SIP/4.0 00008 * 00009 * Copyright (c) 2004 Nokia Corporation. 00010 * This material, including documentation and any related 00011 * computer programs, is protected by copyright controlled by 00012 * Nokia Corporation. All rights are reserved. Copying, 00013 * including reproducing, storing, adapting or translating, any 00014 * or all of this material requires the prior written consent of 00015 * Nokia Corporation. This material also contains confidential 00016 * information which may not be disclosed to others without the 00017 * prior written consent of Nokia Corporation. 00018 * ============================================================================= 00019 */ 00020 00021 00022 #ifndef CSIPPASSOCIATEDURIHEADER_H 00023 #define CSIPPASSOCIATEDURIHEADER_H 00024 00025 // INCLUDES 00026 #include "SIPAddressHeaderBase.h" 00027 #include "_sipcodecdefs.h" 00028 00029 // FORWARD DECLARATIONS 00030 class CSIPAddress; 00031 class CSIPHeaderGenericParams; 00032 00033 // CLASS DECLARATION 00043 class CSIPPAssociatedURIHeader : public CSIPAddressHeaderBase 00044 { 00045 public: // Constructors and destructor 00046 00055 IMPORT_C static RPointerArray<CSIPPAssociatedURIHeader> 00056 DecodeL(const TDesC8& aValue); 00057 00064 IMPORT_C static CSIPPAssociatedURIHeader* 00065 NewL(CSIPAddress* aSIPAddress); 00066 00074 IMPORT_C static CSIPPAssociatedURIHeader* 00075 NewLC(CSIPAddress* aSIPAddress); 00076 00080 IMPORT_C virtual ~CSIPPAssociatedURIHeader(); 00081 00082 00083 public: // New functions 00084 00092 IMPORT_C static CSIPHeaderBase* 00093 InternalizeValueL(RReadStream& aReadStream); 00094 00095 public: // From CSIPHeaderBase 00096 00100 IMPORT_C CSIPHeaderBase* CloneL() const; 00101 00105 IMPORT_C RStringF Name() const; 00106 00107 public: // From CSIPHeaderBase, for internal use 00108 00109 TPreferredPlace PreferredPlaceInMessage() const; 00110 TBool MoreThanOneAllowed() const; 00111 00112 public: // New functions, for internal use 00113 00114 static RPointerArray<CSIPHeaderBase> BaseDecodeL(const TDesC8& aValue); 00115 00116 private: // Constructors 00117 00118 CSIPPAssociatedURIHeader(); 00119 00120 private: // For testing purposes 00121 00122 UNIT_TEST(CSIPPAssociatedURIHeaderTest) 00123 }; 00124 00125 // end of CSIPPASSOCIATEDURIHEADER_H 00126 #endif 00127 00128 // End of File