A store is persistent if you can close it, re-open it, and then gain access to the same data.
A persistent store has the concept of a root stream. The root stream is, in effect, the starting point from which all others streams within the store can be found.
Before closing a persistent store you have created, you must set the ID of the root stream. After you have opened the persistent store, the first thing you must do is look up the root stream ID. You can then open the root stream and start reading data from the store.
Persistent stores are represented by the abstract class
CPersistentStore
. This class, derived from
CStreamStore
has the root stream ID and expands on the abstract
framework provided by CStreamStore
, by adding behaviour for
setting and retrieving the root stream ID.
File stores are an example of persistent stores.
The following diagram shows the idea of a persistent store with a root stream: