summaryrefslogtreecommitdiff
path: root/TAO/tests/Explicit_Event_Loop/README
blob: 66996c57b85f718af38c6a626aa5deb47376a72a (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
$Id$

Explicit Event Loop test.

This is a test of the methods work_pending() and perform_work() methods of the orb.
The simple time server, instead of calling orb->run(), has an loop in which 
work_pending() and perform_work() are called explicitly.   Its usage is specified 
below.
______________________________________________________________________________
This test has been adapted from code in chapter 3 of "Advanced CORBA 
Programming with C++" by Michi Henning and Steve Vinoski. Copyright 1999. 
Addison-Wesley, Reading, MA.  To make the examples work with TAO, some minor 
modifications to the source code have been made, with permission, by Mike 
Moran <mm4@cs.wustl.edu>.   All of these changes are documented in the file 
CHANGES in this directory.
______________________________________________________________________________


Summary:
    This is the simple time server given in chapter 3 of the book.
    There is a server process which holds a servant object which can return 
    the current Greenwich time, and a client process which can acess this 
    object.

Building:
    This test uses the ACE_TRY macros, and does not need to use native 
    C++ exceptions.    Make sure to use TAO_FLAG Ge=1 to ensure that 
    CORBA::Environment variables are created in the IDL generated stubs 
    and skeletons.

    With GNU make, simply type 
                            
    % make

    to create the executable server and client

server:
    The server takes no parameters nor command line options and returns an 
    IOR to stdout.  The server then waits infinitely for clients requests.

client:
    The client takes an IOR from the command line, prints out the current 
    time, and terminates.

run_test.pl:
    This is currently a UNIX only script!  It starts up the server, redirecting
    stdout to a file, then passes the file's contents to the command line of
    the client.  After the client terminates, the server is killed.