Symbian3/PDK/Source/GUID-E18592CD-223D-5B50-AF40-1AC7267BAB8C.dita
author Dominic Pinkman <Dominic.Pinkman@Nokia.com>
Thu, 11 Mar 2010 18:02:22 +0000
changeset 3 46218c8b8afa
parent 1 25a17d01db0c
child 5 f345bda72bc4
permissions -rw-r--r--
week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.

<?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-E18592CD-223D-5B50-AF40-1AC7267BAB8C" xml:lang="en"><title>Watcher
Framework Overview</title><prolog><metadata><keywords/></metadata></prolog><conbody>
<p>This section provides an overview of the functionality and the architecture
of the Watcher Framework component. </p>
<section><title>Purpose</title> <p>The Watcher Framework is a lightweight
framework used to launch watchers. </p> <p>Watcher processes are launched
when a device starts and execute until the device is switched-off. They watch
for incoming messages and handle them as appropriate. For example an SMS Watcher
waits for incoming SMS messages and delivers them to the Message Store. </p> </section>
<section><title>Architecture</title> <p>The Watcher Framework consists of
an executable, <filepath>watcher.exe</filepath>, that is started when the
device boots. The start method depends on the UI family. The framework automatically
loads each watcher plug-in DLL in <filepath>z:\system\libs\watchers</filepath>. </p> <p> <b>Note:</b> The
Watcher Framework loads plug-ins only from ROM. </p> <p>Because the watchers
are started during system start-up it is important that they start quickly. </p> <p>After
the watcher framework has constructed all the watchers it starts an active
scheduler which remains active while the phone is switched on. </p> <p>The
watcher executable is has the capabilities necessary for write-access to the <b>Messaging
Outbox </b> folder. For instance, to update a delivery report, it may require
an entry in the Outbox to be updated. </p> <fig id="GUID-B1A76302-6F78-50A1-B5CF-B7FB670A4477">
<title>              Watcher Framework architecture            </title>
<image href="GUID-C4945844-643F-5479-AA2C-61C35817555A_d0e478752_href.jpg" placement="inline"/>
</fig> <p>A watcher plug-in typically make requests to another subsystem such
that they are completed when an external event (an SMS) being received occurs.
When a watcher has completed processing the request it waits for the next
event. </p> </section>
<section><title>API summary</title> <p>The <xref href="GUID-2C666512-BA5C-31FC-A226-9C5449A73711.dita"><apiname>CWatcherLog</apiname></xref> class
logs the watcher operations. </p> </section>
<section><title>Limitation</title> <p>Support for starting and stopping watchers
dynamically is not provided. This limitation makes watchers unsuitable for
operations such as listening for messages transported through infrared (IR)
because the IR port is not normally active. </p> </section>
</conbody><related-links>
<link href="GUID-96C1C892-890E-5FA1-AEE2-DB6BA2AD0A1D.dita"><linktext>WAP
                Stack</linktext></link>
</related-links></concept>