summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoralex <alex@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-07-04 02:39:38 +0000
committeralex <alex@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-07-04 02:39:38 +0000
commitd119bd3b1ec8b52a531818fab5b9c7620f5b3155 (patch)
treefa20ad8688665e60986f04647f1dbb6f186fc78f
parentd5ac3c433e2636ada19f9dc9e6ecf4661cb416fa (diff)
downloadATCD-d119bd3b1ec8b52a531818fab5b9c7620f5b3155.tar.gz
ChangeLogTag:Sat Jul 3 10:54:00 1999 Alexander Babu Arulanthu <alex@cs.wustl.edu>
-rw-r--r--TAO/ChangeLog-99c2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_factory.cpp6
-rw-r--r--TAO/TAO_IDL/be_include/be_codegen.h2
-rw-r--r--TAO/tao/Asynch_Invocation.cpp19
-rw-r--r--TAO/tao/Asynch_Invocation.h24
-rw-r--r--TAO/tao/Asynch_Invocation.i2
-rw-r--r--TAO/tao/Invocation.cpp23
-rw-r--r--TAO/tao/Invocation.h20
-rw-r--r--TAO/tests/AMI/test.idl8
9 files changed, 44 insertions, 62 deletions
diff --git a/TAO/ChangeLog-99c b/TAO/ChangeLog-99c
index 539dd0b4e0f..56be71e0df0 100644
--- a/TAO/ChangeLog-99c
+++ b/TAO/ChangeLog-99c
@@ -1,5 +1,5 @@
Sat Jul 3 10:54:00 1999 Alexander Babu Arulanthu <alex@cs.wustl.edu>
-
+
* Makefile
* client.tss.conf
* server.dsp
diff --git a/TAO/TAO_IDL/be/be_visitor_factory.cpp b/TAO/TAO_IDL/be/be_visitor_factory.cpp
index 66ec783d49e..30b10a4418e 100644
--- a/TAO/TAO_IDL/be/be_visitor_factory.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_factory.cpp
@@ -636,9 +636,6 @@ TAO_Interpretive_Visitor_Factory::make_visitor (be_visitor_context *ctx)
case TAO_CodeGen::TAO_AMI_HANDLER_STUB_OPERATION_CS:
return new be_interpretive_visitor_operation_ami_handler_operation_cs (new_ctx);
-
- case TAO_CodeGen::TAO_AMI_HANDLER_SKELETON_CS:
- return new be_interpretive_visitor_operation_ami_handler_skeleton_cs (new_ctx);
case TAO_CodeGen::TAO_AMI_HANDLER_OPERATION_ARGLIST_CH:
case TAO_CodeGen::TAO_AMI_HANDLER_OPERATION_ARGLIST_CS:
@@ -823,9 +820,6 @@ TAO_Compiled_Visitor_Factory::make_visitor (be_visitor_context *ctx)
case TAO_CodeGen::TAO_AMI_HANDLER_STUB_OPERATION_CS:
return new be_compiled_visitor_operation_ami_handler_operation_cs (new_ctx);
- case TAO_CodeGen::TAO_AMI_HANDLER_SKELETON_CS:
- return new be_compiled_visitor_operation_ami_handler_skeleton_cs (new_ctx);
-
case TAO_CodeGen::TAO_AMI_HANDLER_OPERATION_ARGLIST_CH:
case TAO_CodeGen::TAO_AMI_HANDLER_OPERATION_ARGLIST_CS:
return new be_visitor_operation_ami_handler_arglist (new_ctx);
diff --git a/TAO/TAO_IDL/be_include/be_codegen.h b/TAO/TAO_IDL/be_include/be_codegen.h
index e7762aaf033..d8e3f23a0eb 100644
--- a/TAO/TAO_IDL/be_include/be_codegen.h
+++ b/TAO/TAO_IDL/be_include/be_codegen.h
@@ -318,6 +318,8 @@ public:
TAO_AMI_ARGUMENT_INVOKE_CS,
+ TAO_AMI_HANDLER_SKELETON_CS,
+
// Emitting code for root.
TAO_ROOT_CH,
TAO_ROOT_CI,
diff --git a/TAO/tao/Asynch_Invocation.cpp b/TAO/tao/Asynch_Invocation.cpp
index 6da79901ece..d81b84caec0 100644
--- a/TAO/tao/Asynch_Invocation.cpp
+++ b/TAO/tao/Asynch_Invocation.cpp
@@ -46,26 +46,11 @@ ACE_TIMEPROBE_EVENT_DESCRIPTIONS (TAO_Asynch_Invocation_Timeprobe_Description,
#endif /* ACE_ENABLE_TIMEPROBES */
-TAO_GIOP_Asynch_Invocation::TAO_GIOP_Asynch_Invocation (TAO_Stub *stub,
- const char *operation,
- TAO_ORB_Core* orb_core)
- : TAO_GIOP_Invocation (stub,
- operation,
- orb_core)
-{
-}
-
-TAO_GIOP_Asynch_Invocation::~TAO_GIOP_Asynch_Invocation (void)
-{
-}
-
-// ****************************************************************
-
void
TAO_GIOP_Twoway_Asynch_Invocation::start (CORBA::Environment &ACE_TRY_ENV)
ACE_THROW_SPEC ((CORBA::SystemException))
{
- this->TAO_GIOP_Asynch_Invocation::start (ACE_TRY_ENV);
+ this->TAO_GIOP_Invocation::start (ACE_TRY_ENV);
ACE_CHECK;
// If there was a previous reply, cleanup its state first.
@@ -242,7 +227,7 @@ TAO_GIOP_Twoway_Asynch_Invocation::invoke_i (CORBA::Environment &ACE_TRY_ENV)
}
// Just send the request, without trying to wait for the reply.
- retval = TAO_GIOP_Asynch_Invocation::invoke (1, ACE_TRY_ENV);
+ retval = TAO_GIOP_Invocation::invoke (1, ACE_TRY_ENV);
ACE_CHECK_RETURN (retval);
if (retval != TAO_INVOKE_OK)
diff --git a/TAO/tao/Asynch_Invocation.h b/TAO/tao/Asynch_Invocation.h
index 7a69952af68..d14755c52d0 100644
--- a/TAO/tao/Asynch_Invocation.h
+++ b/TAO/tao/Asynch_Invocation.h
@@ -24,29 +24,7 @@
#include "tao/Invocation.h"
#include "tao/MessagingC.h"
-class TAO_Export TAO_GIOP_Asynch_Invocation : public TAO_GIOP_Invocation
-{
- // = TITLE
- // Encapsulates common behavior for Asynch_Invocations.
- //
- // = DESCRIPTION
- //
-public:
-
- // = Initialization and termination methods.
-
- TAO_GIOP_Asynch_Invocation (TAO_Stub *data,
- const char *operation,
- TAO_ORB_Core* orb_core);
- // Constructor.
-
- ~TAO_GIOP_Asynch_Invocation (void);
- // Destructor.
-};
-
-// ****************************************************************
-
-class TAO_Export TAO_GIOP_Twoway_Asynch_Invocation : public TAO_GIOP_Asynch_Invocation
+class TAO_Export TAO_GIOP_Twoway_Asynch_Invocation : public TAO_GIOP_Invocation
{
// = TITLE
// Sends a two-way request does not expect the reply.
diff --git a/TAO/tao/Asynch_Invocation.i b/TAO/tao/Asynch_Invocation.i
index bcf2c6b1319..f0ee0f78404 100644
--- a/TAO/tao/Asynch_Invocation.i
+++ b/TAO/tao/Asynch_Invocation.i
@@ -10,7 +10,7 @@ TAO_GIOP_Twoway_Asynch_Invocation (TAO_Stub *stub,
TAO_ORB_Core *orb_core,
const TAO_Reply_Handler_Skeleton &reply_handler_skel,
Messaging::ReplyHandler_ptr reply_handler_ptr)
- : TAO_GIOP_Asynch_Invocation (stub, operation, orb_core),
+ : TAO_GIOP_Invocation (stub, operation, orb_core),
message_state_ (0),
rd_ (0)
{
diff --git a/TAO/tao/Invocation.cpp b/TAO/tao/Invocation.cpp
index 8d7db713fb2..f2e4967a9cc 100644
--- a/TAO/tao/Invocation.cpp
+++ b/TAO/tao/Invocation.cpp
@@ -85,8 +85,6 @@ TAO_GIOP_Invocation::TAO_GIOP_Invocation (TAO_Stub *stub,
TAO_GIOP_Invocation::~TAO_GIOP_Invocation (void)
{
- //if (this->transport_ != 0)
- //this->transport_->idle ();
}
// The public API involves creating an invocation, starting it, filling
@@ -249,8 +247,6 @@ TAO_GIOP_Invocation::invoke (CORBA::Boolean is_roundtrip,
return TAO_INVOKE_OK;
}
-// ****************************************************************
-
int
TAO_GIOP_Invocation::close_connection (void)
{
@@ -365,6 +361,12 @@ TAO_GIOP_Invocation::location_forward (TAO_InputCDR &inp_stream,
// ****************************************************************
+TAO_GIOP_Twoway_Invocation::~TAO_GIOP_Twoway_Invocation (void)
+{
+ if (this->transport_ != 0)
+ this->transport_->idle ();
+}
+
void
TAO_GIOP_Twoway_Invocation::start (CORBA::Environment &ACE_TRY_ENV)
ACE_THROW_SPEC ((CORBA::SystemException))
@@ -706,6 +708,12 @@ TAO_GIOP_Twoway_Invocation::invoke_i (CORBA::Environment &ACE_TRY_ENV)
// ****************************************************************
+TAO_GIOP_Oneway_Invocation::~TAO_GIOP_Oneway_Invocation (void)
+{
+ if (this->transport_ != 0)
+ this->transport_->idle ();
+}
+
void
TAO_GIOP_Oneway_Invocation::start (CORBA::Environment &ACE_TRY_ENV)
ACE_THROW_SPEC ((CORBA::SystemException))
@@ -724,8 +732,13 @@ TAO_GIOP_Oneway_Invocation::start (CORBA::Environment &ACE_TRY_ENV)
// ****************************************************************
-// Send request, block until any reply comes back
+TAO_GIOP_Locate_Request_Invocation::~TAO_GIOP_Locate_Request_Invocation (void)
+{
+ if (this->transport_ != 0)
+ this->transport_->idle ();
+}
+// Send request, block until any reply comes back.
void
TAO_GIOP_Locate_Request_Invocation::start (CORBA::Environment &ACE_TRY_ENV)
ACE_THROW_SPEC ((CORBA::SystemException))
diff --git a/TAO/tao/Invocation.h b/TAO/tao/Invocation.h
index 2377c2e0d64..9bc171d7df3 100644
--- a/TAO/tao/Invocation.h
+++ b/TAO/tao/Invocation.h
@@ -73,8 +73,9 @@ public:
virtual ~TAO_GIOP_Invocation (void);
// Destructor.
- // @@ Carlos: I put a virtual here. Was it not there because of some
- // performance issues. (Alex).
+ // @@ Carlos: I have put a virtual here, since I have moved the
+ // <transport_->idle ()> code to the destructors of the derived
+ // class. (Alex).
void put_param (CORBA::TypeCode_ptr tc,
void *value,
@@ -164,10 +165,13 @@ class TAO_Export TAO_GIOP_Twoway_Invocation : public TAO_GIOP_Invocation
// incoming CDR stream.
//
public:
- // = Initialization and termination methods.
TAO_GIOP_Twoway_Invocation (TAO_Stub *data,
const char *operation,
TAO_ORB_Core* orb_core);
+ // Constructor.
+
+ ~TAO_GIOP_Twoway_Invocation (void);
+ // Destructor.
void start (CORBA_Environment &TAO_IN_ENV =
TAO_default_environment ())
@@ -222,10 +226,13 @@ class TAO_Export TAO_GIOP_Oneway_Invocation : public TAO_GIOP_Invocation
// Sends a oneway request.
//
public:
- // = Initialization and termination methods.
TAO_GIOP_Oneway_Invocation (TAO_Stub *data,
const char *operation,
TAO_ORB_Core* orb_core);
+ // Constructor.
+
+ ~TAO_GIOP_Oneway_Invocation (void);
+ // Destructor.
void start (CORBA_Environment &TAO_IN_ENV =
TAO_default_environment ())
@@ -246,9 +253,12 @@ class TAO_Export TAO_GIOP_Locate_Request_Invocation : public TAO_GIOP_Invocation
// Sends a locate request.
//
public:
- // = Initialization and termination methods.
TAO_GIOP_Locate_Request_Invocation (TAO_Stub *data,
TAO_ORB_Core* orb_core);
+ // Constructor.
+
+ ~TAO_GIOP_Locate_Request_Invocation (void);
+ // Destructor.
void start (CORBA_Environment &TAO_IN_ENV =
TAO_default_environment ())
diff --git a/TAO/tests/AMI/test.idl b/TAO/tests/AMI/test.idl
index af47dd1dbf7..376da4a58c6 100644
--- a/TAO/tests/AMI/test.idl
+++ b/TAO/tests/AMI/test.idl
@@ -4,13 +4,13 @@
interface Simple_Server
{
- void test_method ();
+ // void test_method ();
long get_number ();
- void put_number (in long l);
+ // void put_number (in long l);
- long get_put_number (out long out_l, in long in_l);
+ // long get_put_number (out long out_l, in long in_l);
- oneway void shutdown ();
+ // oneway void shutdown ();
};