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

siprequestelements.h

Go to the documentation of this file.
00001 /*
00002 * ==============================================================================
00003 *  Name        : siprequestelements.h
00004 *  Part of     : SIP Client
00005 *  Interface   : SDK API, SIP API
00006 *  Description : 
00007 *  Version     : 1.0
00008 *
00009 *  Copyright (c) 2005 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 #ifndef CSIPREQUESTELEMENTS_H
00022 #define CSIPREQUESTELEMENTS_H
00023 
00024 //  INCLUDES
00025 #include <e32base.h>
00026 #include <s32strm.h>
00027 #include <stringpool.h>
00028 #include <uri8.h>
00029 #include "_sipcodecdefs.h"
00030 
00031 // FORWARD DECLARATIONS
00032 class CSIPMessageElements;
00033 class CSIPFromHeader;
00034 class CSIPToHeader;
00035 class CSIPCSeqHeader;
00036 class CURIContainer;
00037 
00038 // CLASS DECLARATION
00039 
00049 class CSIPRequestElements : public CBase
00050     {
00051     public:  // Constructors and destructor      
00059         IMPORT_C static CSIPRequestElements* NewL(CUri8* aRemoteUri);
00060 
00068         IMPORT_C static CSIPRequestElements* NewLC(CUri8* aRemoteUri);
00069 
00073         IMPORT_C ~CSIPRequestElements();
00074 
00075     public: // New functions
00082         IMPORT_C void SetToHeaderL(CSIPToHeader* aTo);
00083             
00089         IMPORT_C const CSIPToHeader* ToHeader() const;
00090 
00098         IMPORT_C void SetFromHeaderL(CSIPFromHeader* aFrom);
00099             
00105         IMPORT_C const CSIPFromHeader* FromHeader() const;
00106 
00112         IMPORT_C const CSIPCSeqHeader* CSeqHeader() const;
00113 
00121         IMPORT_C void SetRemoteUriL(CUri8* aRemoteUri);
00122 
00127         IMPORT_C const CUri8& RemoteUri() const; 
00128 
00135         IMPORT_C void SetMethodL(RStringF aMethod);
00136 
00142         IMPORT_C RStringF Method() const;
00143 
00148         IMPORT_C const CSIPMessageElements& MessageElements() const;
00149 
00156         IMPORT_C CSIPMessageElements& MessageElements();
00157 
00158     public: // New functions, for internal use
00159         static CSIPRequestElements* InternalizeL (RReadStream& aReadStream);
00160         void ExternalizeL (RWriteStream& aWriteStream) const;
00161 
00162     private:
00163         CSIPRequestElements();
00164         void ConstructL(CUri8* aRemoteUri);
00165         void DoInternalizeL(RReadStream& aReadStream);
00166 
00167     private: // Data
00168         RStringF iMethod;
00169         CURIContainer* iRemoteURI;
00170         CSIPMessageElements* iMessageElements;
00171 
00172     private: // For testing purposes
00173         UNIT_TEST(CSIPRequestElementsTest)
00174     };
00175 
00176 #endif

Copyright © Nokia Corporation 2001-2007
Back to top