authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinplugindb.h
--- a/authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinplugindb.h Thu Apr 01 00:24:41 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,160 +0,0 @@
-/*
-* Copyright (c) 2006-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:
-* CPinPluginDB pin plugin data store declaration
-*
-*/
-
-
-/**
- @file
-*/
-
-#ifndef PIN_PLUGINDB_H
-#define PIN_PLUGINDB_H
-
-#include <s32file.h>
-#include <authserver/authtypes.h>
-
-// PinPlugin DB
-class CPinPluginDB : public CBase
- {
-public:
- /** static methods to constuct the object of the CPinPluginDB */
- static CPinPluginDB* NewL();
- static CPinPluginDB* NewLC();
-
- /** Destructor */
- virtual ~CPinPluginDB();
-
- /**
- Add Id and KeyHash to the store if the id is not exist in the
- store and pin is not used by any other id.
-
- @param aId The Id to be Trained
- @param aIdentityKeyHash The pin used to Train the Id
- @leave It leaves with KErrAlreadyExists if the id is
- already exist or pin is used by other identity.
- */
- void AddPinL(const AuthServer::TIdentityId& aId, const TDesC8& aIdentityKeyHash);
-
- /**
- Update the Id and Pin in the store With the new Pin, if the id exists.
-
- @param aId The Id to be ReTrained
- @param aIdentityKeyHash The pin used to ReTrain the Id
- @leave It leaves with KErrNotFound if the id is
- not exist.
- */
- void UpdatePinL(const AuthServer::TIdentityId& aId, const TDesC8& aIdentityKeyHash);
-
- /**
- Remove the Id from the store, if the Id exists
-
- @param aId The Id to be ReTrained
- @leave It leaves with KErrNotFound if the id is
- not exist.
- */
- void RemovePinL(const AuthServer::TIdentityId& aId);
-
- /**
- Searches the pinvalue in the store
-
- @param aIdentityKeyHash The pinvalue to be search for
- @return It return the IdentityId for the pin, if search
- is success else return KUnknownIdentity.
- */
- AuthServer::TIdentityId IdFromPin(const TDesC8& aIdentityKeyHash) const;
-
- /**
- Searches the Id in the store.
-
- @param aId The Id to be search for.
- @return It return the index of the Id if the search
- is success else return KErrNotFound.
- */
- TInt IdIndex(const AuthServer::TIdentityId& aId) const ;
-
- /**
- Verifies the pin is unique.
-
- @param aIdentityKeyHash The pinvalue to be search for
- @return return ETrue if the pin is not used by any of
- the identity else EFalse.
- */
- TBool IsUniquePin(const TDesC8& aIdentityKeyHash) const;
-
-private:
- CPinPluginDB();
- void ConstructL();
-
-private:
- /**
- Create and open a New Store If it is first time
- else Open the existing store.
- */
- void OpenStoreL();
-
- /**
- Open the existing store
- @param aFile The name of the file to open
- */
- void OpenStoreInFileL(const TDesC& aFile);
-
- /**
- Create the new store
- @param aFile The name of the file to create
- */
- void CreateStoreInFileL(const TDesC& aFile);
-
- /**
- Write the In memory represtation to the store.
- */
- void WriteIdKeysToStoreL();
-
- /**
- Read the Id and keys from the store
- */
- void ReadIdKeysFromStoreL();
-
-private:
- /**
- Methods dealing with atomic updates to key data file
- cleanup item that reverts the store.
- */
- static void RevertStore(TAny* aStore);
- /**
- Attempt to compact the store - it doesn't matter if these calls leave, it
- will only mean that the store takes up more space than necessary.
- */
- void CompactStore();
-private:
- RFile iFile;
- RFs iFs;
- /** FileStore Object */
- CPermanentFileStore* iFileStore;
- /** Root Stream that constains identityStreamId */
- TStreamId iRootStreamId;
- /** Identity Stream that contains dataStreamId and count of idHashes stored in the DB */
- TStreamId iIdentityStreamId;
- /** DB file Name */
- TFileName iPluginDBName;
-private:
- /** In memory representation of id in the store */
- RArray<AuthServer::TIdentityId> iId;
- /** In memory representation of hash in the store */
- RPointerArray<HBufC8> iIdKeyHash;
- };
-
-#endif /* PIN_PLUGINDB_H */