messagingappbase/smartmessaging/wmlbc/inc/WmlBMUtils30.h
changeset 0 72b543305e3a
child 2 0bf1d54f37d9
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/messagingappbase/smartmessaging/wmlbc/inc/WmlBMUtils30.h	Thu Dec 17 08:44:11 2009 +0200
@@ -0,0 +1,106 @@
+/*
+* 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:  
+*     Class offers static utility functions for CWmlBMSubItem.
+*
+*/
+
+
+
+
+#ifndef WMLBMUTILS_H
+#define WMLBMUTILS_H
+
+// INCLUDES
+#include <FavouritesDb.h>
+
+// DATA TYPES
+
+enum TWmlBookmarkFieldIndex
+    {
+    EBookmarkNameFieldIndex = 0,
+    EBookmarkAddressFieldIndex
+    };
+
+// FORWARD DECLARATIONS
+
+class CFavouritesItem;
+class CFavouritesItemList;
+
+class CWmlBMSubItem;
+
+
+// CLASS DECLARATION
+
+/**
+* Class offers utility functions for CWmlBMSubItem-class.
+* Contains only static methods, which are declared private.
+* CWmlBMSubItem-class is declared as a friend class so it
+* may access the private methods.
+*/
+NONSHARABLE_CLASS( WmlBMUtils )
+    {
+
+    private: // constructor
+
+        /**
+        * Constructor.
+        */
+        WmlBMUtils(){};
+
+    private: // Methods available only to the friend classes.
+
+        /**
+        * Actually store the item to the favourites db.
+        * Uniqueness of the name must be quaranteed before
+        * calling this method.
+        * @param aDb reference to the bookmark db object.
+        * @param aItem reference to the favourites item.
+        * @return commsdb error code.
+        */
+        static TInt DoStoreL(RFavouritesDb& aDb, CFavouritesItem& aItem);
+
+        /**
+        * Check if the given name already exists.
+        * @aName name descriptor.
+        * @aItemList list of items among the search is done.
+        * @return index of the found item in the list or
+        * KErrNone if the item was not found.
+        */
+        static TInt Exists( const TDesC& aName,
+            const CFavouritesItemList& aItemList );
+
+        /**
+        * Removes the item from the database.
+        * @param aDb reference to the favourites database.
+        * @param aUid uid of the item, which is to be removed.
+        */
+        //static void RemoveL( RFavouritesDb& aDb, const TUint32 aUid );
+
+        /**
+        * Create the item list qualifying the supplied name criteria.
+        * @param aDb bookmark db where the item are searched.
+        * @return reference to the favourites item list object, which is
+        * pushed to the cleanupstack.
+        */
+        static CFavouritesItemList* CreateItemListLC( RFavouritesDb& aDb);
+
+    private: // friend class declaration.
+
+        friend class CWmlBMSubItem;
+    };
+
+#endif // WMLBMUTILS_H
+
+//  End of File