Addition of the PDK content and example code for Documentation_content according to Feature bug 1607 and bug 1608
<?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-5580195F-3DE7-55FA-B2C1-91A950A39C6E" xml:lang="en"><title>Nodes
in Symbian Platform</title><shortdesc>This topic describes the basic concept of a <i>Node</i> in Symbian
platform. </shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>
<p>The Communications Framework is modular and can adapt to changes in the
networks that are available. The Communications Framework can also adapt to
changes in technology. The modular design is described as a <i>Distributed
Object Model</i>. Nodes are the components of a Distributed Object Model. </p>
<p>A Distributed Object Model describes a system of entities or <i>Nodes</i> that
can exist in different run contexts. The Nodes can exchange asynchronous messages.
In Symbian platform, the concept of different run contexts refers to separate
threads and separate processes. The scope of a Node is limited to a device.
A Node cannot exist on a separate device. </p>
<p>Symbian platform provides the Distributed Object Model framework that the
Communications Architecture uses. The Distributed Object Model framework is
a general purpose tool that other software entities can also use. </p>
<p>A Node is an object that has an interface and an address. A Node uses messages
to communicate with other Nodes. Some types of Node can use direct function
calls to communicate if speed is important. Symbian platform defines the interface
to a Node as the sequence of messages that the Node knows and to which the
Node responds. </p>
<p>A Node is an instance of a class derived from <xref href="GUID-3462501E-FDE1-3F3C-B26D-7FF3C826311F.dita"><apiname>ANodeBase</apiname></xref>. </p>
<p>A parent Node is responsible for the destruction of its child Nodes. A
parent Node can pass a reference to a child Node to other Nodes and implements
the concept of containment. </p>
<p>Nodes have <i>Roles</i>. A Role : </p>
<ul>
<li id="GUID-FCAA95EC-73CE-55D6-958F-4489069915D9"><p>identifies a service
that the Node provides </p> </li>
<li id="GUID-D9A10365-54BC-5F28-A081-FBB9963FCA38"><p>describes the series
of messages that a Node sends and receives as part of a service </p> </li>
</ul>
<p>A Node can have more than one role. Examples of roles are as follows: </p>
<ul>
<li id="GUID-76207994-4326-5CB1-BE14-F20037A9B0BE"><p>a Node can accept requests
to connect to another Node. </p> </li>
<li id="GUID-3F4B59F6-12DD-5381-ACE9-DD021F41BF66"><p>a Node can own other
Nodes. This is the concept of the <i>parent</i> Node. </p> </li>
<li id="GUID-1B92A012-72B4-5DAC-9F15-D7FB802E2625"><p>A Node can be owned
by another Node. This is the concept of the <i>child</i> Node. </p> </li>
</ul>
</conbody></concept>