Symbian3/PDK/Source/GUID-21CF1D5F-44C5-5407-B3C9-8BC103C97079.dita
changeset 5 f345bda72bc4
parent 3 46218c8b8afa
child 14 578be2adaf3e
equal deleted inserted replaced
4:4816d766a08a 5:f345bda72bc4
     7     Nokia Corporation - initial contribution.
     7     Nokia Corporation - initial contribution.
     8 Contributors: 
     8 Contributors: 
     9 -->
     9 -->
    10 <!DOCTYPE concept
    10 <!DOCTYPE concept
    11   PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
    11   PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
    12 <concept xml:lang="en" id="GUID-21CF1D5F-44C5-5407-B3C9-8BC103C97079"><title>File Stores Overview</title><prolog><metadata><keywords/></metadata></prolog><conbody><section><title>Purpose</title> <p>Provides file-based structured data storage, using networks of streams.</p> </section> <section><title>Architectural relationships</title> <p>The File Stores API is based on the abstract store types defined by the Stores API. The underlying file handling is provided by the File Server.</p> <p>The permanent file stores defined in this API are used by the relational database API, DBMS, for data storage.</p> </section> <section><title>Description</title> <p>The API has five key concepts: file store base (<codeph>CFileStore</codeph>), direct file store (<codeph>CDirectFileStore</codeph>), permanent file store (<codeph>CPermanentFileStore</codeph>), dictionary file store (<codeph>CDictionaryFileStore</codeph>), and file streams (<codeph>RFileWriteStream</codeph> and <codeph>RFileReadStream</codeph>).</p> <p><b>File store base</b> </p> <p>This abstract base class provides basic behaviour for file stores, such as reading a store from a specified file. </p> <p>File stores are derived from the persistent store base (<codeph>CPersistentStore</codeph>) provided by the Stores API. This means that they have a root stream, from which all other streams within the store can be found.</p> <p>The file store base class is <codeph>CFileStore</codeph>.</p> <p><b>Direct file store</b> </p> <p>A direct file store implements a file store in which once the streams have been committed and closed, they cannot subsequently be changed. They are used by the type of application that treats the in-memory copy of its data as its prime copy, and on saving, replaces the entire store. </p> <p>The direct file store is a concrete type, derived from <codeph>CFileStore</codeph>, and is provided by <codeph>CDirectFileStore</codeph>.</p> <p><b>Permanent file store</b> </p> <p>A permanent file store implements a file store in which existing streams within the store can be changed. They are used by the type of application which treats the data in the store as its prime copy. Typically, the object network comprising the application’s data is structured so that sections of data can be loaded in, and, if changed, written back to the store. Memory is used as a workplace for changing data.</p> <p>The permanent file store is a concrete type, derived from <codeph>CFileStore</codeph>, and is provided by <codeph>CPermanentFileStore</codeph>.</p> <p><b>Dictionary file store</b> </p> <p>The dictionary file store implements a dictionary store, a network of streams each of which can be accessed via a UID, in file storage.</p> <p>The dictionary file store is a concrete type, derived from <codeph>CDictionaryStore</codeph>, and is provided by <codeph>CDictionaryFileStore</codeph>.</p> <p><b>File streams</b> </p> <p>File streams allow standard files (<xref href="GUID-BE0804F6-4375-3C8A-8C83-968F510466E0.dita"><apiname>RFile</apiname></xref> objects as defined in the File Server Client Side API), not file stores, to be written to as streams. This can be simpler and more efficient than using the equivalent <xref href="GUID-BE0804F6-4375-3C8A-8C83-968F510466E0.dita"><apiname>RFile</apiname></xref> functions. </p> <p>The file stream classes are <codeph>RFileReadStream</codeph> and <codeph>RFileWriteStream</codeph>.</p> </section> <section><title>See also</title> <p><xref href="GUID-13C95985-D16F-5A9E-A7F8-CAB637C4C6ED.dita#GUID-13C95985-D16F-5A9E-A7F8-CAB637C4C6ED/GUID-844F756E-1670-5D24-8D63-2092ABE3354C">DBMS Overview</xref> </p> <p><xref href="GUID-B69FE02E-3A78-5438-BA7C-F7BB4CD3EB76.dita">File Server Client Side Overview</xref> </p> <p><xref href="GUID-744ACF2C-963B-5E2F-A6B3-220AB899FD23.dita">Streaming Overview</xref> </p> <p><xref href="GUID-66ACFC54-5671-5B72-9DBC-A76F7A112D63.dita">Store Streams Overview</xref> </p> <p><xref href="GUID-5EAED550-5FFC-54A6-BB4A-720975B127B8.dita">Stores Overview</xref> </p> </section> </conbody></concept>
    12 <concept id="GUID-21CF1D5F-44C5-5407-B3C9-8BC103C97079" xml:lang="en"><title>File
       
    13 Stores Overview</title><shortdesc>Provides a summary of APIs related to the File Store and their
       
    14 uses.</shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>
       
    15 <section id="GUID-D44D9C54-8783-4D88-A7D8-F25FFE754802"><title>Purpose</title> <p>Provides
       
    16 file-based structured data storage, using networks of streams.</p> </section>
       
    17 <section id="GUID-C7FB5BC3-D5FE-451D-990C-E68F28215A4C"><title>Architectural
       
    18 relationships</title> <p>The File Stores API is based on the abstract store
       
    19 types defined by the Stores API. The underlying file handling is provided
       
    20 by the File Server.</p> <p>The permanent file stores defined in this API are
       
    21 used by the relational database API, DBMS, for data storage.</p> </section>
       
    22 <section id="GUID-AD9259E7-ABE2-4EE7-B316-7B24EBE5353E"><title>Description</title> <p>The
       
    23 API has five key concepts: file store base (<codeph>CFileStore</codeph>),
       
    24 direct file store (<codeph>CDirectFileStore</codeph>), permanent file store
       
    25 (<codeph>CPermanentFileStore</codeph>), dictionary file store (<codeph>CDictionaryFileStore</codeph>),
       
    26 and file streams (<codeph>RFileWriteStream</codeph> and <codeph>RFileReadStream</codeph>).</p> <p><b>File
       
    27 store base</b> </p> <p>This abstract base class provides basic behaviour for
       
    28 file stores, such as reading a store from a specified file. </p> <p>File stores
       
    29 are derived from the persistent store base (<codeph>CPersistentStore</codeph>)
       
    30 provided by the Stores API. This means that they have a root stream, from
       
    31 which all other streams within the store can be found.</p> <p>The file store
       
    32 base class is <codeph>CFileStore</codeph>.</p> <p><b>Direct file store</b> </p> <p>A
       
    33 direct file store implements a file store in which once the streams have been
       
    34 committed and closed, they cannot subsequently be changed. They are used by
       
    35 the type of application that treats the in-memory copy of its data as its
       
    36 prime copy, and on saving, replaces the entire store. </p> <p>The direct file
       
    37 store is a concrete type, derived from <codeph>CFileStore</codeph>, and is
       
    38 provided by <codeph>CDirectFileStore</codeph>.</p> <p><b>Permanent file store</b> </p> <p>A
       
    39 permanent file store implements a file store in which existing streams within
       
    40 the store can be changed. They are used by the type of application which treats
       
    41 the data in the store as its prime copy. Typically, the object network comprising
       
    42 the application’s data is structured so that sections of data can be loaded
       
    43 in, and, if changed, written back to the store. Memory is used as a workplace
       
    44 for changing data.</p> <p>The permanent file store is a concrete type, derived
       
    45 from <codeph>CFileStore</codeph>, and is provided by <codeph>CPermanentFileStore</codeph>.</p> <p><b>Dictionary
       
    46 file store</b> </p> <p>The dictionary file store implements a dictionary store,
       
    47 a network of streams each of which can be accessed via a UID, in file storage.</p> <p>The
       
    48 dictionary file store is a concrete type, derived from <codeph>CDictionaryStore</codeph>,
       
    49 and is provided by <codeph>CDictionaryFileStore</codeph>.</p> <p><b>File streams</b> </p> <p>File
       
    50 streams allow standard files (<xref href="GUID-BE0804F6-4375-3C8A-8C83-968F510466E0.dita"><apiname>RFile</apiname></xref> objects as defined
       
    51 in the File Server Client Side API), not file stores, to be written to as
       
    52 streams. This can be simpler and more efficient than using the equivalent <xref href="GUID-BE0804F6-4375-3C8A-8C83-968F510466E0.dita"><apiname>RFile</apiname></xref> functions. </p> <p>The
       
    53 file stream classes are <codeph>RFileReadStream</codeph> and <codeph>RFileWriteStream</codeph>.</p> </section>
       
    54 </conbody><related-links>
       
    55 <linklist>
       
    56 <link href="GUID-5EAED550-5FFC-54A6-BB4A-720975B127B8.dita"><linktext>Stores Overview</linktext>
       
    57 </link>
       
    58 <link href="GUID-66ACFC54-5671-5B72-9DBC-A76F7A112D63.dita"><linktext>Store Streams
       
    59 Overview</linktext></link>
       
    60 <link href="GUID-744ACF2C-963B-5E2F-A6B3-220AB899FD23.dita"><linktext>Streaming
       
    61 Overview</linktext></link>
       
    62 <link href="GUID-13C95985-D16F-5A9E-A7F8-CAB637C4C6ED.dita"><linktext>DBMS Overview</linktext>
       
    63 </link>
       
    64 </linklist>
       
    65 </related-links></concept>