CPermanentFileStore Class Reference

#include <s32file.h>

class CPermanentFileStore : public CFileStore

Inherits from

Public Member Functions
CPermanentFileStore(RFile &)
CPermanentFileStore(RFileBuf &, const TUidType &)
~CPermanentFileStore()
CPermanentFileStore *CreateL(RFs &, const TDesC &, TUint)
CPermanentFileStore *CreateLC(RFs &, const TDesC &, TUint)
CPermanentFileStore *FromL(RFile &)
CPermanentFileStore *FromLC(RFile &)
virtual IMPORT_C TUidLayout()
IMPORT_C voidMarshalL()
CPermanentFileStore *NewL(RFile &)
CPermanentFileStore *NewLC(RFile &)
CPermanentFileStore *OpenL(RFs &, const TDesC &, TUint)
CPermanentFileStore *OpenLC(RFs &, const TDesC &, TUint)
CPermanentFileStore *ReplaceL(RFs &, const TDesC &, TUint)
CPermanentFileStore *ReplaceLC(RFs &, const TDesC &, TUint)
CPermanentFileStore *TempL(RFs &, const TDesC &, TFileName &, TUint)
CPermanentFileStore *TempLC(RFs &, const TDesC &, TFileName &, TUint)
Protected Member Functions
virtual IMPORT_C MStreamBuf *DoCreateL(TStreamId &)
virtual IMPORT_C MStreamBuf *DoReadL(TStreamId)
virtual IMPORT_C MStreamBuf *DoReplaceL(TStreamId)
virtual IMPORT_C MStreamBuf *DoWriteL(TStreamId)
Inherited Attributes
CPersistentStore::iRoot
Inherited Functions
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
CFileStore::CFileStore(RFile &)
CFileStore::CFileStore(RFileBuf &,const TUidType &)
CFileStore::ChangedL()
CFileStore::CreateL(RFs &,const TDesC &,TUint,TNewFunction)
CFileStore::CreateLC(RFs &,const TDesC &,TUint,TNewFunction)
CFileStore::Destruct()
CFileStore::Detach()
CFileStore::File()const
CFileStore::FromL(RFile &,TFileStoreFactoryFunction)
CFileStore::FromL(RFile &,const TFileStoreFactoryFunction)
CFileStore::FromLC(RFile &,TFileStoreFactoryFunction)
CFileStore::FromLC(RFile &,const TFileStoreFactoryFunction)
CFileStore::Host()const
CFileStore::IsHost(const MStreamBuf *)const
CFileStore::NewL(RFile &,TNewFunction)
CFileStore::NewLC(RFile &,TNewFunction)
CFileStore::OpenL(RFs &,const TDesC &,TUint,TFileStoreFactoryFunction)
CFileStore::OpenL(RFs &,const TDesC &,TUint,const TFileStoreFactoryFunction)
CFileStore::OpenLC(RFs &,const TDesC &,TUint,TFileStoreFactoryFunction)
CFileStore::OpenLC(RFs &,const TDesC &,TUint,const TFileStoreFactoryFunction)
CFileStore::Reattach(RFile &)
CFileStore::RefreshL()
CFileStore::ReplaceL(RFs &,const TDesC &,TUint,TNewFunction)
CFileStore::ReplaceLC(RFs &,const TDesC &,TUint,TNewFunction)
CFileStore::Reset()
CFileStore::Reset(TInt)
CFileStore::SetSizeL(TInt)
CFileStore::SetTypeL(const TUidType &)
CFileStore::SynchL()
CFileStore::TempL(RFs &,const TDesC &,TFileName &,TUint,TNewFunction)
CFileStore::TempLC(RFs &,const TDesC &,TFileName &,TUint,TNewFunction)
CFileStore::Type()const
CFileStore::~CFileStore()
CPersistentStore::CPersistentStore()
CPersistentStore::Root()const
CPersistentStore::SetRootL(TStreamId)
CStreamStore::Commit()
CStreamStore::CommitL()
CStreamStore::CompactL()
CStreamStore::Delete(TStreamId)
CStreamStore::DeleteL(TStreamId)
CStreamStore::ExtendL()
CStreamStore::ReclaimL()
CStreamStore::Revert()
CStreamStore::RevertL()
Inherited Type Definitions
CFileStore::TNewFunction

Detailed Description

Permanent file store.

This type of store supports full manipulation of store contents. Existing streams within this type of store can be changed.

Constructor & Destructor Documentation

CPermanentFileStore ( RFile & )

IMPORT_CCPermanentFileStore(RFile &aFile)

CPermanentFileStore ( RFileBuf &, const TUidType & )

IMPORT_CCPermanentFileStore(RFileBuf &aBuf,
const TUidType &aType
)

~CPermanentFileStore ( )

