--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mmshplugins/mmshwpadapterplugin/inc/muswpadapter.h Thu Dec 17 08:44:37 2009 +0200
@@ -0,0 +1,202 @@
+/*
+* Copyright (c) 2006 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: project specification
+*
+*/
+
+
+
+#ifndef MUSWPADAPTER_H
+#define MUSWPADAPTER_H
+
+
+#include "musunittesting.h"
+
+#include <CWPAdapter.h>
+
+
+class CWPCharacteristic;
+class CMusWpItem;
+
+
+/**
+ * CMusWpAdapter handles application-specific OTA (Over-The-Air) settings
+ * of Mus.
+ */
+class CMusWpAdapter : public CWPAdapter
+ {
+ MUS_UNITTEST( UT_CMusWpAdapter )
+
+ public: // Constructors and destructor
+
+ /**
+ * Two-phased constructor.
+ */
+ static CMusWpAdapter* NewL();
+
+ /**
+ * Destructor.
+ */
+ virtual ~CMusWpAdapter();
+
+
+ public: // from CWPAdapter, pure virtual in base class
+
+ /**
+ * Check the number of settings items.
+ *
+ * @return Number of items
+ */
+ TInt ItemCount() const;
+
+ /**
+ * Returns the title of the nth summary line.
+ *
+ * @param aIndex Number of summary line
+ * @return Summary line title
+ */
+ const TDesC16& SummaryTitle(TInt aIndex) const;
+
+ /**
+ * Returns the text of the nth summary line.
+ *
+ * @param aIndex Number of summary line
+ * @return Summary line text
+ */
+ const TDesC16& SummaryText(TInt aIndex) const;
+
+ /**
+ * Saves one setting handled by the adapter.
+ *
+ * @param Setting number
+ */
+ void SaveL( TInt aItem );
+
+ /**
+ * Returns ETrue if the adapter can set the settings as default.
+ *
+ * @param Setting number
+ * @return ETrue if the setting can be made default
+ */
+ TBool CanSetAsDefault( TInt aItem ) const;
+
+ /**
+ * Adapter sets the settings as default.
+ *
+ * @param Setting number
+ */
+ void SetAsDefaultL( TInt aItem );
+
+ /**
+ * Calls the pair visitor for each detail line of an item.
+ *
+ * @param aItem Item whose details are needed
+ * @param aVisitor Pair visitor
+ * @return KErrNotSupported if not supported
+ */
+ TInt DetailsL( TInt aItem, MWPPairVisitor& aVisitor );
+
+
+ public: // from CWPAdapter, empty implementations in base class
+
+ /**
+ * Informs the adapters of the saved settings.
+ *
+ * @param TDesC8& aAppIdOfSavingItem. UID of the adapter component.
+ * @param HBufC8& aAppRef. APPREF of the saved settings.
+ * @param HBufC8& aStorageIdValue. Value that identifies the settings in
+ * its storage.
+ * @param TBool& aIsLastOfItsType. ETrue is gotten if the saved set
+ * was last of its type.
+ */
+ void SettingsSavedL ( const TDesC8& aAppIdOfSavingItem,
+ const TDesC8& aAppRef,
+ const TDesC8& aStorageIdValue );
+
+ /**
+ * Informs the adapters of the finalization of saving.
+ */
+ void SavingFinalizedL();
+
+
+ public: // from CWPAdapter, which derives them from MWPVisitor
+
+ /**
+ * Called for each characteristic found.
+ *
+ * @param aCharacteristic The characteristic found
+ */
+ void VisitL(CWPCharacteristic& aElement);
+
+ /**
+ * Called for each parameter found.
+ *
+ * @param aParameter The parameter found
+ */
+ void VisitL(CWPParameter& aElement);
+
+ /**
+ * Called for each link to a logical proxy or access point.
+ * No implementation needed.
+ *
+ * @param aCharacteristic The characteristic found by following the
+ * link.
+ */
+ void VisitLinkL(CWPCharacteristic& aLink );
+
+
+ private: // Constructors
+
+ /**
+ * C++ default constructor.
+ */
+ CMusWpAdapter();
+
+ /**
+ * 2nd phase constructor.
+ */
+ void ConstructL();
+
+
+ private: // data
+
+ // Title to be shown in provisioning message
+ HBufC* iSummaryTitle;
+
+ // The application id of the current characteristic.
+ HBufC* iAppID;
+
+ // Settings
+ CMusWpItem* iWpItem;
+
+ // Parsed settings
+ CMusWpItem* iNewWpItem;
+
+ // ETrue if we have profile id to save
+ TBool iProfileIdReceived;
+
+
+ private: // saved settings
+
+ /**
+ * Profile Id of SIP profile saved by SIPAdapter meant
+ * to be used with Mus.
+ */
+ TUint32 iProfileId;
+
+
+ };
+
+
+#endif // MUSWPADAPTER_H