summaryrefslogtreecommitdiff
path: root/TAO/DevGuideExamples/NotifyService/OfferSubscriptions/README
blob: 90edd9fa6a031ff95d251f134056393a5266693b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
// $Id$

Event Notification Service


File: examples/NotifyService/OfferSubscriptions/README


This example extends the NotifyService/Messenger example by incorporating
"offers" and "subscriptions" into the utilization of the Notification
channel.

The publication of "offers" by a supplier, informs consumers of the
Notification channel about the types of events it will be producing.  This
is accomplished via the 'offer_change()' operation.

Moreover, the example demonstrates how consumers can inform Notification
channel suppliers about the types of events in which they are interested.
The set of events in which a consumer is interested is called a "subscription"
and can be communicated via the 'subscription_change()' operation.



The Client code is stored in:

examples/NotifyService/OfferSubscriptions/MessengerClient.cpp

The Server code is stored in:

examples/NotifyService/OfferSubscriptions/MessengerServer.cpp

The Consumer code is stored in:

examples/NotifyService/OfferSubscriptions/MessengerConsumer.cpp


How to Run
----------

To start the Naming Service:
----------------------------
$TAO_ROOT/orbsvcs/Naming_Service/Naming_Service -o ns.ior&

To start the Notification Service:
---------------------------------
$TAO_ROOT/orbsvcs/Notify_Service/Notify_Service -ORBInitRef NameService=file://ns.ior&

To start the server/supplier
----------------------------
./MessengerServer -ORBInitRef NameService=file://ns.ior

To start the consumer
---------------------
./MessengerConsumer -ORBInitRef NameService=file://ns.ior

To start the client
-------------------
./MessengerClient -ORBInitRef NameService=file://ns.ior



Exeuction via Perl Script
-------------------------

A Perl script has been created to automate the steps shown
above.  This script can be run via the following command:

./run_test.pl