Arch Sub-System: Message

01 This sub-system describes the basic types required for a messaging based process and system.

02

ArchAddress

03 The ArchAddress contains address information primarily used for messages within a system.
04 Semys Arch uses three levels of identification:
  • Group: Specifying the Module.
  • Instance: Identification of one of many existing group instances.
  • Object: Decimal identification of an object managed by given module.
05 The group Id is based on a value of the MsgGroupId enumeration. It corresponds to a module that defines the group of messages that the module uses - either for internal or public messaging.
06 The instance Id specifies which of several running modules of identical type is addressed.
07 The object Id refers to an object mangaged within the specified module. It is dependent on the module what this Id means.

08

MsgGroupId

09 This enumeration is the primary identification of modules and their message groups. External modules (not from Semys Arch) can be based on the constant MsgGroupFreeBase, which is set to 1000.
The value 0 is not used and reserved; It does not specify any group.
10 One predefined message group can not be assigned one single module and the contained messages are part of the whole Semys architecture.
This group has the identifier MsgGroupArch, decimal 1.

11

Message

12 This is the base class for all messages handled by Semys Arch.

13

IMessageListener

14 This is the interface for any component that handles messages.

15

MessageQueue

16 IMessageListener implementation typically used for components with own threads.

17

IMessageCreator

18 Interface for helper classes that create new message objects according to their unique type identification.

19

MessageCreatorRegistry

20 Central registry for all present message creators of the process.

Goto: Main Page; This page is part of the Semys software documentation. See About: Documentation for details.