Symbian3/SDK/Source/GUID-5E522208-E8ED-5E95-946C-5D87CF303F1D.dita
author Graeme Price <GRAEME.PRICE@NOKIA.COM>
Fri, 15 Oct 2010 14:32:18 +0100
changeset 15 307f4279f433
parent 0 89d6a7a84779
permissions -rw-r--r--
Initial contribution of the Adaptation Documentation.

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License 
"Eclipse Public License v1.0" which accompanies this distribution, 
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
    Nokia Corporation - initial contribution.
Contributors: 
-->
<!DOCTYPE concept
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept id="GUID-5E522208-E8ED-5E95-946C-5D87CF303F1D" xml:lang="en"><title>Storing
Messages in SQL Database</title><shortdesc>This document explains how to define the header structure of messages
before storing them in the SQL database and lists the advantages of doing
so. </shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>
<section id="GUID-FC18D7D2-4B90-548F-A3C7-AAA32DEAB058"><title>Header
structure</title> <p>The header structure of messages is specific to each
Message Type Module (MTM). The Messaging framework provides a generic interface
to store and access the header information. </p> <p>MTM developers use the <xref href="GUID-0D95F395-B164-36C7-B745-177DDC8F17C5.dita"><apiname>CMsvHeaderStore</apiname></xref> API to create a specific
header table and specify their message header structure to the Message Server. </p> <p>The <xref href="GUID-0D95F395-B164-36C7-B745-177DDC8F17C5.dita"><apiname>CMsvHeaderStore::CreateStoreL()</apiname></xref> function
creates a header table. Before creating a header table for your MTM, you should
check whether the table already exists, by calling the <xref href="GUID-0D95F395-B164-36C7-B745-177DDC8F17C5.dita"><apiname>DoesStoreExistsL()</apiname></xref> function. </p> <p> <xref href="GUID-0D95F395-B164-36C7-B745-177DDC8F17C5.dita"><apiname> TCommonHeaderField</apiname></xref> is the enumeration
defining the following standard message header fields: </p> <ul>
<li id="GUID-B3C53A00-1430-57DB-BD3C-F0F63C105E87"><p> <codeph>EFrom</codeph> –
‘From’ field of the message header </p> </li>
<li id="GUID-44C7345E-911E-5392-ACC4-D3B6A6F15D78"><p> <codeph>EBCC</codeph> –
‘BCC’ field of the message header </p> </li>
<li id="GUID-45F46F10-9922-5646-8A4B-F00759B1BE72"><p> <codeph>ETo</codeph> –
‘To’ field of the message header </p> </li>
<li id="GUID-5F7CA59A-CD5F-573C-91A0-148442CCCC5A"><p> <codeph>ECC</codeph> –
‘CC’ field of the message header. </p> </li>
<li id="GUID-CBEE41C2-0197-533D-AD0B-A76EC2506FE3"><p> <codeph>ESubject</codeph> –
‘Subject’ field of the message header. </p> </li>
</ul> <p>To add specific fields to the header table, call the <xref href="GUID-0D95F395-B164-36C7-B745-177DDC8F17C5.dita"><apiname>AddFieldL()</apiname></xref> function. </p> <p> <xref href="GUID-0D95F395-B164-36C7-B745-177DDC8F17C5.dita"><apiname>CEmailAccounts</apiname></xref> is the API provided by the
email client MTM. This class creates, loads, saves and deletes email accounts.
When creating the email account, the client MTM has to provide the header
structure through the <xref href="GUID-0D95F395-B164-36C7-B745-177DDC8F17C5.dita"><apiname>CMsvHeaderStore</apiname></xref> API
to pass to the Messaging framework. The framework will then create the header
for the account. </p> </section>
<section><title>Advantages of SQL message storage</title> <p>The message headers
are stored in an SQL database, which provides the following advantages: </p> <ul>
<li id="GUID-A1C20DCD-625E-5732-85E9-082FD488D398"><p>robustness of mail storage </p> </li>
<li id="GUID-527ED804-E6E3-5833-BB10-EDD5E5D2EC81"><p>quick processing of
the frequently-required header data </p> </li>
<li id="GUID-E5E62B12-07EA-58A1-BC8A-389C17F43A21"><p>support for search-sort
operations </p> </li>
<li id="GUID-39CB6C7D-AA08-5F7D-BC8B-ACCE227D6C5F"><p>increased performance
of the Message Server. </p> </li>
</ul> </section>
</conbody><related-links>
<link href="GUID-9A3E0279-4F87-594D-A987-66DC77F408A0.dita"><linktext>Creating
and Reading Email Messages in Chunks</linktext></link>
<link href="GUID-6FE94423-9563-5F31-95EB-504479144B05.dita"><linktext>Storing and
Restoring Email Messages in                 Chunks</linktext></link>
</related-links></concept>