Symbian
Symbian OS Library

SYMBIAN OS V9.3

[Index] [Spacer] [Previous] [Next]



Location: S32STOR.H
Link against: estor.lib

Class CDictionaryStore

class CDictionaryStore : public CBase;

Description

Dictionary store interface.

This is an abstract class which provides the necessary interface for using concrete dictionary stores.

A dictionary store is a store where a stream is accessed by UID (TUid), rather than directly by stream id (TStreamId).

This type of store contains streams in the usual way but, in addition, the root stream is a stream dictionary. The stream dictionary provides a list of two-way associations between unique identifiers and stream ids.

Note that a dictionary store object does not derive from CStreamStore, but owns a persistent store and a stream dictionary as part of its implementation.

Derivation

Members

Defined in CDictionaryStore:
Commit(), CommitL(), ConstructL(), IsNullL(), IsPresentL(), Remove(), RemoveL(), Revert(), RevertL(), iStore, ~CDictionaryStore()

Inherited from CBase:
Delete(), Extension_(), operator new()

See also:


Construction and destruction


~CDictionaryStore()

IMPORT_C ~CDictionaryStore();

Description

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


ConstructL()

protected: IMPORT_C void ConstructL();

Description

[Top]


Member functions


IsNullL()

IMPORT_C TBool IsNullL() const;

Description

Tests whether the dictionary stores stream dictionary is empty.

Return value

TBool

True, if the stream dictionary is empty. False, if the stream dictionary contains at least one entry.

See also:


IsPresentL()

IMPORT_C TBool IsPresentL(TUid aUid) const;

Description

Tests whether the specified UID has an associated stream within this dictionary store.

Parameters

TUid aUid

The UID.

Return value

TBool

True, if there is a stream associated with the specified UID in the dictionary store; false otherwise.

See also:


Remove()

IMPORT_C void Remove(TUid aUid);

Description

Removes the stream associated with the specified UID from the dictionary store.

If there is no stream associated with the specified UID, then the dictionary store remains unchanged.

The function cannot leave; it returns whether or not it is succesful.

Parameters

TUid aUid

The UID whose associated stream is to be removed from the dictionary store.


RemoveL()

IMPORT_C void RemoveL(TUid aUid);

Description

Removes the stream associated with the specified UID from the dictionary store and leaves if unsuccessful.

If there is no stream associated with the specified UID, then the dictionary store remains unchanged.

Parameters

TUid aUid

The UID whose associated stream is to be removed from the dictionary store.


Commit()

IMPORT_C TInt Commit();

Description

Commits changes.

It establishes a new commit point and then compacts the dictionary store. Typically, this is done after changes to new or existing streams are complete and the streams themselves have been committed.

Establishing a new commit point makes changes to the store permanent. Until such changes are committed, they can be rolled back, effectively causing the store to revert back to its state before the changes were made.

This ensures that persistent data moves from one consistent state to another and guarantees the integrity of persistent store data in the event of failures. In particular, if a process terminates or a media failure occurs, the store reverts automatically to its state at the last successful commit point.

Return value

TInt

KErrNone if successful, otherwise another of the system-wide error codes.


CommitL()

IMPORT_C void CommitL();

Description

Commits changes and leaves if unsuccessful.

See also:


Revert()

IMPORT_C void Revert();

Description

Rolls the dictionary store back to its state at the last commit point.

A commit point is set using the Commit() or CommitL() functions.

The function returns, whether or not it completes successfully.

See also:


RevertL()

IMPORT_C void RevertL();

Description

Rolls the dictionary store back to its state at the last commit point and leaves if unsuccessful.

A commit point is set using the Commit() or CommitL() functions.

See also:

[Top]


Member data


iStore

protected: CPersistentStore * iStore;

Description