CDictionaryStore Class Reference

#include <s32stor.h>

class CDictionaryStore : public CBase

Inherits from

  • CDictionaryStore

    Detailed 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.

    See also: CStreamDictionary CPersistentStore CDictionaryFileStore TUid TStreamId

    Member Attribute Documentation

    iStore

    CPersistentStore *iStore[protected]

    Constructor & Destructor Documentation

    ~CDictionaryStore ( )

    IMPORT_C~CDictionaryStore()

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

    Member Function Documentation

    Commit ( )

    IMPORT_C TIntCommit()

    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.

    CommitL ( )

    IMPORT_C voidCommitL()

    Commits changes and leaves if unsuccessful.

    See also: CDictionaryStore::Commit()

    ConstructL ( )

    IMPORT_C voidConstructL()[protected]

    IsNullL ( )

    IMPORT_C TBoolIsNullL()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.

    IsPresentL ( TUid )

    IMPORT_C TBoolIsPresentL(TUidaUid)const

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

    See also: CStreamDictionary

    ParameterDescription
    aUidThe UID.

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

    Remove ( TUid )

    IMPORT_C voidRemove(TUidaUid)

    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.

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

    RemoveL ( TUid )

    IMPORT_C voidRemoveL(TUidaUid)

    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.

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

    Revert ( )

    IMPORT_C voidRevert()

    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()

    RevertL ( )

    IMPORT_C voidRevertL()

    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()