telephonyprotocols/pdplayer/inc/PDPDeftSCPR.h
branchRCL_3
changeset 9 2492a6e4aed7
parent 0 3553901f7fa8
--- a/telephonyprotocols/pdplayer/inc/PDPDeftSCPR.h	Wed Apr 14 17:11:46 2010 +0300
+++ b/telephonyprotocols/pdplayer/inc/PDPDeftSCPR.h	Tue Apr 27 17:51:07 2010 +0300
@@ -1,4 +1,4 @@
-// Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
+// Copyright (c) 2006-2010 Nokia Corporation and/or its subsidiary(-ies).
 // All rights reserved.
 // This component and the accompanying materials are made available
 // under the terms of "Eclipse Public License v1.0"
@@ -28,6 +28,7 @@
 #include <comms-infras/corescprstates.h>
 #include "PDPSCPR.h"
 #include "PDPSCPRStates.h"
+#include "AuthenticationDialog.h"
 
 namespace PDPSCprStates
     {
@@ -41,7 +42,7 @@
 	};
     
 class CPDPSubConnectionProviderFactory;    
-class CPDPDefaultSubConnectionProvider : public CPDPSubConnectionProvider
+class CPDPDefaultSubConnectionProvider : public CPDPSubConnectionProvider, public MAuthenticationDialogObserver
 /** Default PDP subconnection provider
 
 @internalTechnology
@@ -61,7 +62,27 @@
     virtual void LinkDown(TInt aCause);
 
 	void SendDataClientIdleIfNoSubconnsAndNoClientsL();
-	
+
+    //-====================================
+    //MAuthenticationDialogObserver method
+    //-====================================
+    virtual void AuthenticationCompleteL(TInt aError);
+
+    TBool PromptForAuth() const 
+        {
+        return iPromptForAuth;
+        }
+
+    void SetPromptForAuth(TBool aPromptForAuth)
+        {
+        iPromptForAuth = aPromptForAuth;
+        }
+
+    void AuthenticateL();
+
+private:
+    RPacketContext::TProtocolConfigOptionV2* ProtocolConfigOptionL();
+
 protected:
     //-====================================
     //Construction methods bundle - accessible thru the factory only
@@ -71,6 +92,17 @@
 	void ConstructL();
 
     TInt iLinkDowns;
+
+private:
+    TBool iPromptForAuth;
+    CAuthenticationDialog *iAuthDialog;
+	/*
+	These temporary user name & password are required because 
+	authorization data stored in config data structure are of
+	TBuf8 type but agent dialog server expect TBuf type.
+	*/
+    TBuf<RPacketContext::KMaxAuthDataLength> iUsername;
+    TBuf<RPacketContext::KMaxAuthDataLength> iPassword;
     };