mds_plat/harvester_framework_api/tsrc/HarvesterPluginTest/src/HarvesterPluginTestBlocks.cpp
changeset 58 fe894bb075c2
parent 51 87e65c44ff3a
child 60 79f826a55db2
--- a/mds_plat/harvester_framework_api/tsrc/HarvesterPluginTest/src/HarvesterPluginTestBlocks.cpp	Fri Sep 03 10:57:50 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,493 +0,0 @@
-/*
-* 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:  
-*
-*/
-
-
-// [INCLUDE FILES] - do not remove
-#include <e32svr.h>
-#include <StifParser.h>
-#include <StifTestEventInterface.h>
-#include <StifTestInterface.h>
-#include "HarvesterPluginTest.h"
-
-#include "mdsutils.h"
-#include "harvesterblacklist.h"
-#include "mdeobject.h"
-#include "mdeobjecthandler.h"
-
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// -----------------------------------------------------------------------------
-// CHarvesterPluginTest::Delete
-// Delete here all resources allocated and opened from test methods. 
-// Called from destructor. 
-// -----------------------------------------------------------------------------
-//
-void CHarvesterPluginTest::Delete() 
-    {
-
-    }
-
-// -----------------------------------------------------------------------------
-// CHarvesterPluginTest::RunMethodL
-// Run specified method. Contains also table of test mothods and their names.
-// -----------------------------------------------------------------------------
-//
-TInt CHarvesterPluginTest::RunMethodL( 
-    CStifItemParser& aItem ) 
-    {
-
-    static TStifFunctionInfo const KFunctions[] =
-        {  
-        // Copy this line for every implemented function.
-        // First string is the function name used in TestScripter script file.
-        // Second is the actual implementation member function. 
-
-        ENTRY( "BeginTestSession", CHarvesterPluginTest::BeginTestSessionL ),
-        ENTRY( "EndTestSession", CHarvesterPluginTest::EndTestSession ),
-        ENTRY( "LoadPlugins", CHarvesterPluginTest::LoadPluginsL ),
-        ENTRY( "TestFunctions", CHarvesterPluginTest::TestFunctionsL ),
-        		
-        };
-
-    const TInt count = sizeof( KFunctions ) / 
-                        sizeof( TStifFunctionInfo );
-
-    return RunInternalL( KFunctions, count, aItem );
-
-    }
-
-// -----------------------------------------------------------------------------
-// CHarvesterPluginTest::HandleSessionOpened
-// -----------------------------------------------------------------------------
-//
-void CHarvesterPluginTest::HandleSessionOpened( CMdESession& /*aClient*/, TInt aError )
-    {
-    _LIT( KMsg, "CallBck HandleSessionOpened - Error code : %d" );
-    TBuf <100> msg;
-    msg.Format(KMsg, aError);
-    iLog->Log( msg );     
-    RDebug::Print(msg);
-    
-    TRAP_IGNORE( iMdeObjectHandler = CMdeObjectHandler::NewL( *iMdeSession ) );
-    
-    // session event
-    TEventIf event( TEventIf::ESetEvent, _L("Session") );
-    TestModuleIf().Event( event );
-    }
-
-// -----------------------------------------------------------------------------
-// CHarvesterPluginTest::HandleSessionError
-// -----------------------------------------------------------------------------
-//
-void CHarvesterPluginTest::HandleSessionError( CMdESession& /*aClient*/, TInt aError )
-    {
-    _LIT( KMsg, "CallBck HandleSessionError - Error code : %d" );
-    TBuf <100> msg;
-    msg.Format(KMsg, aError);
-    iLog->Log( msg );
-    RDebug::Print(msg);
-    
-    // session event
-    TEventIf event( TEventIf::ESetEvent, _L("Session") );
-    TestModuleIf().Event( event );
-    }
-
-// -----------------------------------------------------------------------------
-// CHarvesterPluginTest::HarvestingCompleted
-// -----------------------------------------------------------------------------
-//
-void CHarvesterPluginTest::HarvestingCompleted( CHarvesterData* /* aHarvesterData */ )
-	{ 
-    // harvest event
-    TEventIf event( TEventIf::ESetEvent, _L("Harvest") );
-    TestModuleIf().Event( event );
-	}
-
-// -----------------------------------------------------------------------------
-// CHarvesterPluginTest::BeginTestSessionL
-// -----------------------------------------------------------------------------
-//
-TInt CHarvesterPluginTest::BeginTestSessionL( CStifItemParser& /* aItem */ )
-    {
-    TRAPD( error, iMdeSession = CMdESession::NewL( *this ) );
-
-    iSession = CMdEHarvesterSession::NewL( *iMdeSession );
-    
-    iCtxEngine = NULL;
-    	
-    iBlacklist = CHarvesterBlacklist::NewL();
-    
-    _LIT( KMsg, "Exit BeginTestSession - Error code : %d" );
-    TBuf <100> msg;
-    msg.Format(KMsg, error);
-    iLog->Log( msg );
-    RDebug::Print( msg );
-    
-    User::LeaveIfError( error );
-    
-    return KErrNone;
-    }    
-
-// -----------------------------------------------------------------------------
-// CHarvesterPluginTest::EndTestSession
-// -----------------------------------------------------------------------------
-//
-TInt CHarvesterPluginTest::EndTestSession( CStifItemParser& /* aItem */ )
-	{       
-	iPluginInfoArray.ResetAndDestroy();
-	iPluginInfoArray.Close();
-	
-	REComSession::FinalClose();
-    
-    if ( iCtxEngine )
-    	{
-    	iCtxEngine->ReleaseInstance();
-    	iCtxEngine = NULL;
-    	}
-
-    if ( iBlacklist )
-        {
-        iBlacklist->CloseDatabase();
-        delete iBlacklist;
-        }
-    
-    if ( iSession )
-    	{
-    	delete iSession;
-    	iSession = NULL;
-    	}
-    
-    if ( iMdeObjectHandler )
-    	{
-    	delete iMdeObjectHandler;
-    	iMdeObjectHandler = NULL;
-    	}
-
-    if( iMdeSession )
-    	{
-    	delete iMdeSession;
-    	iMdeSession = NULL;
-    	}
-    
-    _LIT( KMsg, "Exit    EndTestSession" );
-    iLog->Log( KMsg );  
-    RDebug::Print(KMsg);
-	
-    return KErrNone;
-    }
-
-// -----------------------------------------------------------------------------
-// CHarvesterPluginTest::LoadPluginsL
-// -----------------------------------------------------------------------------
-//
-TInt CHarvesterPluginTest::LoadPluginsL( CStifItemParser& /* aItem */ )
-    {
-    _LIT( KMsg1, "Enter LoadPlugins" );
-    iLog->Log( KMsg1 );
-    RDebug::Print( KMsg1 );
-    
-    RImplInfoPtrArray infoArray;
-    	
-	TCleanupItem cleanupItem( MdsUtils::CleanupEComArray, &infoArray );
-	CleanupStack::PushL( cleanupItem );
-	
-	CHarvesterPlugin::ListImplementationsL( infoArray );
-	TInt count( 0 );
-	count = infoArray.Count();
-	
-	if( count == 0 )
-	    {
-	    return KErrNotFound;
-	    }
-	
-	for ( TInt i=0; i < count; i++ )
-		{
-		// Parse the file extensions and resolve plug-in's uids from infoArray to iDataTypeArray
-        TBufC8<256> type;
-        TBufC8<256> opaque;
-        
-        type = infoArray[i]->DataType();
-        opaque = infoArray[i]->OpaqueData();
-        TUid implUID = infoArray[i]->ImplementationUid(); 
-                
-        AddNewPluginL(type, opaque, implUID);
-		}
-	
-	CleanupStack::PopAndDestroy( &infoArray ); // infoArray, results in a call to CleanupEComArray
-    
-    _LIT( KMsg2, "Exit    LoadPlugins" );
-    iLog->Log( KMsg2 );
-    RDebug::Print( KMsg2 );
-    
-    return KErrNone;
-    }
-
-// -----------------------------------------------------------------------------
-// CHarvesterPluginTest::TestFunctionsL
-// -----------------------------------------------------------------------------
-//
-TInt CHarvesterPluginTest::TestFunctionsL( CStifItemParser& aItem )
-    {
-    _LIT( KMsg1, "Enter TestFunctions" );
-    iLog->Log( KMsg1 );
-    RDebug::Print( KMsg1 );
-    
-	TPtrC inputFile;
-	User::LeaveIfError( aItem.GetNextString( inputFile ) );
-	
-	iMdeSession->RemoveObjectL( inputFile );
-	
-	TBuf<100> aObjectDef;
-	
-	GetObjectDef( inputFile, aObjectDef, EFalse );
-    
-	// harvesterdata object
-	HBufC* uriBuf = inputFile.AllocLC();
-	CHarvesterData* data = CHarvesterData::NewL( uriBuf );
-	data->SetPluginObserver( *this );
-	CMdEObject* mdeObject = NULL;
-	_LIT( string, "Image" );
-	mdeObject = iMdeObjectHandler->GetMetadataObjectL( *data, string );
-	data->SetMdeObject( mdeObject );
-	CleanupStack::Pop( uriBuf );
-	
-	HarvestL( data );
-	
-    _LIT( KMsg2, "Exit TestFunctions" );
-    iLog->Log( KMsg2 );
-    RDebug::Print( KMsg2 );
-    
-    return KErrNone;
-    }
-
-// ---------------------------------------------------------------------------
-// GetObjectDef
-// ---------------------------------------------------------------------------
-//
-TBool CHarvesterPluginTest::GetObjectDef(const TDesC& aUri, TDes& aObjectDef, TBool aCheck)
-	{
-	CHarvesterPluginInfo* hpi = NULL; 
-
-	TRAPD( err, hpi = GetHPIFromFileNameL(aUri) );
-	if ( err != KErrNone )
-		{
-		aObjectDef.Zero();
-		return EFalse;
-		}
-
-	if ( !hpi )
-		{
-		aObjectDef.Zero();
-		}
-	else
-		{
-		if( hpi->iObjectTypes.Count() > 1)
-			{
-			if( aCheck )
-				{
-				aObjectDef.Zero();
-				return ETrue;
-				}
-			
-			if ( ! hpi->iPlugin )
-	    		{
-	    		TRAPD( error, hpi->iPlugin = CHarvesterPlugin::NewL( hpi->iPluginUid ) );
-	             if( error )
-	                    {
-	                    aObjectDef.Zero();
-	                    return EFalse;
-	                    }
-	             else
-	                 {
-	                 hpi->iPlugin->SetQueue( hpi->iQueue );
-	                 }
-	    		}
-			hpi->iPlugin->GetObjectType( aUri, aObjectDef );
-			}
-		else
-			{
-			aObjectDef.Copy( *(hpi->iObjectTypes[0]) );
-			}
-		}
-	
-	return EFalse;
-	}
-
-// ---------------------------------------------------------------------------
-// HarvestL
-// ---------------------------------------------------------------------------
-//
-TInt CHarvesterPluginTest::HarvestL( CHarvesterData* aHD )
-	{
-    _LIT( KMsg1, "Enter HarvestL" );
-    iLog->Log( KMsg1 );
-    RDebug::Print( KMsg1 );
-	
-	CHarvesterPluginInfo* hpi = aHD->HarvesterPluginInfo();
-	
-	if ( !hpi ) 
-		{
-		 hpi = GetHPIFromFileNameL( aHD->Uri() );
-		}
-	
-	if ( hpi )
-		{
-		if ( ! hpi->iPlugin )
-    		{
-    		hpi->iPlugin = CHarvesterPlugin::NewL( hpi->iPluginUid );
-    		hpi->iPlugin->SetQueue( hpi->iQueue );
-    		hpi->iPlugin->SetBlacklist( *iBlacklist );
-    		}
-		
-	    if( aHD->ObjectType() == EFastHarvest || aHD->Origin() == MdeConstants::Object::ECamera )
-	    	{
-	    	hpi->iQueue.Insert( aHD, 0 );
-	    	}
-	    else
-			{
-			hpi->iQueue.AppendL( aHD );
-			}
-	    
-		hpi->iPlugin->StartHarvest();
-	
-	    _LIT( KMsg2, "Exit HarvestL" );
-	    iLog->Log( KMsg2 );
-	    RDebug::Print( KMsg2 );
-		
-		return KErrNone;
-		}
-	
-	return KErrNotFound;
-	}
-
-// -----------------------------------------------------------------------------
-// AddNewPluginL
-// -----------------------------------------------------------------------------
-//
-void CHarvesterPluginTest::AddNewPluginL( const TDesC8& aType, const TDesC8& aOpaque, TUid aPluginUid )
-    {      
-    CHarvesterPluginInfo* pluginInfo = new (ELeave) CHarvesterPluginInfo;
-    CleanupStack::PushL( pluginInfo );
-
-    // get file extensions
-    TLex8 lex( aOpaque );
-    while ( !lex.Eos() )
-        {
-        /* Tokenizing file extensions using TLex8 */
-        lex.SkipSpaceAndMark();
-
-        TPtrC8 extToken = lex.NextToken();
-
-        HBufC* str = HBufC::NewLC( extToken.Length() );
-        str->Des().Copy( extToken );
-        pluginInfo->iExtensions.AppendL( str );
-        CleanupStack::Pop( str );
-        }
-
-    // get object types
-    TLex8 lexObjectTypes( aType );
-    while ( !lexObjectTypes.Eos() )
-        {
-        /* Tokenizing object types using TLex8 */
-        lexObjectTypes.SkipSpaceAndMark();
-        
-        TPtrC8 objectTypeToken = lexObjectTypes.NextToken();
-
-        HBufC* str = HBufC::NewLC( objectTypeToken.Length() );
-        str->Des().Copy( objectTypeToken );
-        pluginInfo->iObjectTypes.AppendL( str );
-        CleanupStack::Pop( str );
-        }
-
-    /* We set plugin as NULL - we only load them when needed */
-    pluginInfo->iPlugin = NULL;
-    pluginInfo->iPluginUid = aPluginUid;
-    iPluginInfoArray.AppendL( pluginInfo );
-    CleanupStack::Pop( pluginInfo );
-    }
-
-// ---------------------------------------------------------------------------
-// GetHPIFromFileNameL
-// ---------------------------------------------------------------------------
-//
-CHarvesterPluginInfo* CHarvesterPluginTest::GetHPIFromFileNameL(const TDesC& aFileName)
-	{
-    _LIT( KMsg1, "Enter GetHPIFromFileNameL" );
-    iLog->Log( KMsg1 );
-    RDebug::Print( KMsg1 );
-	
-	TParsePtrC parser( aFileName );
-    
-    // without trailing dot "."
-    TPtrC ptr = parser.Ext();
-    if ( ptr.Length() > 1 )
-    	{
-    	ptr.Set( ptr.Mid( 1 ) );
-    	}
-
-    _LIT( KMsg2, "Exit GetHPIFromFileNameL" );
-    iLog->Log( KMsg2 );
-    RDebug::Print( KMsg2 );
-    
-	return GetFromNormalFileL( ptr );
-	}
-
-// ---------------------------------------------------------------------------
-// GetFromNormalFile
-// ---------------------------------------------------------------------------
-//
-CHarvesterPluginInfo* CHarvesterPluginTest::GetFromNormalFileL( TDesC& aExt )
-	{
-    _LIT( KMsg1, "Enter GetFromNormalFileL" );
-    iLog->Log( KMsg1 );
-    RDebug::Print( KMsg1 );
-	
-	CHarvesterPluginInfo* retVal = NULL;
-
-	for ( TInt i = iPluginInfoArray.Count(); --i >= 0; )
-        {
-        CHarvesterPluginInfo* info = iPluginInfoArray[i];
-        TBool found = EFalse;
-        
-        for ( TInt k = info->iExtensions.Count(); --k >= 0; )
-            {
-            TDesC* ext = info->iExtensions[k];
-            
-            // checking against supported plugin file extensions
-            TInt result = ext->CompareF( aExt );
-            if ( result == 0 )
-                {
-                retVal = info;
-                found = ETrue;
-                break;
-                }
-            }
-        if ( found )
-        	{
-        	break;
-        	}
-        }
-
-    _LIT( KMsg2, "Exit GetFromNormalFileL" );
-    iLog->Log( KMsg2 );
-    RDebug::Print( KMsg2 );
-	
-	return retVal;
-	}
-
-//  [End of File] - Do not remove