1
<?xml version="1.0" encoding="latin1" ?>
2
<!DOCTYPE chapter SYSTEM "chapter.dtd">
9
<holder>Ericsson AB, All Rights Reserved</holder>
12
The contents of this file are subject to the Erlang Public License,
13
Version 1.1, (the "License"); you may not use this file except in
14
compliance with the License. You should have received a copy of the
15
Erlang Public License along with this software. If not, it can be
16
retrieved online at http://www.erlang.org/.
18
Software distributed under the License is distributed on an "AS IS"
19
basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
20
the License for the specific language governing rights and limitations
23
The Initial Developer of the Original Code is Ericsson AB.
26
<title>The Notification Service Components</title>
27
<prepared>Niclas Eklund</prepared>
29
<date>2000-04-13</date>
34
<title>The Notification Service Components</title>
35
<p>This chapter describes the Notification Service Components and how they
39
<title>Components</title>
40
<p>There are seven components in the OMG Notification Service architecture.
41
These are described below: </p>
42
<marker id="notificationFlow"></marker>
43
<image file="notificationFlow">
45
Figure 1: The Notification Service Components.</icaption>
47
<list type="bulleted">
48
<item><em>Event Channel:</em> acts as a factory for Administrator objects.
49
Allows clients to set Administrative Properties.</item>
50
<item><em>Supplier Administrators:</em> acts as a factory for Proxy Consumers.
51
Administrators are started as <c>'AND_OP'-</c> or <c>'OR_OP'-</c>type,
52
which determines if events must be validated using both the Administrators
53
associated Filter and/or its Proxy children Filters.</item>
54
<item><em>Consumer Administrators:</em> acts in the same way as Supplier Administrators
55
but handle Proxy Suppliers.</item>
56
<item><em>Consumer Proxy:</em> is connected to a client application. Can be
57
started as <c>Pull</c> or <c>Push</c> object. If the proxy is Push style
58
the client application must push events to the Proxy, otherwise the Proxy is
59
supposed to Pull events. The <c>CosNotification::AdminProperties</c> is
60
used to set the pacing interval.</item>
61
<item><em>Supplier Proxy:</em> Acts in a similar way as the Consumer Proxy, but
62
if started as a <c>Push</c> proxy it will push events to the client
64
<item><em>Filters:</em> used to filter events. May be associated with Proxies
65
and Administrators.</item>
66
<item><em>Mapping Filters:</em> used to override events Quality of Service
67
settings. Can only be associated with Consumer Administrators and
68
Proxy Suppliers.</item>
70
<p>When a Proxy is started it is set to accept <c>CORBA::Any</c>,
71
<c>CosNotification::StructuredEvent</c> or <c>CosNotification::EventBatch</c>
72
(a sequence of structured events).</p>
73
<p>If a Proxy is supposed to deliver structured events to a client application
74
and receives an <c>CORBA::Any</c> event, the event is converted to a
75
structured event with <c>type_name</c> set to <c>"%ANY"</c> and the
76
event is stored in <c>remainder_of_body</c>.</p>
77
<p>If a Proxy is supposed to deliver <c>CORBA::Any</c> events to a client application
78
and receives a structured event, the event is stored in an Any type. The
79
Any Type Code will be equal to the <c>CosNotification::StructuredEvent</c>