2 * Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies).
4 * This component and the accompanying materials are made available
5 * under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
6 * which accompanies this distribution, and is available
7 * at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
9 * Initial Contributors:
10 * Nokia Corporation - initial contribution.
15 * Generic Connection Dialog Client
29 #ifndef __AGENTDIALOG_H__
30 #define __AGENTDIALOG_H__
35 //#include <comms-infras/commsdebugutility.h> Cannot be included because it conflicts with flogger
39 Server name in EKA2 case
42 _LIT(KCommsDialogServerName, "!NetDialDialogServer");
44 //__FLOG_STMT(_LIT8(KDlgSvrLogSubsys, "agentdialog");)
45 //__FLOG_STMT(_LIT8(KDlgSvrLogComponent, "server");)
46 //__FLOG_STMT(_LIT8(KDlgCliLogComponent, "client");)
48 class TConnectionPrefs
50 Specifies the rank and desired direction of the connection and bearer.
57 TCommDbConnectionDirection iDirection;
61 class TIspConnectionNames
63 Specifies the Connection Names for ISP.
69 TBuf<KCommsDbSvrDefaultTextFieldLength> iServiceName;
70 TBuf<KCommsDbSvrMaxColumnNameLength> iServiceTable;
71 TBuf<KCommsDbSvrDefaultTextFieldLength> iModemName;
72 TBuf<KCommsDbSvrDefaultTextFieldLength> iLocationName;
73 TBuf<KCommsDbSvrDefaultTextFieldLength> iChargecardName;
76 class TAuthenticationPair
78 Specifies the Authentication for the User Name and Password.
90 Allows the user to see the login script running, see what is sent and received, and allows the user to type responses.
99 class TNewIapConnectionPrefs
101 Specifies Connection Preference for the New IAP.
107 TConnectionPrefs iPrefs;
109 TBuf<KCommsDbSvrDefaultTextFieldLength> iName;
112 class RDialogNotifier : public RNotifier
114 Client interface to allow engines or other low level components to communicate with the UI.
116 Real implementations need three asynchronous message slots instead of RNotifiers default one slot
117 in order to implement the PCT functionality. This is not used at all by the test dialog server
127 class RGenConAgentDialogServer : public RSessionBase
129 RGenConAgentDialogServer. This components needs to be written as a
130 proper polymorphic DLL in JetStream.
132 NOTE! Although the class inherits from RSessionBase this does not mean you
133 have to implement the API as a client server mechanism.
139 IMPORT_C RGenConAgentDialogServer();
140 IMPORT_C ~RGenConAgentDialogServer();
141 IMPORT_C TVersion Version() const;
142 IMPORT_C TInt Connect();
143 IMPORT_C void Close();
144 IMPORT_C void ModemAndLocationSelection(TUint32& aModemId,TUint32& aLocationId,TRequestStatus& aStatus);
145 IMPORT_C void IapConnection(TUint32& aIAP, const TConnectionPrefs& aPrefs, TRequestStatus& aStatus);
146 IMPORT_C void IapConnection(TUint32& aIAP, const TConnectionPrefs& aPrefs, TInt aLastError, TRequestStatus& aStatus);
147 IMPORT_C void WarnNewIapConnection(const TConnectionPrefs& aPrefs, TInt aLastError, const TDesC& aNewIapName, TBool& aResponse, TRequestStatus& aStatus);
148 IMPORT_C void Login(TDes& aUsername, TDes& aPassword, TBool aIsReconnect, TRequestStatus& aStatus);
149 IMPORT_C void Authenticate(TDes& aUsername, TDes& aPassword, TBool aIsReconnect, TRequestStatus& aStatus);
150 IMPORT_C void Reconnect(TBool& aResponse, TRequestStatus& aStatus);
151 IMPORT_C TInt OpenPct();
152 IMPORT_C TInt WritePct(const TDesC& aData);
153 IMPORT_C void ReadPct(TDes& aData, TRequestStatus& aStatus);
154 IMPORT_C void DestroyPctNotification(TRequestStatus& aStatus);
155 IMPORT_C void ClosePct();
156 IMPORT_C void QoSWarning(TBool& aResponse, TRequestStatus& aStatus);
157 IMPORT_C void CancelModemAndLocationSelection();
158 IMPORT_C void CancelIapConnection();
159 IMPORT_C void CancelWarnNewIapConnection();
160 IMPORT_C void CancelLogin();
161 IMPORT_C void CancelAuthenticate();
162 IMPORT_C void CancelReconnect();
163 IMPORT_C void CancelReadPct();
164 IMPORT_C void CancelDestroyPctNotification();
165 IMPORT_C void CancelQoSWarning();
166 IMPORT_C void AccessPointConnection(TUint32& aAccessPoint, TInt aAccessPointGroup, TRequestStatus& aStatus);
167 IMPORT_C void CancelAccessPointConnection();
168 IMPORT_C void AccessPointConnection(TUint32& aAP, TUint32 aAPType, TUint32& aBearerAPInd, TUint32 aBearerAPType, TRequestStatus& aStatus);
171 RDialogNotifier* iNotifier;
173 TPckg<TUint32> iModemId;
174 TPckg<TUint32> iLocationId;
175 TPckgBuf<TIspConnectionNames> iConNames;
176 TPckgBuf<TConnectionPrefs> iPrefs;
178 TPckgBuf<TUint32> iPctBuffer;
179 TPckgBuf<TPctResponse> iPctResponse;
180 TPckgBuf<TAuthenticationPair> iAuthenticationPair;
181 TPckgBuf<TNewIapConnectionPrefs> iNewIapPrefsBuffer;
182 TPckgBuf<TUint32> iNotUsed; // Parameters not used by plugin
183 TRequestStatus iStatus;
184 TPckg<TUint32> iAccessPoint;
185 // __FLOG_DECLARATION_MEMBER;
188 IMPORT_C TInt StartDialogThread();