// NERR.H
//
// Copyright (c) 1998 Symbian Ltd. All rights reserved.
//
// Network and Email error translation class

#if !defined __NERR_H__
#define __NERR_H__

#if !defined(__E32DEF_H__)
#include <E32DEF.H>
#endif // __E32DEF_H__

class CCommsDatabase;

//////////////////////////
// CNetEmailErrResolver //
//////////////////////////

class CNetEmailErrResolver: public CBase
	{
public:
	IMPORT_C static CNetEmailErrResolver* NewL();
	IMPORT_C ~CNetEmailErrResolver();
	IMPORT_C TBool ResolveError(TDes& aText, TInt aError);
	IMPORT_C static void GetNerrResourceFileNameL(TFileName& aFileName);
	IMPORT_C TBool OpenCommsDatabaseLC(CCommsDatabase*& aCommsDbPointer);
	IMPORT_C TBool CheckISPListL(CCommsDatabase& aDb);
	IMPORT_C TBool CheckLocationListL(CCommsDatabase& aDb);	

private:
	CNetEmailErrResolver();
	void ConstructL();
	void InfoWinL(TInt aTitleResId, TInt aLineResId);
	CCommsDatabase* DoOpenCommsDatabaseL();
	TBool DoCheckISPsDefinedL(CCommsDatabase& aDb);
	void DoCheckLocationListL(CCommsDatabase& aDb);

private:	
	CEikonEnv*	iEikEnv;
	TInt		iResourceFileOffset;
	TInt		iNumNetdialErrors;
	TInt		iNumEtelErrors;
	TInt		iNumPPPErrors;
	TInt		iNumPOPErrors;
	TInt		iNumSMTPErrors;
	TInt		iNumIMAP4Errors;
	TInt		iNumIMSKErrors;	
	};

#endif // __NERR_H__
