diff -r 8ce15fced3a6 -r cad71a31b7fc srsf/nssvasapi/nssvasdb/src/nssvascvasdatabase.cpp --- a/srsf/nssvasapi/nssvasdb/src/nssvascvasdatabase.cpp Thu Aug 19 09:56:14 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,996 +0,0 @@ -/* -* Copyright (c) 2003-2005 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: CNssVasDatabase is responsible for the issuing of requests to -* to the VasDb server and returning the results to the VasDb Managers. -* -*/ - - -#include "srsfbldvariant.hrh" -#include -#include -#include "nssvascvasdatabase.h" -#include "nssvascspeechitem.h" -#include "nssvascvasdbsrvdef.h" -#include "nssvastspeechitemconstant.h" -#include -#include "rubydebug.h" - -// Complementary macro for TRAPD: -// TRAPD( err, doSomething() ); -// REACT( err, return( err ) ); -#define REACT(a,b) if ( a < 0 ) {b;} - -const TInt KTagRefListGranularity = 2; - -const TInt KFetchedTagRefListGranularity = 50; - -#ifdef _DEBUG -// used in UDEB macros only -_LIT( KVasDatabasePanic, "CNssVasDatabase.cpp" ); -#endif // _DEBUG - -// ============================ Methods =============================== - -//-------------------------------------------------------- -//C++ default constructor can NOT contain any code that -// might leave. -//-------------------------------------------------------- -CNssVASDatabase::CNssVASDatabase( TInt /*aPriority*/ ) -: iIsLocked( EFalse ) - { - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::NewLC -// Two-phased constructor. -// ----------------------------------------------------------------------------- -// -CNssVASDatabase* CNssVASDatabase::NewLC( TInt aPriority ) - { - CNssVASDatabase* self = new(ELeave)CNssVASDatabase( aPriority ); - CleanupStack::PushL( self ); - self->ConstructL(); - return self; - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::NewL -// Two-phased constructor. -// ----------------------------------------------------------------------------- -// -CNssVASDatabase* CNssVASDatabase::NewL( TInt aPriority ) - { - CNssVASDatabase* self = NewLC( aPriority ); - CleanupStack::Pop( self ); - return self; - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::ConstructL -// Symbian 2nd phase constructor can leave. -// ----------------------------------------------------------------------------- -// -void CNssVASDatabase::ConstructL() - { - iContextBuilder = CNssContextBuilder::NewL(); - iSpeechItemBuilder = CNssSpeechItemBuilder::NewL( this ); - iVasDb = CNssVasDb::NewL( *iContextBuilder, - *iSpeechItemBuilder); - iTNssTagRefList = new(ELeave) TNssTagReferenceListArray( KTagRefListGranularity ); - } - -//------------------------------------------ -// CNssVASDatabase::~CNssVASDatabase -// Destructor -//------------------------------------------ -CNssVASDatabase::~CNssVASDatabase() - { - RUBY_DEBUG0( "CNssVASDatabase::~CNssVASDatabase" ); - - if ( iGrammarIdRuleIdPackage ) - { - delete iGrammarIdRuleIdPackage; - } - - if ( iSpeechItemBuilder ) - { - delete iSpeechItemBuilder; - } - - if ( iVASDBEventMonitor ) - { - delete iVASDBEventMonitor; - } - - if ( iTNssTagRefList ) - { - iTNssTagRefList->Reset(); - delete iTNssTagRefList; - } - - if ( iVasDb ) - { - delete iVasDb; - } - if ( iContextBuilder ) - { - delete iContextBuilder; - } - } - -// ----------------------------------------------------------------------------- -// RNssVasDbSession::OpenDatabase -// Method to open the database. -// ----------------------------------------------------------------------------- -// -TInt CNssVASDatabase::OpenDatabase() - { - if ( iConnected ) - { - iConnected++; - return KErrDbAlreadyOpen; - } - - TRAPD( error, iVasDb->OpenDatabaseL() ); - - if ( error == KErrNone ) - { - iConnected++; - } - - return error; - } - -// ----------------------------------------------------------------------------- -// RNssVasDbSession::CloseDatabase -// Method to close the database. -// ----------------------------------------------------------------------------- -// -void CNssVASDatabase::CloseDatabase() - { - // Check if already closed (or never opened) - if ( iConnected > 0 ) - { - // Some other VAS instance in the same thread may be using the database. - iConnected--; - - // If not, close it. - if ( iConnected <= 0 ) - { - iVasDb->CloseDatabase(); - } - } - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::CreateDb -// Method to create vas database -// ----------------------------------------------------------------------------- -TInt CNssVASDatabase::CreateDb() - { - TRAPD( error, iVasDb->CreateDatabaseL() ); - - return error; - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::StartMonitoringDatabaseL -// Method to start monitoring changes to vas database -// ----------------------------------------------------------------------------- -void CNssVASDatabase::StartMonitoringDatabaseL() - { - //iVASDBEventMonitor = CNssVASDBEventMonitor::NewL(); - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::AddObserverL -// Method to add an observer of the vas database -// ----------------------------------------------------------------------------- -void CNssVASDatabase::AddObserverL( MNssVASDatabaseObserver* /*aObserver*/ ) - { - User::Leave( KErrNotSupported ); - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::RemoveObserverL -// Method to remove an observer of the vas database -// ----------------------------------------------------------------------------- -TInt CNssVASDatabase::RemoveObserver( MNssVASDatabaseObserver* /*aObserver*/ ) - { - return KErrNotFound; - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::ModelBankAndLexiconExist -// Method to determine if modelbank and lexicon ids exist. -// ----------------------------------------------------------------------------- -TBool CNssVASDatabase::ModelBankAndLexiconExist( TUint32 &aModelBankId, TUint32 &aLexiconId ) - { - TBool ret = EFalse; - - TRAPD( err, ret = iVasDb->GetModelBankIdLexiconIdL( aModelBankId, aLexiconId ) ); - - // To remove warning - if ( err != KErrNone ) - { - } - - return ret; - } - -//----------------------------------------------------------------------------- -//CNssVasDatabase::TagExist -//Method to determine if tags exist for a context. -//----------------------------------------------------------------------------- -TBool CNssVASDatabase::TagExist( CNssContext* aContext ) - { - TBool ret( EFalse ); - - if ( aContext->ContextId() != KNssVASDbDefaultValue ) - { - TRAPD( error, ret = iVasDb->TagExistL( aContext->ContextId() ) ); - REACT( error, ret = EFalse ); - } - else - { - RUBY_DEBUG0( "CNssVASDatabase::TagExist ERROR:Unsaved context" ); - } - - return ret; - } -//----------------------------------------------------------------------------- -//CNssVasDatabase::TagCount -//Method to get the number of tags for a context. -//----------------------------------------------------------------------------- -TInt CNssVASDatabase::TagCount( CNssContext* aContext ) - { - TInt ret( KErrNotFound ); - - if ( aContext->ContextId() != KNssVASDbDefaultValue ) - { - TRAPD( error, ret = iVasDb->TagCountL( aContext->ContextId() ) ); - - // To remove warning - if ( error != KErrNone ) - { - } - } - - return ret; - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::SaveContext -// Method to save a context -// ----------------------------------------------------------------------------- -TInt CNssVASDatabase::SaveContext( CNssContext* aContext, TInt& aContextId ) - { - TInt ret = KErrNone; - - aContextId = aContext->ContextId(); - - if ( aContext->ContextId() == KNssVASDbDefaultValue ) - { - TRAP( ret, iVasDb->SaveContextL( *aContext, aContextId ) ); - } - else - { - TRAP( ret, iVasDb->UpdateContextL( *aContext ) ); - } - - return ret; - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::SaveContextClientData -// Method to save the clientdata of a context -// ----------------------------------------------------------------------------- -TInt CNssVASDatabase::SaveContextClientData( CNssContext* aContext ) - { - TRAPD( error, iVasDb->UpdateContextClientDataL( *aContext ) ); - return error; - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::GetContext -// Method to get a context by name -// ----------------------------------------------------------------------------- -CArrayPtrFlat* CNssVASDatabase::GetContext( const TDesC& aName ) - { - CArrayPtrFlat* result = NULL; - - TRAPD( error, result = iVasDb->GetContextByNameL( aName ) ); - - // To remove warning - if ( error != KErrNone ) - { - } - - return result; - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::GetGlobalContexts -// Method to get all global contexts -// ----------------------------------------------------------------------------- -CArrayPtrFlat* CNssVASDatabase::GetGlobalContexts() - { - CArrayPtrFlat* result = NULL; - - TRAPD( error, result = iVasDb->GetGlobalContexts() ); - - // To remove warning - if ( error != KErrNone ) - { - } - - return( result ); - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::GetAllContexts -// Method to get all contexts -// ----------------------------------------------------------------------------- -// -CArrayPtrFlat* CNssVASDatabase::GetAllContexts() - { - CArrayPtrFlat* result = NULL; - - TRAPD( error, result = iVasDb->GetAllContexts() ); - - // To remove warning - if ( error != KErrNone ) - { - } - - return result; - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::SaveTag -// Method to save a tag -// ----------------------------------------------------------------------------- -TInt CNssVASDatabase::SaveTag( CNssTag* aTag, TInt& aNewId ) - { - TInt ret = KErrNone; - - if ( aTag->TagId() == KNssVASDbDefaultValue ) - { - TRAP( ret, iVasDb->SaveTagL( *aTag, aNewId ) ); - } - else - { - // Used to call RNssVasDbSession::UpdateTag - // which returned KErrNotSupported - ret = KErrNotSupported; - } - - return ret; - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::DeleteTag -// Method to delete several tags -// ----------------------------------------------------------------------------- -// -TInt CNssVASDatabase::DeleteTags( const RArray& aTagIdArray ) - { - TRAPD( error, iVasDb->DeleteTagsL( aTagIdArray ) ); - - return error; - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::SaveTag -// Method to save several tags -// ----------------------------------------------------------------------------- -// -TInt CNssVASDatabase::SaveTags( RPointerArray* aTagArray ) - { - RUBY_DEBUG0("CNssVASDatabase::SaveTags"); - - RArray tagIdArray; - - ASSERT( aTagArray ); - - TInt arrayCount = aTagArray ? aTagArray->Count() : 0; - if( arrayCount == 0 ) - { - arrayCount++; - } - - CArrayPtrFlat* ctagArray = new CArrayPtrFlat( arrayCount ); - - for( TInt i( 0 ); i < aTagArray->Count(); i++ ) - { - TRAPD( error, ctagArray->AppendL( (*aTagArray)[i] ) ); - if( error != KErrNone ) - { - delete ctagArray; - return error; - } - } - - TRAPD( error, iVasDb->SaveTagsL( ctagArray, tagIdArray ) ); - - if( error == KErrNone ) - { - RUBY_ASSERT_DEBUG( ctagArray->Count() == tagIdArray.Count(), - User::Panic( KVasDatabasePanic, __LINE__ ) ); - - for ( TInt k( 0 ); k < ctagArray->Count(); k++ ) - { - (*aTagArray)[k]->SetTagId( tagIdArray[k] ); - } - } - else - { - // iSess->SaveTags failed - /** @todo Higher level handler should display some "No memory" label if possible - Or should we do it here? */ - } - - delete ctagArray; - - tagIdArray.Close(); - - return error; - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::GetTag -// Method to get a tag by name -// ----------------------------------------------------------------------------- -MNssTagListArray* CNssVASDatabase::GetTag( const TDesC& aName ) - { - CArrayPtrFlat* result = NULL; - - TRAPD( error, result = iVasDb->GetTagL( aName ) ); - - // To remove warning - if ( error != KErrNone ) - { - } - - CArrayPtrFlat* array = NULL; - - TInt arrayCount = result ? result->Count() : 0; - if( arrayCount == 0 ) - { - arrayCount++; - } - - array = new CArrayPtrFlat( arrayCount ); - if( !array ) - { - return NULL; - } - - if( result ) - { - for( TInt i( 0 ); i < result->Count(); i++ ) - { - TRAP( error, array->AppendL( result->At( i ) ) ); - if( error != KErrNone ) - { - return NULL; - } - } - - result->Reset(); - delete result; - } - - return array; - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::GetTag -// Method to get a tag by context and name -// Not fully implemented. -// ----------------------------------------------------------------------------- - -MNssTagListArray* CNssVASDatabase::GetTag(CNssContext* /*aContext*/,const TDesC& aName) - { - return GetTag(aName); - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::GetTag -// Method to get a tag by context. -// ----------------------------------------------------------------------------- -// -CArrayPtrFlat* CNssVASDatabase::GetTag( CNssContext* aContext ) - { - CArrayPtrFlat* result = NULL; - - TRAPD( error, result = iVasDb->GetTagL( *aContext ) ); - - // To remove warning - if ( error != KErrNone ) - { - } - - CArrayPtrFlat* array = NULL; - - if( result ) - { - array = new CArrayPtrFlat( result->Count() ); - if( !array ) - { - return NULL; - } - - for( TInt i( 0 ); i < result->Count(); i++ ) - { - CNssTag* tag = result->At( i ); - TRAP( error, array->AppendL( result->At( i ) ) ); - if( error != KErrNone ) - { - return NULL; - } - } - - result->Reset(); - delete result; - } - - return array; - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::GetTag -// Method to get a tag by grammarid and ruleid. -// ----------------------------------------------------------------------------- -// -MNssTagListArray* CNssVASDatabase::GetTag( const TInt aGrammarID, const TInt aRuleID ) - { - iTNssGrammarIdRuleId.iGrammarId = aGrammarID; - iTNssGrammarIdRuleId.iRuleId = aRuleID; - - CArrayPtrFlat* result = NULL; - - TRAPD( error, result = iVasDb->GetTagL( iTNssGrammarIdRuleId ) ); - - // To remove warning - if ( error != KErrNone ) - { - } - - CArrayPtrFlat* array = NULL; - - TInt arrayCount = result ? result->Count() : 0; - if( arrayCount == 0 ) - { - arrayCount++; - } - - array = new CArrayPtrFlat( arrayCount ); - if( !array ) - { - return NULL; - } - - if( result ) - { - for( TInt i( 0 ); i < result->Count(); i++ ) - { - TRAP( error, array->AppendL( result->At( i ) ) ); - if( error != KErrNone ) - { - return NULL; - } - } - - result->Reset(); - delete result; - } - - return array; - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::GetTags -// Method to get tags by their grammarid and ruleid. -// ----------------------------------------------------------------------------- -// -MNssTagListArray* CNssVASDatabase::GetTags( TNssGrammarIdRuleIdListArray& aGrammarIdRuleIds) - { - CArrayPtrFlat* result = NULL; - - TRAPD( error, result = iVasDb->GetTagsL( aGrammarIdRuleIds ) ); - - // To remove warning - if ( error != KErrNone ) - { - } - - CArrayPtrFlat* array = NULL; - - TInt arrayCount = result ? result->Count() : 0; - if( arrayCount == 0 ) - { - arrayCount++; - } - - array = new CArrayPtrFlat( arrayCount ); - if( !array ) - { - return NULL; - } - - if( result ) - { - for( TInt i( 0 ); i < result->Count(); i++ ) - { - TRAP( error, array->AppendL( result->At( i ) ) ); - if( error != KErrNone ) - { - return NULL; - } - } - - result->Reset(); - delete result; - } - - return array; - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::GetTag -// Method to get a tag by tagid -// ----------------------------------------------------------------------------- -MNssTagListArray* CNssVASDatabase::GetTag( const TUint32 aTagId ) - { - CArrayPtrFlat* result = NULL; - - TRAPD( error, result = iVasDb->GetTagL( aTagId ) ); - - // To remove warning - if ( error != KErrNone ) - { - } - - CArrayPtrFlat* array = NULL; - - TInt arrayCount = result ? result->Count() : 0; - if( arrayCount == 0 ) - { - arrayCount++; - } - - array = new CArrayPtrFlat( arrayCount ); - if( !array ) - { - return NULL; - } - - if( result ) - { - for( TInt i( 0 ); i < result->Count(); i++ ) - { - TRAP( error, array->AppendL( result->At( i ) ) ); - if( error != KErrNone ) - { - return NULL; - } - } - - result->Reset(); - delete result; - } - - return array; - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::GetTagList -// Method to get tags by rrd int position. -// ----------------------------------------------------------------------------- -MNssTagListArray* CNssVASDatabase::GetTagList( CNssContext* aContext, TInt aNum, TInt aPosition ) - { - CArrayPtrFlat* result = NULL; - - TRAPD( error, result = iVasDb->GetTagL( aContext->ContextId(), - aNum, aPosition ) ); - - // To remove warning - if ( error != KErrNone ) - { - } - - CArrayPtrFlat* array = NULL; - - TInt arrayCount = result ? result->Count() : 0; - if( arrayCount == 0 ) - { - arrayCount++; - } - - array = new CArrayPtrFlat( arrayCount ); - if( !array ) - { - return NULL; - } - - if( result ) - { - for( TInt i( 0 ); i < result->Count(); i++ ) - { - TRAP( error, array->AppendL( result->At( i ) ) ); - if( error != KErrNone ) - { - return NULL; - } - } - - result->Reset(); - delete result; - } - - return array; - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::GetTagList -// Method to get tags by rrd text value and position. -// ----------------------------------------------------------------------------- -MNssTagListArray* CNssVASDatabase::GetTagList( CNssContext* aContext, - TDesC& aText, TInt aPosition ) - { - CArrayPtrFlat* result = NULL; - - TRAPD( error, result = iVasDb->GetTagL( aContext->ContextId(), - aText, aPosition ) ); - - // To remove warning - if ( error != KErrNone ) - { - } - - CArrayPtrFlat* array = NULL; - - TInt arrayCount = result ? result->Count() : 0; - if( arrayCount == 0 ) - { - arrayCount++; - } - - array = new CArrayPtrFlat( arrayCount ); - if( !array ) - { - return NULL; - } - - if( result ) - { - for( TInt i( 0 ); i < result->Count(); i++ ) - { - TRAP( error, array->AppendL( result->At( i ) ) ); - if( error != KErrNone ) - { - return NULL; - } - } - - result->Reset(); - delete result; - } - - return array; - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::DeleteTag -// Method to delete a tag. -// ----------------------------------------------------------------------------- -TInt CNssVASDatabase::DeleteTag( CNssTag *aTag ) - { - TInt ret( KErrNotFound ); - - if ( aTag->TagId() != KNssVASDbDefaultValue ) - { - ret = DeleteTag( aTag->TagId() ); - } - - return ret; - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::DeleteTag -// Method to delete a tag by name. -// ----------------------------------------------------------------------------- -TInt CNssVASDatabase::DeleteTag( const TDesC& aName ) - { - TRAPD( error, iVasDb->DeleteTagL( aName ) ); - - return( error ); - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::DeleteTag -// Method to delete a tag by key/id. -// ----------------------------------------------------------------------------- -TInt CNssVASDatabase::DeleteTag( const TUint32 aTagId ) - { - TRAPD( error, iVasDb->DeleteTagL( aTagId ) ); - - return( error ); - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::DeleteContext -// Method to delete context. -// ----------------------------------------------------------------------------- -TInt CNssVASDatabase::DeleteContext( CNssContext* aContext ) - { - return( DeleteContext( aContext->ContextName() ) ); - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::DeleteContext -// Method to delete context by name. -// ----------------------------------------------------------------------------- -TInt CNssVASDatabase::DeleteContext( const TDesC& aName ) - { - TRAPD( error, iVasDb->DeleteContextL( aName ) ); - - return( error ); - } - -// ----------------------------------------------------------------------------- -// CNssVasDatabase::DeleteContext -// Method to all tag references of a context. -// ----------------------------------------------------------------------------- -// -CArrayPtrFlat* CNssVASDatabase::GetTagReferenceList( CNssContext* aContext ) - { - TNssTagReferenceListArray* ttagRefArray = NULL; - - TRAPD( error, - ttagRefArray = iVasDb->GetTagReferenceListL( aContext->ContextId() ) ); - - // To remove warning - if ( error != KErrNone ) - { - } - - if ( !ttagRefArray ) - { - return( NULL ); - } - - // Convert TNssTagReferences to CNssTagReferences - CArrayPtrFlat* result = - new CArrayPtrFlat( KFetchedTagRefListGranularity ); - - if ( !result ) - { - delete ttagRefArray; - ttagRefArray = 0; - return( NULL ); - } - - TRAPD( err, ConvertTNssTagRefToMNssTagRefL( ttagRefArray, result ) ); - - delete ttagRefArray; - ttagRefArray = 0; - - if ( err != KErrNone ) - { - result->ResetAndDestroy(); - delete result; - result = 0; - } - - return( result ); - } - - -// ------------------------ -// Private Utility Methods -// ----------------------- - -// ----------------------------------------------------------------------------- -// CNssVASDatabase::ConvertTNssTagRefToMNssTagRefL -// -// ----------------------------------------------------------------------------- -// -void CNssVASDatabase::ConvertTNssTagRefToMNssTagRefL( - TNssTagReferenceListArray* aTNssTagRef, - CArrayPtrFlat* aCNssTagRef ) - { - CNssTagReference* tagRefPtr=NULL; - - for ( TInt i( 0 ); i < aTNssTagRef->Count(); i++ ) - { - tagRefPtr = new(ELeave)CNssTagReference(); - CleanupStack::PushL( tagRefPtr ); - tagRefPtr->SetTagNameL( (*aTNssTagRef)[i].iTagName ); - tagRefPtr->SetTagId( (*aTNssTagRef)[i].iTagId ); - aCNssTagRef->AppendL( tagRefPtr ); - CleanupStack::Pop( tagRefPtr ); - } - } - -// ----------------------------------------------------------------------------- -// CNssVASDatabase::ConvertDBError -// -// ----------------------------------------------------------------------------- -// -MNssVASDatabaseClient::TNssVASDBClientReturnCode CNssVASDatabase::ConvertDBError( TInt aError ) - { - MNssVASDatabaseClient::TNssVASDBClientReturnCode failcode = - MNssVASDatabaseClient::EVASDBFailure; - - switch ( aError ) - { - case KErrNone: - failcode = MNssVASDatabaseClient::EVASDBSuccess; - break; - case KErrNotFound: - failcode = MNssVASDatabaseClient::EVASDBItemNotFound; - break; - case KErrNoMemory: - failcode = MNssVASDatabaseClient::EVASDBNoMemory; - break; - case KErrDiskFull: - failcode = MNssVASDatabaseClient::EVASDBDiskFull; - break; - default: - failcode = MNssVASDatabaseClient::EVASDBFailure;//just in case - break; - } - - return failcode; - } - -// ----------------------------------------------------------------------------- -// CNssVASDatabase::GetDefaultModelBankId -// -// ----------------------------------------------------------------------------- -// -TInt CNssVASDatabase::GetDefaultModelBankId( TUint32& aId ) - { - TRAPD( error, iVasDb->GetDefaultModelBankIdL( aId ) ); - - return error; - } - -// ----------------------------------------------------------------------------- -// CNssVASDatabase::ResetModelBank -// -// ----------------------------------------------------------------------------- -// -TInt CNssVASDatabase::ResetModelBank( TUint32 aNewId ) - { - TRAPD( error, iVasDb->ResetModelBankL( aNewId ) ); - - return error; - } - -// ----------------------------------------------------------------------------- -// CNssVASDatabase::UpdateTagRuleIDs -// -// ----------------------------------------------------------------------------- -// -TInt CNssVASDatabase::UpdateTagRuleIDs( - const RArray& aRetrainedTags ) - { - TRAPD( error, iVasDb->UpdateTagRuleIDsL( aRetrainedTags ) ); - - return( error ); - }