diff -r 000000000000 -r 094583676ce7 inc/wvsettings.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/inc/wvsettings.h Thu Dec 17 08:41:52 2009 +0200 @@ -0,0 +1,145 @@ +/* +* Copyright (c) 2002 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: +* WirelessVillage OTA settings parser. +* +*/ + + +#ifndef CWVSettings_H +#define CWVSettings_H + +// INCLUDES +#include +#include +#include + +class CWVSettingsParser :public CBase + { + public: // Constructors and destructor + + /** + * Two-phased constructor. + */ + IMPORT_C static CWVSettingsParser* NewL (); + /** + * Destructor + */ + virtual ~CWVSettingsParser(); + + public: // New functions + + /** + * Parses the data + * @param aDataBuffer contains the data + * @return EFalse, if mandatory value is missing, otherwise ETrue + */ + IMPORT_C TBool ParseL(TDesC8& aDataBuffer); + /** + * Accessor to the root element (WVSettings) + * @return CXmlElement*, pointer to the root element + */ + IMPORT_C CXmlElement* Root (); + /** + * Parses the data, sets values to the internal data structure + * @param aDataPtr pointer to the data + */ + void DoParseL(TDesC8& aDataBuffer); + /** + * Read element, sets values to the internal data structure + * @param aDataPtr pointer to the data + * @return number of parsed bytes + */ + TInt ReadElementWithContentL(TUint8* ptr, HBufC* aDataBuffer); + /** + * Read empty element + * @param aDataPtr pointer to the data + * @return number of parsed bytes + */ + TInt ReadEmptyElement(TUint8* aDataPtr, HBufC* aDataBuffer); + /** + * Parses the data, sets values to the internal data structure + * @param aDataPtr pointer to the data + * @return number of parsed bytes + */ + TInt ReadSupportedVersionsL(TUint8* aDataPtr); + /** + * Creates xml tree + */ + void CreateXmlElementTreeL (); + /** + * Validates the data + * @return EFalse, if mandatory value is missing, otherwise ETrue + */ + TBool Validate (); + + private: + /** + * C++ default constructor. + */ + CWVSettingsParser(); + /** + * Actual construction. + */ + void ConstructL (); + + private: // Data + + TInt iDatabufferSize; + TInt iParsedBytes; + CXmlElement* iRootElement; + HBufC* iWVOTAVersion; + HBufC* iWVPassword; + HBufC* iWVPreferredProtocol; + HBufC* iWVProxyAddress; + HBufC* iWVProxyPort; + HBufC* iWVProxyUser; + HBufC* iWVProxyPassword; + HBufC* iWVRefName; + HBufC* iWVSAPFourWaySupported1; + HBufC* iWVSAPFourWaySupported2; + HBufC* iWVSAPMobileNumber; + HBufC* iWVSAPURI; + HBufC* iWVSettingsName; + HBufC* iWVSMSCMobileNumber; + HBufC* iWVUserID; + CArrayPtrFlat* iWVSupportedVersions; + TBool iListEmpty; + // these are used for validating + // and xml tree creation + TBool iOTAVersion; + TBool iPassword; + TBool iPreferredProtocol; + TBool iProxyAddress; + TBool iProxyPort; + TBool iProxyUser; + TBool iProxyPassword; + TBool iRefName; + TBool iSAP4WaySupportedSms; + TBool iSAP4WaySupportedHttp; + TBool iSAPMobileNumber; + TBool iSAPURI; + TBool iSettingsName; + TBool iSMSCMobileNumber; + TBool iUserID; + TBool iSupportedVersions; + TBool iCommon; + TBool iSms; + TBool iHttp; + TBool iProxy; + }; + +#endif + +// End of File