diff -r 641f389e9157 -r a71299154b21 authenticationservices/authenticationserver/source/server/authdb.h --- a/authenticationservices/authenticationserver/source/server/authdb.h Tue Aug 31 17:00:08 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,159 +0,0 @@ -/* -* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of the License "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: -* CAuthDb Authentication server data store declaration -* -*/ - - -/** - @file - @released - @internalComponent -*/ - -#ifndef AUTHDB_H -#define AUTHDB_H - -#include -#include "authserver/authtypes.h" -#include "authserver/idandstring.h" - -namespace AuthServer -{ - -class CTransientKeyInfo; - -NONSHARABLE_CLASS(CAuthDb2) : public CBase - { -public: - static CAuthDb2* NewL(RFs& aFs); - static CAuthDb2* NewLC(RFs& aFs); - virtual ~CAuthDb2(); - - // identities - TInt NumIdentitiesL(); - void AddIdentityWithTrainedPluginL( - TIdentityId aIdentityId, const TDesC& aDesc, - const CTransientKeyInfo& aTransKeyInfo); - void AddIdentityL(TIdentityId aIdentityId, const TDesC& aDesc); - void RemoveIdentityL(TIdentityId aIdentityId); - void IdentitiesL(RArray& aResults); - HBufC* DescriptionL(TIdentityId aIdentityId); - void SetDescriptionL(TIdentityId aIdentityId, const TDesC& aDesc); - void IdentitiesWithDescriptionL(RIdAndStringArray& aList); - TIdentityId DefaultIdentityL(); - // plugins - TInt NumPluginsL(); - TInt NumTrainedPluginsL(TIdentityId aId); - // Returns list of plugins that are trained for the given identity - void TrainedPluginsListL(TIdentityId aIdentityId, RArray& aTrainedPlugins); - TAuthTrainingStatus PluginStatusL(TPluginId aPluginId); - - // preferences - void SetPreferredPluginL(TAuthPluginType aPluginType, TPluginId aPluginId); - void ClearPreferredPluginL(TAuthPluginType aPluginType); - TPluginId PreferredPluginL(TAuthPluginType aPluginType); - - // trained plugins - void SetTrainedPluginL( - TIdentityId aIdentityId, TPluginId aPluginId, const CTransientKeyInfo& aTransKeyInfo); - void RemoveTrainedPluginL(TIdentityId aIdentityId, TPluginId aPluginId); - CTransientKeyInfo* KeyInfoL(TIdentityId aIdentity, TPluginId aPluginId); - - void CompactIfRequired(); - void CloseDbFile(); - TInt OpenDbFileL(RFs& aFs, const TFileName& aDbName); - -private: - void ConstructL(RFs& aFs); - - void FindExistingIdentityLC(RDbTable& aTable, RDbRowSet::TAccess aAccess, TIdentityId aIdentityId); - TBool FindIdentityLC(RDbTable& aTable, RDbRowSet::TAccess aAccess, TIdentityId aIdentityId); - - TBool FindPrefLC(RDbTable& aTable, RDbRowSet::TAccess aAccess, TAuthPluginType aPluginType); - - TBool FindTrainedPluginLC( - RDbTable& aTable, RDbRowSet::TAccess aAccess, - TIdentityId aIdentityId, TPluginId aPluginId); - - TBool OpenTableAndNavigateLC( - RDbTable& aTable, const TDesC& aTableName, RDbRowSet::TAccess aAccess, - const TDesC& aIndexName, TUint aKey); - void OpenTableLC( - RDbTable& aTable, const TDesC& aTableName, - RDbRowSet::TAccess aAccess, const TDesC& aIndexName); - void CheckIdentityRegisteredL(TUint aIdentityId); - - void CheckItemRegisteredL( - const TDesC& aTableName, const TDesC& aIndexName, - TUint aValue, TInt aNotFoundError); - - - -private: - /** - * The database file itself, used to persist identities - * when the server is not in use. - */ - RDbNamedDatabase iAuthDbFile; - - /** - * Keep track of whether the database is open or not. - */ - TBool iIsDbOpen; - - }; - - -// databases structure - -_LIT(KDbName, "!:\\private\\102740FC\\auth.db"); - -/** Identities table name. */ -_LIT(KIdentitiesTableName, "Identities"); -/** Identities index number */ -_LIT(KIdentitiesIndex, "identityIdx"); -/** Identities index number.- Based on order of insertion */ -_LIT(KIdIndexNum, "idIndex"); -/** Identity column number in Identities table. */ -const TInt KIdentitiesIdentityIdCol = 2; -/** Description column number in Identities table. */ -const TInt KIdentitiesDescCol = 3; - -/** Prefs table name. */ -_LIT(KPrefsTableName, "Prefs"); -/** Prefs index name. */ -_LIT(KPrefsTypeIndex, "typeIdx"); - -/** Type column number in Prefs table. */ -const TInt KPrefsTypeCol = 1; -/** PluginId column number is Prefs table. */ -const TInt KPrefsIdCol = 2; - -/** TrainedPlugins table name. */ -_LIT(KTpTableName, "TrainedPlugins"); -/** TrainedPlugins index name. */ -_LIT(KTpIndex, "identityPluginIdx"); - -/** IdentityId column number in TrainedPlugins table. */ -const TInt KTpIdentityIdCol = 1; -/** PluginId column number in TrainedPlugins table. */ -const TInt KTpPluginIdCol = 2; -/** TransientKey column number in TrainedPlugins table. */ -const TInt KTpTransientKeyCol = 3; - -} // namespace AuthServer - -#endif // AUTHDB_H