messagingfw/biomsgfw/IACPINC/ISPP.H
changeset 0 8e480a14352b
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/messagingfw/biomsgfw/IACPINC/ISPP.H	Mon Jan 18 20:36:02 2010 +0200
@@ -0,0 +1,102 @@
+// Copyright (c) 1998-2009 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"
+// which accompanies this distribution, and is available
+// at the URL "http://www.eclipse.org/legal/epl-v10.html".
+//
+// Initial Contributors:
+// Nokia Corporation - initial contribution.
+//
+// Contributors:
+//
+// Description:
+// Internet Service Provider Settings
+// 
+//
+
+#ifndef __ISPP_H__
+#define __ISPP_H__
+#include <cdbcols.h>
+#include <ipaddr.h>
+
+#include <commsdat.h>
+#include <commsdattypesv1_1.h>
+using namespace CommsDat;
+#include <cdblen.h> 
+
+class CIspParser : public CBase
+/**
+@internalComponent
+@released
+*/
+	{
+public:
+	static CIspParser* NewLC(TInt aSmsType);
+	static CIspParser* NewL(TInt aSmsType);
+	~CIspParser();
+
+	void CheckMandatoryFieldsL(CParsedFieldCollection& aIacpFields);
+
+	void ParseL(CParsedFieldCollection& aIacpFields);
+	void ProcessL(CIacSettingsParser::TIacpConnectionPreferenceFlag& aConnectionPreference);
+	TUint32	IapEntryId();
+
+private:
+	CIspParser(TInt aSmsType);
+	void ConstructL();
+	
+	void WriteToDialOutISPTableL();
+	void WriteToDialOutIAPTableL();
+	void WriteToPreferencesTableL(TCommDbConnectionDirection aDirection,CIacSettingsParser::TIacpConnectionPreferenceFlag& aConnectionPreference);
+	void WriteToProxiesTableL();
+
+	void SetIapIdsL();
+	void GetIapIdL(const TDesC& aTableName, TUint32& aId);
+	TPtrC LimitStringSize(const TDesC& aString);
+	TPtrC8 LimitStringSize(const TDesC8& aString);
+
+	void SetGlobalIapL(const TDesC& aTable, TUint32 aIAP);
+
+private:
+	TInt	iSmsType; //Basic or Extended IAP
+	//Global Setting data
+	TUint32 iIapIsp;
+	TUint32 iProxyIsp;
+	TUint32 iIapModem;
+	TUint32 iIapLocation;
+	TUint32 iIapChargeCard;
+
+	//Basic IAP data (Dial Out ISP)
+	HBufC*	iName;
+	HBufC*  iDefaultTelNum;
+	HBufC*  iLoginName;
+	TBool	iLoginPrompt;
+	HBufC*  iLoginPass;
+	HBufC8*	iModemInit;
+	CIpAddress*  iAddr;
+	CIpAddress*  iDNS1;
+	CIpAddress*  iDNS2;
+	CIpAddress*  iNetMask;
+	CIpAddress*  iGateway;
+
+	//Extended IAP data (Proxies Table)
+	CIpAddress*	iProxyExeptions;	//SMS_PROXY_EXCEPTIONS
+	CIpAddress*	iProxyServerName;	//SMS_PROXY_SERVER_NAME
+	TUint32	iProxyPortNum;		//SMS_PROXY_PORT_NUMBER
+	CIpAddress*	iSecureProxySrv;	//SMS_SECURE_PROXY
+	TUint32	iSecurePortNum;	//SMS_SECURE_PORT
+	TBool	iSecureProxy;
+	HBufC*	iLoginCustomisation;	//SMS_LOGIN_CUSTOMISATION 
+	TBool   iSWCompressionEnabled; //SMS_ENABLE_SW_COMP //PPP compression "Y"|"N"
+
+	TBool	iNoExistingIpAddr;
+	TBool	iNoExistingDNS;
+
+	TUint32	iDialOutIap;
+
+	CMDBSession*		iDbSession;
+	TUint32 iRecordId;
+
+	};
+#endif