IMPORT_C~CPermanentFileStore()

Frees resources owned by the object, prior to its destruction.

Member Function Documentation

CreateL ( RFs &, const TDesC &, TUint )

CPermanentFileStore *CreateL(RFs &aFs,
const TDesC &aName,
TUintaFileMode
)[static, inline]

Creates a new file and constructs a new permanent file store object to be associated with this file.

See also: TFileMode

ParameterDescription
aFsHandle to a file server session.
aNameThe full path name of the new file. A file with this name must not already exist, otherwise the function leaves.
aFileModeThe mode in which the new file is to be accessed. This mode is defined by the TFileMode type.

Returns: A pointer to the new permanent file store object.

CreateLC ( RFs &, const TDesC &, TUint )

CPermanentFileStore *CreateLC(RFs &aFs,
const TDesC &aName,
TUintaFileMode
)[static, inline]

Creates a new file and constructs a new permanent file store object to be associated with this file, and places the pointer onto the cleanup stack.

See also: TFileMode

ParameterDescription
aFsHandle to a file server session.
aNameThe full path name of the new file. A file with this name must not already exist, otherwise the function leaves.
aFileModeThe mode in which the new file is to be accessed. This mode is defined by the TFileMode type.

Returns: A pointer to the new permanent file store object.

DoCreateL ( TStreamId & )

IMPORT_C MStreamBuf *DoCreateL(TStreamId &anId)[protected, virtual]

Creates a new stream in the store. The function gets the allocated stream id in the anId parameter. A stream buffer for the stream should be returned, ready to write into the new stream. This provides the implementation for the RStoreWriteStream::CreateL() functions.

ParameterDescription
anIdOn return, contains the allocated stream id.

Returns: The stream buffer to be written to.

DoReadL ( TStreamId )

IMPORT_C MStreamBuf *DoReadL(TStreamIdanId)const [protected, virtual]

Opens the requested stream for reading. The function should return a stream buffer positioned at the beginning of this stream.

This function is called by the OpenL() and OpenLC() member functions of RStoreReadStream.

See also: RStoreReadStream::OpenL() RStoreReadStream::OpenLC()

ParameterDescription
anIdThe stream to be read.

Returns: A stream buffer positioned at the beginning of the stream to be read.

DoReplaceL ( TStreamId )

IMPORT_C MStreamBuf *DoReplaceL(TStreamIdanId)[protected, virtual]

DoWriteL ( TStreamId )

IMPORT_C MStreamBuf *DoWriteL(TStreamIdanId)[protected, virtual]

FromL ( RFile & )

CPermanentFileStore *FromL(RFile &aFile)[static, inline]

Reimplemented from CFileStore::FromL(RFile &)

Constructs a permanent file store object from an already opened file. It is strongly recommended to set EFileWriteDirectIO bit when opening the file. This is because that when the file server write caching is enabled, the order of file write operations is not guaranteed. This could cause data inconsistency in some circumstances, for example, when the power is lost in the middle of database transaction. Therefore, the file write caching should be switched off to maintain integrity.

The file must already be open before calling this function.

Note that ownership of the file passes to the store. The referenced RFile is cleared and is no longer valid.

ParameterDescription
aFileA reference to the opened file.

Returns: A pointer to the new permanent file store object.

FromLC ( RFile & )

CPermanentFileStore *FromLC(RFile &aFile)[static, inline]

Reimplemented from CFileStore::FromLC(RFile &)

Constructs a permanent file store object from an already opened file, and places the pointer onto the cleanup stack.

The file must already be open before calling this function. It is strongly recommended to set EFileWriteDirectIO bit when opening the file. This is because that when the file server write caching is enabled, the order of file write operations is not guaranteed. This could cause data inconsistency in some circumstances, for example, when the power is lost in the middle of database transaction. Therefore, the file write caching should be switched off to maintain integrity.

Note that ownership of the file passes to the store. The referenced RFile is cleared and is no longer valid.

ParameterDescription
aFileA reference to the opened file.

Returns: A pointer to the new permanent file store object.

Layout ( )

IMPORT_C TUidLayout()const [virtual]

Reimplemented from CFileStore::Layout()const

Gets the UID that uniquely identifies this file store as a permanent file store.

Returns: KPermanentFileStoreLayoutUid.

MarshalL ( )

IMPORT_C voidMarshalL()

Reimplemented from CFileStore::MarshalL()

NewL ( RFile & )

CPermanentFileStore *NewL(RFile &aFile)[static, inline]

Constructs a new permanent file store object in an already opened file.

The file must already be open before calling this function. The existing content of the file is discarded. It is strongly recommended to set EFileWriteDirectIO bit when opening the file. It is because that when file server file write cachingis on, the order of file writing is not guaranteed which could cause data inconsistency in some circumstances, for example, when the power is lost in the middle of data transaction. Therefore, the file write caching should be switched off to maintain the file integrity.

