Nodes in Symbian Platform

This topic describes the basic concept of a Node in Symbian platform.

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 Distributed Object Model. Nodes are the components of a Distributed Object Model.

A Distributed Object Model describes a system of entities or Nodes 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.

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.

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.

A Node is an instance of a class derived from Messages::ANodeBase.

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.

Nodes have Roles. A Role :

  • identifies a service that the Node provides

  • describes the series of messages that a Node sends and receives as part of a service

A Node can have more than one role. Examples of roles are as follows:

  • a Node can accept requests to connect to another Node.

  • a Node can own other Nodes. This is the concept of the parent Node.

  • A Node can be owned by another Node. This is the concept of the child Node.