Merge pull request #2222 from jwillemsen/jwi-dllexportwarning
[ACE_TAO.git] / TAO / docs / orbsvcs.html
blob94e7677c333727d15631e3f31d92a7b690bb975a
1 <html>
2 <!-- -->
3 <head>
4 <title>TAO's CORBA Object Services Documentation</title>
5 </head>
8 <BODY text = "#000000"
9 link="#0000ff"
10 vlink="#cc0000"`
11 bgcolor="#ffffff">
13 <body>
14 <HR>
15 <h3>TAO's CORBA Object Services Directory Hierarchy</h3>
17 <P>The file and directory organization for TAO services can be
18 confusing at first glance (and even on subsequent ones to be
19 honest),
20 so we felt like some rationale and explanation of the directory
21 hierarchy was needed.</P>
23 <P>For general sanity all TAO services files are located under
24 <CODE>$TAO_ROOT/orbsvcs</CODE>.</P>
26 <P>It is expected that clients use more
27 than one service at the same time
28 (in fact some of the services already do, for instance the
29 <B>Event Service</B> uses the <B>Naming Service</B> and the
30 <B>Scheduling Service</B>).
31 Every service is put together as a library. These libraries are
32 located in <CODE>$TAO_ROOT/orbsvcs/orbsvcs</CODE>.
33 Usually the include path is <CODE>$TAO_ROOT</CODE>,
34 so files are included like this:</P>
36 <P><CODE>
37 #include "orbsvcs/CosNamingC.h"
38 </CODE></P>
40 <P>To simplify the IDL generation the skeletons are also on the
41 library, this is not a problem for client programs and most
42 services need to link the library anyway (since they use other
43 services.) Further, the current support for collocation
44 requires that clients link the skeleton files anyway.
45 </P>
47 <P>In the future we intend to use ACE Service Configurator to give
48 the users control over collocation of the services implementation.
49 As a first cut all the service implementations are included in the
50 orbsvcs library <CODE>$TAO_ROOT/orbsvcs/orbsvcs</CODE>.
51 Since there are several services and each one is implemented
52 using several files we have given a different directory to each
53 service.
54 This structure could also simplify a future split into several
55 libraries (if it proves necessary).
56 </P>
58 <P>The complete list of directories is:</P>
60 <P>
61 <TABLE BORDER="2"
62 CELLSPACING="2"
63 CELLPADDING= "0">
64 <TR>
65 <TH>Service</TH>
66 <TH>Implementation Sub-directory</TH>
67 <TH>Maitainer/Point-of-Contact </TH>
68 </TR>
69 <TR>
70 <TD>A/V Streams Service</TD>
71 <TD><CODE>orbsvcs/orbsvcs/AV</CODE></TD>
72 <TD> Yamuna Krishnamurthy <yamuna at oomworks dot com>
73 </TR>
74 <TR>
75 <TD>Concurrency Service</TD>
76 <TD><CODE>orbsvcs/orbsvcs/Concurrency</CODE></TD>
77 <TD> None </TD>
78 </TR>
79 <TR>
80 <TD>Event Service</TD>
81 <TD><CODE>orbsvcs/orbsvcs/CosEvent</CODE></TD>
82 <TD>Pradeep Gore <pradeep at oomworks dot com>
83 and OCI<taosupport at ociweb dot com> </TD>
84 </TR>
85 <TR>
86 <TD>Real-time Event Service</TD>
87 <TD><CODE>orbsvcs/orbsvcs/Event</CODE></TD>
88 <TD> Johnny Willemsen <jwillemsen at remedy dot nl> </TD>
89 </TR>
90 <TR>
91 <TD>LifeCycle Service</TD>
92 <TD><CODE>orbsvcs/orbsvcs/LifeCycle</CODE></TD>
93 <TD>None </TD>
94 </TR>
95 <TR>
96 <TD>Load Balancing Service</TD>
97 <TD><CODE>orbsvcs/orbsvcs/LoadBalancing</CODE></TD>
98 <TD> Ossama Othman <ossama at dre dot vanderbilt dot edu> </TD>
99 </TR>
100 <TR>
101 <TD>Logging Service</TD>
102 <TD><CODE>orbsvcs/orbsvcs/Log</CODE></TD>
103 <TD> D A Hanvey <d dot hanvey@qub dot ac dot uk> </TD>
104 </TR>
105 <TR>
106 <TD>Naming Service</TD>
107 <TD><CODE>orbsvcs/orbsvcs/Naming</CODE></TD>
108 <TD> DOC group </TD>
109 </TR>
110 <TR>
111 <TD>Property Service</TD>
112 <TD><CODE>orbsvcs/orbsvcs/Property</CODE></TD>
113 <TD> None</TD>
114 </TR>
115 <TR>
116 <TD>Scheduling Service</TD>
117 <TD><CODE>orbsvcs/orbsvcs/Sched</CODE></TD>
118 <TD>Venkita Subromianian <vankita at cs dot wustl dot edu>
119 </TR>
120 <TR>
121 <TD>Security Service</TD>
122 <TD><CODE>orbsvcs/orbsvcs/Security</CODE></TD>
123 <TD> Ossama Othman <ossama at dre dot vanderbilt dot edu>
124 </TR>
125 <TR>
126 <TD>SSLIOP Pluggable Protocol</TD>
127 <TD><CODE>orbsvcs/orbsvcs/SSLIOP</CODE></TD>
128 <TD> Ossama Othman <ossama at dre dot vanderbilt dot edu>
129 </TR>
130 <TR>
131 <TD>Trading Service</TD>
132 <TD><CODE>orbsvcs/orbsvcs/Trader</CODE></TD>
133 <TD> None </TD>
134 </TR>
135 <TR>
136 <TD>Time Service</TD>
137 <TD><CODE>orbsvcs/orbsvcs/Time</CODE></TD>
138 <TD>None </TD>
139 </TR>
140 <TR>
141 <TD>Notification Service</TD>
142 <TD><CODE>orbsvcs/orbsvcs/Notify</CODE></TD>
143 <TD> Pradeep Gore <pradeep at oomworks dot com> </TD>
144 </TR>
145 <TR>
146 <TD>FtRt Event Service</TD>
147 <TD><CODE>orbsvcs/orbsvcs/FtRtEvent</CODE></TD>
148 <TD> Huang-huang Min <hh1 at cs dot wustl dot edu></TD>
149 </TR>
150 <TR>
151 <TD>FaultTolerance</TD>
152 <TD><CODE>orbsvcs/orbsvcs/FaultTolerance</CODE></TD>
153 <TD> Bala Natarajan <bala at dre dot vanderbilt dot edu> </TD>
154 </TR>
155 <TR>
156 <TD>IFRService</TD>
157 <TD><CODE>orbsvcs/orbsvcs/IFRservice</CODE></TD>
158 <TD> Jeff parsons <parsons at dre dot vanderbilt dot edu> </TD>
159 </TR>
160 <TR>
161 <TD>PortableGroup</TD>
162 <TD><CODE>orbsvcs/orbsvcs/PortableGroup</CODE></TD>
163 <TD> Frank Hunleth <frank at hunleth dot com> </TD>
164 </TR>
165 <TR>
166 <TD>RTCoSScheduling</TD>
167 <TD><CODE>orbsvcs/orbsvcs/RTCOSScheduling</CODE></TD>
168 <TD> Kevin Bryan <bryank at cs dot uri dot edu></TD>
169 </TR>
170 </TABLE>
171 </P>
173 <P>Note that in the current version of TAO we still have standalone
174 binaries for some of the services. However, some applications
175 may want to control what process implements a particular service.
176 Therefore, it has proved useful for
177 debugging purposes to keep the most used services
178 separated. Users are highly encouraged to write their own
179 executables if they want any changes in CORBA policies or would
180 like to set their own bits when running a service. The
181 executables that are packed with the TAO distribution should be
182 viewed as an executable with a basic subset of features.
183 The binaries in question are located in
184 <CODE>$TAO_ROOT/orbsvcs</CODE>, and the list includes:
185 </P>
187 <UL>
188 <LI>Concurrency_Service/tao_cosconcurrency</LI>
189 <LI>Dump_Schedule/tao_dump_schedule</LI>
190 <LI>LifeCycle_Service/tao_coslifecycle</LI>
191 <LI>LoadBalancer/tao_loadmanager</LI>
192 <LI>CosEvent_Service/tao_cosevent</LI>
193 <LI>Event_Service/tao_rtevent</LI>
194 <LI>FTRT_Event_Service/Event_Service/ftrt_eventservice</LI>
195 <LI>FTRT_Event_Service/Factory_Service/ftrtec_factory_service</LI>
196 <LI>FTRT_Event_Service/Gateway_Service/ftrtec_gateway_service</LI>
197 <LI>FT_ReplicationManager/tao_ft_replicationmanager</LI>
198 <LI>Fault_Detector/tao_fault_detector</LI>
199 <LI>Fault_Notifier/tao_fault_notifier</LI>
200 <LI>Naming_Service/tao_cosnaming</LI>
201 <LI>Scheduling_Service/tao_cosscheduling</LI>
202 <LI>Trading_Service/tao_costrading</LI>
203 <LI>Time_Service/tao_costime_server</LI>
204 <LI>ImplRepo_Service/tao_imr_locator *(see below)*</LI>
205 <LI>Notify_Service/tao_cosnotification</LI>
206 </UL>
208 <P>In the future we plan to use a single binary and ACE Service
209 Configurator and keep a single binary.</P>
211 <P>The Implementation Repository is a unique service in that it
212 starts server executables, and it doesn't make sense to collocate
213 it in another server. Because of this, only the IDL files are
214 located in <CODE>$TAO_ROOT/orbsvcs/orbsvcs</CODE>. The other
215 files are all located in
216 <CODE>$TAO_ROOT/orbsvcs/ImplRepo_Service</code>.</P>
218 <P>Finally the tests and example programs are located in
219 <CODE>$TAO_ROOT/orbsvcs/tests</CODE>;
220 once more each may involve more than a single binary,
221 so each one is kept in its own directory;
222 the following list describes the contents of each one:
223 </P>
225 <H2>SEE ALSO</H2>
227 <P>You may want to check TAO
228 <A HREF="releasenotes/index.html">release notes</A>
229 for up to date information on status, changes, future work, etc.</P>
231 <hr>
233 <address><a href="mailto:bala at dre dot vanderbilt dot edu">Bala Natarajan</a></address>
234 </body>
235 </html>