2 * Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
4 * This component and the accompanying materials are made available
5 * under the terms of "Eclipse Public License v1.0"
6 * which accompanies this distribution, and is available
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
9 * Initial Contributors:
10 * Nokia Corporation - initial contribution.
15 * Name : sipauthenticateheaderbase.h
23 #ifndef CSIPAUTHENTICATEHEADERBASE_H
24 #define CSIPAUTHENTICATEHEADERBASE_H
27 #include "sipauthheaderbase.h"
29 // FORWARD DECLARATIONS
30 class CSIPAuthenticateHeaderParams;
37 * A base class for SIP Proxy-Authenticate- and WWW-Authenticate-headers
41 class CSIPAuthenticateHeaderBase : public CSIPAuthHeaderBase
43 public: // Constructors and destructor
48 IMPORT_C virtual ~CSIPAuthenticateHeaderBase();
51 public: // New functions
54 * Check whether a qop-value in qop-options is present.
55 * @param aQopValue the qop-value
56 * @return ETrue if present, otherwise EFalse.
58 IMPORT_C TBool HasQopValueL(const TDesC8& aQopValue) const;
60 public: // From CSIPHeaderBase
63 * From CSIPHeaderBase ExternalizeSupported
65 IMPORT_C virtual TBool ExternalizeSupported() const;
67 protected: // Constructors
69 CSIPAuthenticateHeaderBase();
71 void ConstructL(const CSIPAuthenticateHeaderBase& aHeader);
73 protected: // From CSIPHeaderBase
75 void ExternalizeValueL(RWriteStream& aWriteStream) const;
77 protected: // From CSIPAuthBase
79 const CSIPParamContainerBase& Params() const;
80 CSIPParamContainerBase& Params();
82 protected: // New functions
84 void DoInternalizeValueL(RReadStream& aReadStream);
88 CSIPAuthenticateHeaderParams* iParams;
91 #endif // CSIPAUTHENTICATEHEADERBASE_H