#include <s32stor.h>
class CDictionaryStore : public CBase |
Protected Attributes | |
---|---|
CPersistentStore * | iStore |
Public Member Functions | |
---|---|
~CDictionaryStore() | |
IMPORT_C TInt | Commit() |
IMPORT_C void | CommitL() |
IMPORT_C TBool | IsNullL() |
IMPORT_C TBool | IsPresentL(TUid) |
IMPORT_C void | Remove(TUid) |
IMPORT_C void | RemoveL(TUid) |
IMPORT_C void | Revert() |
IMPORT_C void | RevertL() |
Protected Member Functions | |
---|---|
IMPORT_C void | ConstructL() |
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.
See also: CStreamDictionary CPersistentStore CDictionaryFileStore TUid TStreamId
IMPORT_C | ~CDictionaryStore | ( | ) |
Frees resources owned by the object, prior to its destruction.
IMPORT_C TInt | Commit | ( | ) |
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.
Returns: KErrNone if successful, otherwise another of the system-wide error codes.
IMPORT_C void | CommitL | ( | ) |
Commits changes and leaves if unsuccessful.
See also: CDictionaryStore::Commit()
IMPORT_C TBool | IsNullL | ( | ) | const |
Tests whether the dictionary stores stream dictionary is empty.
See also: CStreamDictionary
Returns: True, if the stream dictionary is empty. False, if the stream dictionary contains at least one entry.
Tests whether the specified UID has an associated stream within this dictionary store.
See also: CStreamDictionary
Parameter | Description |
---|---|
aUid | The UID. |
Returns: True, if there is a stream associated with the specified UID in the dictionary store; false otherwise.
IMPORT_C void | Remove | ( | TUid | aUid | ) |
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.
Parameter | Description |
---|---|
aUid | The UID whose associated stream is to be removed from the dictionary store. |
IMPORT_C void | RemoveL | ( | TUid | aUid | ) |
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.
Parameter | Description |
---|---|
aUid | The UID whose associated stream is to be removed from the dictionary store. |
IMPORT_C void | Revert | ( | ) |
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: CDictionaryStore::Commit() CDictionaryStore::CommitL()
IMPORT_C void | RevertL | ( | ) |
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: CDictionaryStore::Commit() CDictionaryStore::CommitL()