summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcleeland <cleeland@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1997-10-23 01:07:26 +0000
committercleeland <cleeland@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1997-10-23 01:07:26 +0000
commitdae0f7a3386213b5c70b64883d34a1899d53e07a (patch)
tree4a6a5f60436d697f7fa04811eebb06b0de19f6d3
parent8e747f232c086a8b069d35f416c02262143c0554 (diff)
downloadATCD-dae0f7a3386213b5c70b64883d34a1899d53e07a.tar.gz
* README.sun: Added an explicit reminder at the top that the
information in this file is historical in nature and does not necessarily apply to current reality. * README: Updated the season from "summer" to "Fall" ;-) Also added a note that warned people not to try to link TAO with a version of ACE that's linked with another ORB library, e.g., liborbix.so. Thanks to Steven Wohlever <wohlever@mitre.org> for bringing this instructional omission to our attention. * tao/tao_internals.cpp (fake_service_entries_i): Made the body of this function conditional on the TAO_PLATFORM_SVC_CONF_FILE_NOTSUP preprocessor definition since it doesn't need to exist in platforms that grok the Service Configurator. This will also reduce the memory footprint :-). Thanks to David Miron <dxm@crapper.dsto.defence.gov.au> for pointing this out! * tao/orb_core.cpp (TAO_ORB_Core): Removed explicit CTOR initialization of reactor_ member.
-rw-r--r--TAO/ChangeLog-98c36
-rw-r--r--TAO/README9
-rw-r--r--TAO/README.sun10
-rw-r--r--TAO/VERSION3
-rw-r--r--TAO/docs/releasenotes/orbcore.html23
-rw-r--r--TAO/tao/orbobj.cpp11
-rw-r--r--TAO/tao/orbobj.h4
-rw-r--r--TAO/tao/orbobj.i2
-rw-r--r--TAO/tao/tao_internals.cpp14
9 files changed, 88 insertions, 24 deletions
diff --git a/TAO/ChangeLog-98c b/TAO/ChangeLog-98c
index c89a2a21580..4364fd71d9f 100644
--- a/TAO/ChangeLog-98c
+++ b/TAO/ChangeLog-98c
@@ -1,3 +1,31 @@
+Wed Oct 22 20:02:39 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * README.sun: Added an explicit reminder at the top that the
+ information in this file is historical in nature and does not
+ necessarily apply to current reality.
+
+ * tao/orbobj.* (shutdown): Added code to the run() event loop so
+ that it will terminate when it finds a flag set. This involved
+ adding the flag to the ORB's state and minimally implementing the
+ shutdown() method. The shutdown method still does not honor the
+ "wait for completion" flag which can be passed to it, though.
+
+ * README: Updated the season from "summer" to "Fall" ;-) Also
+ added a note that warned people not to try to link TAO with a
+ version of ACE that's linked with another ORB library, e.g.,
+ liborbix.so. Thanks to Steven Wohlever <wohlever@mitre.org> for
+ bringing this instructional omission to our attention.
+
+ * tao/tao_internals.cpp (fake_service_entries_i): Made the body of
+ this function conditional on the TAO_PLATFORM_SVC_CONF_FILE_NOTSUP
+ preprocessor definition since it doesn't need to exist in
+ platforms that grok the Service Configurator. This will also
+ reduce the memory footprint :-). Thanks to David Miron
+ <dxm@crapper.dsto.defence.gov.au> for pointing this out!
+
+ * tao/orb_core.cpp (TAO_ORB_Core): Removed explicit CTOR
+ initialization of reactor_ member.
+
Wed Oct 22 19:37:22 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
* TAO IDL Compiler: Improvements made so that the server-side
@@ -44,11 +72,11 @@ Tue Oct 21 17:21:51 1997 Chris Cleeland <cleeland@cs.wustl.edu>
Tue Oct 21 13:23:48 1997 Brian Mendel <brian.r.mendel@boeing.com>
- * tao/connect.i: Moved hash_i and compare_i template
+ * tao/connect.i: Moved hash_i and compare_i template
specialization to Orb_Core.i. Original code was left comment
out until this mod is checked on all platforms.
- * tao/Orb_Core.i: Added hash_i and compare_i code from connect.i.
+ * tao/Orb_Core.i: Added hash_i and compare_i code from connect.i.
Tue Oct 21 03:23:29 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
@@ -62,10 +90,10 @@ Tue Oct 21 02:24:14 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
Mon Oct 20 23:42:48 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
- * TAO/boa: Changed BOA_init() to POA_init() to be
+ * TAO/boa: Changed BOA_init() to POA_init() to be
more consistent...
- * TAO_IDL/be/be_interface.cpp,
+ * TAO_IDL/be/be_interface.cpp,
tests/TAO/Thruput_test/server.cpp,
tests/TAO/Thruput_test/ttcpS.cpp,
tests/TAO/RT_test/Task_Client.cpp,
diff --git a/TAO/README b/TAO/README
index dbca2441c84..ae5188e9fed 100644
--- a/TAO/README
+++ b/TAO/README
@@ -24,7 +24,7 @@ following:
* The real-time scheduling service.
We're currently working on these features and we plan to release them
-throughout the summer of 1997. Please note that no amount of proding
+throughout the Fall of 1997. Please note that no amount of proding
will get them out any faster, unless you are willing to contribute
time and/or $$$ to the effort.
@@ -35,11 +35,16 @@ that TAO does not provide all the features of a commercial ORB at the
moment.
Key components in TAO (e.g., the Object Adapter) will change
-substantially over the summer. Thus, any development performed in the
+substantially over the Fall. Thus, any development performed in the
interim will require additional effort (e.g., writing stubs and
skeletons by hand), and applications may need to be re-written to work
with new features in the forthcoming releases.
+A quick build note for users who have used ACE with other ORBs:
+linking TAO with a version of ACE that must also be linked against
+another ORB vendor's library, e.g., liborbix.so, will produce
+undefined and most likely unpredictable and erroneous results.
+
If you have any questions, please post them to the ACE mailing list
(ace-users@cs.wustl.edu) until we get a TAO mailing list established.
diff --git a/TAO/README.sun b/TAO/README.sun
index 789d97b7bcc..b8ff647db2b 100644
--- a/TAO/README.sun
+++ b/TAO/README.sun
@@ -1,9 +1,13 @@
========================================
This file contains the original README that came with the SunSoft IIOP
-release. The information contained here is largely obsolete by the
-features added to TAO. Please see the ./README file that comes with
-TAO for up-to-date information.
+release. This information in this file is historical in nature and
+the much of the specific information probably is inaccurate with
+respect to the current state of TAO. Please see the ./README file
+that comes with TAO for up-to-date information.
+
+Specifically, many of the file referred to in here may not appear in
+TAO.
========================================
diff --git a/TAO/VERSION b/TAO/VERSION
index 20822649c7c..fea95aeb511 100644
--- a/TAO/VERSION
+++ b/TAO/VERSION
@@ -1,4 +1,5 @@
This is TAO version 0.0.13, released Tue Oct 21 02:24:14 1997.
If you have any problems with TAO, please send email to Douglas
-C. Schmidt (schmidt@cs.wustl.edu).
+C. Schmidt (schmidt@cs.wustl.edu) and Chris Cleeland
+(cleeland@cs.wustl.edu).
diff --git a/TAO/docs/releasenotes/orbcore.html b/TAO/docs/releasenotes/orbcore.html
index 9b7c09924a8..0e6b9cca7ac 100644
--- a/TAO/docs/releasenotes/orbcore.html
+++ b/TAO/docs/releasenotes/orbcore.html
@@ -27,6 +27,15 @@
Recently Completed Work:
<BLOCKQUOTE>
+ <li>Debate details of <code>Svc_Handler</code> modifications
+ with Irfan.</li>
+
+ <li>Test and commit <code>Connector::connect_n</code> changes
+ to ACE</code>.</li>
+
+ <li>ACE & TAO compiling cleanly using Sun's CC on Solaris and
+ G++ on Linux. Also, the ACE tests run properly.</li>
+
<li>Use <code>truss</code> to verify for <a
href="mailto:PAUL.G.WEHLAGE@cdev.com">Paul Wehlage</a> that
TAO really uses <code>select</code> vs. <code>recv</code> for
@@ -87,6 +96,17 @@
Critical Work:
<BLOCKQUOTE>
+ <li>Create a section in <a
+ href="../../TAO-Install.html"><code>$TAO_ROOT/TAO-Install.html</code></a>
+ that documents installation on Unix platforms. There should
+ also be a section documents issues that apply across ALL
+ platforms, such as the fact that TAO and its application will
+ likely not work well if your ACE is linked through Orbix,
+ VisiBroker, or another ORB.
+ <a href="../../ChangeLog">ChangeLog</a> discovery attribution for
+ this should go to <em>Steve Wohlever
+ &lt;wohlever@mitre.org&gt;</em>.</li>
+
<LI>Implement <code>CORBA_ORB::shutdown()</code> as a manner
in which a thread of control can request that
<code>CORBA_ORB::run()</code> should return and no longer
@@ -118,6 +138,9 @@
Future work:
<UL>
+ <li>Implement the <code>CORBA::ORB::shutdown()</code> method
+ so that it honors the <em>wait_for_completion</em> flag.
+
<li>Get rid of need to have compile in TSS ORB Core
(<code>-DTAO_HAS_TSS_ORBCORE</code>).</li>
diff --git a/TAO/tao/orbobj.cpp b/TAO/tao/orbobj.cpp
index ec17dddd4f2..b0edfd663ba 100644
--- a/TAO/tao/orbobj.cpp
+++ b/TAO/tao/orbobj.cpp
@@ -52,7 +52,8 @@ CORBA_ORB::CORBA_ORB (void)
client_factory_ (0),
client_factory_from_service_config_ (CORBA::B_FALSE),
server_factory_ (0),
- server_factory_from_service_config_ (CORBA::B_FALSE)
+ server_factory_from_service_config_ (CORBA::B_FALSE),
+ should_shutdown_(CORBA::B_FALSE)
{
this->refcount_ = 1;
}
@@ -514,7 +515,7 @@ CORBA_ORB::run (ACE_Time_Value *tv)
// Loop "forever" handling client requests.
- for (;;)
+ while (this->should_shutdown_ == 0)
switch (r->handle_events (tv))
{
case 0: // Timed out, so we return to caller.
@@ -525,12 +526,6 @@ CORBA_ORB::run (ACE_Time_Value *tv)
/* NOTREACHED */
default: // Some handlers were dispatched, so keep on processing
// requests until we're told to shutdown .
-#if 0
- // @@ How can we figure out how to get the right POA pointer
- // to shutdown the ORB here?
- if (poa->shutting_down ())
- return 1;
-#endif /* 0 */
break;
/* NOTREACHED */
}
diff --git a/TAO/tao/orbobj.h b/TAO/tao/orbobj.h
index e0310fed273..577f45ab06f 100644
--- a/TAO/tao/orbobj.h
+++ b/TAO/tao/orbobj.h
@@ -159,6 +159,10 @@ private:
TAO_ACCEPTOR peer_acceptor_;
// The acceptor passively listening for connection requests.
+ CORBA::Boolean should_shutdown_;
+ // Flag which denotes that the ORB should shut down and <run> should
+ // return.
+
// = NON-PROVIDED METHODS
CORBA_ORB (const CORBA_ORB &);
CORBA_ORB &operator= (const CORBA_ORB &);
diff --git a/TAO/tao/orbobj.i b/TAO/tao/orbobj.i
index a68d5b9c671..2d0cec31107 100644
--- a/TAO/tao/orbobj.i
+++ b/TAO/tao/orbobj.i
@@ -59,6 +59,8 @@ ACE_INLINE void
CORBA_ORB::shutdown (CORBA::Boolean wait_for_completion)
{
ACE_UNUSED_ARG (wait_for_completion);
+
+ this->should_shutdown_ = CORBA::B_TRUE;
return;
}
diff --git a/TAO/tao/tao_internals.cpp b/TAO/tao/tao_internals.cpp
index 67704dea767..a403000d785 100644
--- a/TAO/tao/tao_internals.cpp
+++ b/TAO/tao/tao_internals.cpp
@@ -18,6 +18,7 @@ int TAO_Internal::service_open_count_ = 0;
int
TAO_Internal::fake_service_entries_i (void)
{
+#if defined(TAO_PLATFORM_SVC_CONF_FILE_NOTSUP)
#define FAKE_SVC_ENTRY(svcname, svctype, argc, argv) \
do \
{ \
@@ -38,16 +39,17 @@ TAO_Internal::fake_service_entries_i (void)
TAO_Default_Client_Strategy_Factory,
0, client_args);
-char* server_args[] = {
+ char* server_args[] = {
#if ! defined(TAO_HAS_TSS_ORBCORE)
- "-T",
+ "-T",
#else
- "-R",
-#endif
- "-L", "dynamic", "-o", "128", 0 };
-FAKE_SVC_ENTRY ("Server_Strategy_Factory",
+ "-R",
+#endif /* ! TAO_HAS_TSS_ORBCORE */
+ "-L", "dynamic", "-o", "128", 0 };
+ FAKE_SVC_ENTRY ("Server_Strategy_Factory",
TAO_Default_Server_Strategy_Factory,
sizeof(server_args)/sizeof(server_args[0]), server_args);
+#endif /* TAO_PLATFORM_SVC_CONF_FILE_NOTSUP */
return 0;
}