void CTestBlockController::CommandL(TTEFBlockItem& aCommand, const TInt aAsyncErrorIndex) { // Retrieve the object name from the ini file TPtrC name; if( 0 != aCommand.iCommand.iObject.Compare(KTEFNull) && GetStringFromConfig(aCommand.iCommand.iObject, KName, name) ) { CDataWrapper* data = iDataDictionary.GetDataL(name); if( data!=NULL ) { TBool cmdExists = EFalse; TRAPD(err, cmdExists = data->DoCommandL(aCommand.iCommand.iFunction, aCommand.iSection, aAsyncErrorIndex)); if (KErrNone != err) { ERR_PRINTF4(_L("Command \"%S\" of the object \"%S\" leaves with error code %d"), &aCommand.iCommand.iFunction, &aCommand.iCommand.iObject, err); aCommand.iError = err; SetBlockResult(EFail); } else if( !cmdExists ) { ERR_PRINTF1(KErrNoFunction); aCommand.iError = KErrNotFound; } } else { ERR_PRINTF1(KErrNotExist); aCommand.iError = KErrNotFound; } } else { ERR_PRINTF1(KErrNoName); aCommand.iError = KErrNotFound; } }