mpengine/tsrc/unittest_mpmpxcollectionframeworkwrapper/stub/src/mpxcollectionutility.cpp
changeset 22 ecf06a08d4d9
child 32 c163ef0b758d
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mpengine/tsrc/unittest_mpmpxcollectionframeworkwrapper/stub/src/mpxcollectionutility.cpp	Mon May 03 12:29:20 2010 +0300
@@ -0,0 +1,203 @@
+/*
+* 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: mpxcollectionutility stub for testing mpmpxframeworkwrapper
+*
+*/
+
+
+#include <mpxmedia.h>
+#include <mpxmessage.h>
+#include <mpxmessagegeneraldefs.h>
+#include <mpxcollectionmessage.h>
+#include <mpxcollectionmessagedefs.h>
+#include <mpxmediageneraldefs.h>
+#include <mpxmediacollectiondetaildefs.h>
+#include <mpxcollectionplugin.hrh>
+#include <mpxcollectionpath.h>
+#include "mptrace.h"
+#include <e32debug.h>
+
+#include "stub/inc/mpxcollectionutility.h"
+const TInt KMPXAllSongsViewIndex = 0;
+const TInt KMPXPlaylistViewIndex = 1;
+
+/*!
+ Stub function.
+*/
+MMPXCollectionUtility::MMPXCollectionUtility():iBack(EFalse),
+                                               iOpen(EFalse),
+                                               iIndex(0),
+                                               iOpenCount(0),
+                                               iCountPath(0),
+                                               iPlaylists(0),
+                                               iAlbumSongs(0)
+{
+    
+}
+
+/*!
+ Stub function.
+*/
+MMPXCollectionUtility::~MMPXCollectionUtility()
+{
+    if (iAlbumSongs)
+    {
+        delete iAlbumSongs;
+    }
+    if (iPlaylists)
+    {
+        delete iPlaylists;
+    }
+}
+
+/*!
+ Stub function.
+*/
+MMPXCollectionUtility* MMPXCollectionUtility::NewL(MMPXCollectionObserver* aObs, const TUid& aModeId)
+{
+    Q_UNUSED(aObs);
+    Q_UNUSED(aModeId);
+    MMPXCollectionUtility* temp = new MMPXCollectionUtility();
+    return temp;
+}
+
+/*!
+ Stub function.
+*/
+MMPXCollection& MMPXCollectionUtility::Collection()
+{ 
+    return *this;
+}
+
+/*!
+ Stub function.
+*/
+void MMPXCollectionUtility::Close()
+{
+    delete this;
+}
+
+/*!
+ Stub function.
+*/
+CMPXMedia* MMPXCollectionUtility::FindAllL(const CMPXSearchCriteria& aCriteria,
+                                    const TArray<TMPXAttribute>& aAttrs)
+{
+    Q_UNUSED(aAttrs);
+    
+    // Find Playlists
+    if(aCriteria.IsSupported(KMPXMediaGeneralType) && EMPXGroup == aCriteria.ValueTObjectL<TMPXGeneralType>(KMPXMediaGeneralType) &&
+       aCriteria.IsSupported(KMPXMediaGeneralCategory) && EMPXPlaylist == aCriteria.ValueTObjectL<TMPXGeneralCategory>(KMPXMediaGeneralCategory))
+        {
+        return CMPXMedia::NewL(*iPlaylists);
+        }
+    // Find Album with ID
+    else if (aCriteria.IsSupported(KMPXMediaGeneralType) && EMPXGroup == aCriteria.ValueTObjectL<TMPXGeneralType>(KMPXMediaGeneralType) &&
+       aCriteria.IsSupported(KMPXMediaGeneralCategory) && EMPXSong == aCriteria.ValueTObjectL<TMPXGeneralCategory>(KMPXMediaGeneralCategory) &&
+       aCriteria.IsSupported(KMPXMediaGeneralId) && iAlbumSongs &&
+       //it is assumed that album ID matches index on the media array, just to make test logic more simple.
+       TUint32(aCriteria.ValueTObjectL<TMPXItemId>(KMPXMediaGeneralId)) >= 0 && TUint32(aCriteria.ValueTObjectL<TMPXItemId>(KMPXMediaGeneralId)) < iAlbumSongs->Count())
+        {
+        return CMPXMedia::NewL(*iAlbumSongs->AtL(aCriteria.ValueTObjectL<TMPXItemId>(KMPXMediaGeneralId)));
+        }
+    else
+        {
+        return NULL;
+        }
+
+}
+
+/*!
+ Stub function.
+*/
+void MMPXCollectionUtility::CancelRequest()
+{   
+}
+
+/*!
+ Stub function.
+*/
+void MMPXCollectionUtility::BackL()
+{
+    iBack = ETrue;
+}
+
+/*!
+ Stub function.
+*/
+CMPXCollectionPath* MMPXCollectionUtility::PathL()
+{
+    CMPXCollectionPath* path = CMPXCollectionPath::NewL();
+    CleanupStack::PushL( path );
+    path->AppendL( TUid::Uid(EMPXCollectionPluginMusic).iUid );
+    path->AppendL( KMPXPlaylistViewIndex );
+    //Fake some elements for the path
+    for(TInt i = 0; i < 10; i++){
+        path->InsertL(TUid::Uid(EMPXCollectionPluginMusic).iUid,0);
+    }
+    CleanupStack::Pop( path );
+        
+    return path;
+}
+
+/*!
+ Stub function.
+*/
+TUid MMPXCollectionUtility::CollectionIDL(const TArray<TUid>& aUids)
+{ 
+    Q_UNUSED(aUids);
+    return TUid::Uid(EMPXCollectionPluginMusic);
+}
+
+/*!
+ Stub function.
+*/
+void MMPXCollectionUtility::OpenL(TMPXOpenMode aMode)
+{
+    Q_UNUSED(aMode);
+    iOpen = ETrue;
+}
+
+/*!
+ Stub function.
+*/
+void MMPXCollectionUtility::OpenL(TInt aIndex,TMPXOpenMode aMode)
+{
+    Q_UNUSED(aMode);
+    iIndex = aIndex;  
+    iOpen = ETrue;
+}
+
+/*!
+ Stub function.
+*/
+void MMPXCollectionUtility::OpenL(const CMPXCollectionPath& aPath, TMPXOpenMode aMode)
+{
+    Q_UNUSED(aMode);
+    iCountPath = aPath.Count();
+    iOpen = ETrue;
+    iOpenCount++;
+}
+
+/*!
+ Stub function.
+*/
+void MMPXCollectionUtility::setPlaylists( const CMPXMedia& entries )
+{
+    delete iPlaylists;
+    iPlaylists = 0;
+    iPlaylists = CMPXMedia::NewL(entries);
+}
+
+//end of file