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

sipservertransaction.h

Go to the documentation of this file.
00001 /*
00002 * ==============================================================================
00003 *  Name        : sipservertransaction.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 CSIPSERVERTRANSACTION_H
00022 #define CSIPSERVERTRANSACTION_H
00023 
00024 // INCLUDES
00025 #include "siptransactionbase.h"
00026 
00027 // FORWARD DECLARATIONS
00028 class CSIPRequestElements;
00029 class MSIPResponseSender;
00030 class CSIPConnection;
00031 class CSIPDialogImplementation;
00032 
00033 // CLASS DECLARATION
00034 
00046 class CSIPServerTransaction: public CSIPTransactionBase
00047         {
00048         public: // Destructor
00049     
00053                 IMPORT_C ~CSIPServerTransaction();
00054 
00055         public: // New functions
00056         
00076                 IMPORT_C void SendResponseL(CSIPResponseElements *aElements);
00077 
00082                 IMPORT_C const CSIPRequestElements* RequestElements() const;
00083 
00089                 IMPORT_C TBool ResponseAllowed() const;
00090         
00091         public: // New functions, for internal use
00092         
00099         void SetResponseSender(MSIPResponseSender* aSender);
00100 
00107                 CSIPDialogImplementation* Dialog() const;
00108 
00115         CSIPConnection& SIPConnectionL();
00116 
00122         void ReAssociateL(MTransactionAssociation& aAssociation);
00123 
00131         static void DetachRequestElements(TAny* aServerTransaction);
00132 
00133         public: // Constructors, for internal use
00142                 static CSIPServerTransaction*
00143             NewL(TUint32 aRequestId,
00144                  MTransactionAssociation& aAssociation,
00145                  CSIPRequestElements* aElements);
00146 
00155                 static CSIPServerTransaction*
00156             NewLC(TUint32 aRequestId,
00157                   MTransactionAssociation& aAssociation,
00158                   CSIPRequestElements* aElements);
00159 
00160         private: // Constructors
00161                 CSIPServerTransaction(TUint32 aRequestId,
00162                               MTransactionAssociation& aAssociation);
00163 
00170         void ConstructL(CSIPRequestElements* aElements);
00171 
00172         private: // Data
00173         CSIPRequestElements* iRequestElements;
00174 
00175         //This interface is used for sending the response.
00176         //CSIPServerTransaction owns iResponseSender.
00177         MSIPResponseSender* iResponseSender;
00178 
00179         private: // For testing purposes        
00180 
00181             UNIT_TEST(CSIPServerTransaction_Test)
00182         UNIT_TEST(CSIP_Test)
00183 
00184                 __DECLARE_TEST;
00185         };
00186 
00187 #endif

Copyright © Nokia Corporation 2001-2007
Back to top