summaryrefslogtreecommitdiff
path: root/TAO/tests/RTCORBA/Server_Protocol/README
blob: b8e889ab6f956c78675b15e885a65612baff96df (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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
$Id$

This is a unit test for RTCORBA::ServerProtocolPolicy.

Scenario:
--------
The server first prints out its ORB default Server Protocol policy.
If the <-p> command line option was specified, a child POA is created
and configured with Server Protocol Policy containing a single
protocol specified with <-p> (see options section below).
The object is registered with child POA if one was created (root poa
otherwise) and the server waits for requests.
The client obtains server IOR and makes a single invocation, causing
server process to shut down its orb and exit.

To run (on Unix):
-------
$./server [-o <ior_file> -p <profile_id>]
$./client [-k <ior>]


Options:
--------
         Server:

-o <ior_output_file>   Default: test.ior
                       Filename for output of server's IOR.

-p <profile_id>        Default: none.
                       The POA with which the object will be
                       registered will be configured with Server
                       Protocol Policy cotaining a single protocol -
                       the one identified by <profile_id>.  If this
                       option is not present, then the POA is not
                       configured with Server Protocol Policy and ORB
                       default is used.

         Client:

-k <server_ior>        Default: file://test.ior
                       Server's IOR

Expected output:
----------------
Expected output varies with the configurations used to run the test.
General guidelines:

1) ORB default ServerProtocolPolicy must contain all the protocols
   that were loaded in the order they were loaded.  This can be
   manipulated through the use of service config files (see run_test.pl)

2) Run client with -ORBdebuglevel 1 to see which protocol is used for
   communication.  Make sure it is the same protocol that was
   specified with <-p> or the first available from orb default server
   protocol policy if <-p> wasn't specified (see run_test.pl for
   sample options)

3) See OMG Real-Time CORBA specification and TAO's Real-Time CORBA
   documentation for more information.


Sample Run/Output (on Unix):
----------------
* Server:

$./server -ORBendpoint iiop:// -ORBendpoint uiop:// -ORBendpoint \
shmiop:// -p 1413566210

ORB default for ServerProtocolPolicy contains 3 protocols:
  Protocol 0: IOP::ProfileId = 0
     Properties:
      send_buffer_size = 65536
      receive_buffer_size = 65536
      no_delay = 1
  Protocol 1: IOP::ProfileId = 1413566208
     Properties:
      send_buffer_size = 65536
      receive_buffer_size = 65536
  Protocol 2: IOP::ProfileId = 1413566210

Activated as <IOR:000000000000000d49444c3a546573743a312e30000000000000000154414f020000008000010200000000116163652e63732e777573746c2e6564750000cbef0000002314010f004e535439b59013000388560000000100000001000000000000000100000001000000000300000000000000080000000054414f000000000100000014000000000001000100000000000101090000000054414f000000000400000000>

Received request to shut down the ORB
Server ORB event loop finished


* Client (in a separate window):

$./client -ORBdebuglevel 1
TAO (20145|1) Loaded default protocol <IIOP_Factory>
TAO (20145|1) Loaded default protocol <UIOP_Factory>
TAO (20145|1) Loaded default protocol <SHMIOP_Factory>
TAO (20145|1) SHMIOP connection to server <127.0.0.1:52207> on 8