Note that ownership of the file passes to the store. The referenced RFile is cleared and is no longer valid.

ParameterDescription
aFileA reference to the opened file.

Returns: A pointer to the new permanent file store object.

NewLC ( RFile & )

CPermanentFileStore *NewLC(RFile &aFile)[static, inline]

Constructs a new permanent file store object in an already opened file and places the pointer onto the cleanup stack.

The file must already be open before calling this function.The existing content of the file is discarded. It is strongly recommended to set EFileWriteDirectIO bit when opening the file. It is because that when the file write caching in file server is on, the order of file writing is not guaranteed which could cause data inconsistency in some circumstances, for example, when the power is lost in the middle of data transaction. Therefore, the file file write caching should be switched off to maintain the file integrity.

Note that ownership of the file passes to the store. The referenced RFile is cleared and is no longer valid.

ParameterDescription
aFileA reference to the opened file.

Returns: A pointer to the new permanent file store object.

OpenL ( RFs &, const TDesC &, TUint )

CPermanentFileStore *OpenL(RFs &aFs,
const TDesC &aName,
TUintaFileMode
)[static, inline]

Opens a file containing a permanent file store, and constructs a permanent file store object.

See also: TFileMode

ParameterDescription
aFsHandle to a file server session.
aNameThe full path name of the file containing the store.
aFileModeThe mode in which the file is to be accessed. The mode is defined by the TFileMode type.

Returns: A pointer to the new permanent file store object.

OpenLC ( RFs &, const TDesC &, TUint )

CPermanentFileStore *OpenLC(RFs &aFs,
const TDesC &aName,
TUintaFileMode
)[static, inline]

Opens a file containing a permanent file store, constructs a permanent file store object, and places the pointer onto the cleanup stack.

See also: TFileMode

ParameterDescription
aFsHandle to a file server session.
aNameThe full path name of the file containing the store.
aFileModeThe mode in which the file is to be accessed. The mode is defined by the TFileMode type.

Returns: A pointer to the new permanent file store object.

ReplaceL ( RFs &, const TDesC &, TUint )

CPermanentFileStore *ReplaceL(RFs &aFs,
const TDesC &aName,
TUintaFileMode
)[static, inline]

Creates a file, constructs a permanent file store object to be associated with it.

This file replaces any existing file of the same name.

See also: TFileMode

ParameterDescription
aFsHandle to a file server session.
aNameThe full path name of the file to be replaced.
aFileModeThe mode in which the file is to be accessed. The mode is defined by the TFileMode type.

Returns: A pointer to the new permanent file store object.

ReplaceLC ( RFs &, const TDesC &, TUint )

CPermanentFileStore *ReplaceLC(RFs &aFs,
const TDesC &aName,
TUintaFileMode
)[static, inline]

Creates a file, constructs a permanent file store object to be associated with it, and places the pointer onto the cleanup stack.

This file replaces any existing file of the same name.

See also: TFileMode

ParameterDescription
aFsHandle to a file server session.
aNameThe full path name of the file to be replaced.
aFileModeThe mode in which the file is to be accessed. The mode is defined by the TFileMode type.

Returns: A pointer to the new permanent file store object.

TempL ( RFs &, const TDesC &, TFileName &, TUint )

CPermanentFileStore *TempL(RFs &aFs,
const TDesC &aPath,
TFileName &aName,
TUintaFileMode
)[static, inline]

Creates a temporary file and constructs a permanent file store object to be associated with it.

The new file is created in the specified path and a unique file name is generated by the file server.

Note that the store framework does not delete a temporary file after it is closed.

See also: TFileMode

ParameterDescription
aFsHandle to a file server session.
aPathThe path where the new file is to be created.
aNameOn return, contains the full path name of the new file.
aFileModeThe mode in which the file is to be accessed. The mode is defined by the TFileMode type.

Returns: A pointer to the new permanent file store object.

TempLC ( RFs &, const TDesC &, TFileName &, TUint )

CPermanentFileStore *TempLC(RFs &aFs,
const TDesC &aPath,
TFileName &aName,
TUintaFileMode
)[static, inline]

Creates a temporary file, constructs a permanent file store object to be associated with it, and places the pointer onto the cleanup stack.

The new file is created in the specified path and a unique file name is generated by the file server.

Note that the store framework does not delete a temporary file after it is closed.

See also: TFileMode

ParameterDescription
aFsHandle to a file server session.
aPathThe path where the new file is to be created.
aNameOn return, contains the full path name of the new file.
aFileModeThe mode in which the file is to be accessed. The mode is defined by the TFileMode type.

Returns: A pointer to the new permanent file store object.