Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

Asynch_Invocation.cpp

Go to the documentation of this file.
00001 #include "tao_pch.h"
00002 // $Id: Asynch_Invocation.cpp,v 1.1.1.4.2.1 2003/03/14 16:05:12 chad Exp $
00003 
00004 
00005 #include "tao/Asynch_Invocation.h"
00006 
00007 #include "tao/Timeprobe.h"
00008 #include "tao/Stub.h"
00009 #include "tao/Profile.h"
00010 #include "tao/Object_KeyC.h"
00011 #include "tao/Transport_Mux_Strategy.h"
00012 #include "tao/Transport.h"
00013 
00014 #if !defined (__ACE_INLINE__)
00015 # include "tao/Asynch_Invocation.i"
00016 #endif /* ! __ACE_INLINE__ */
00017 
00018 ACE_RCSID (tao,
00019            Asynch_Invocation,
00020            "$Id: Asynch_Invocation.cpp,v 1.1.1.4.2.1 2003/03/14 16:05:12 chad Exp $")
00021 
00022 #if defined (ACE_ENABLE_TIMEPROBES)
00023 
00024 static const char *TAO_Asynch_Invocation_Timeprobe_Description[] =
00025   {
00026     "GIOP_Asynch_Invocation::invoke - start",
00027     "GIOP_Asynch_Invocation::invoke - end",
00028 
00029     "GIOP_Asynch_Invocation::start - enter",
00030     "GIOP_Asynch_Invocation::start - leave",
00031     "GIOP_Asynch_Invocation::start - connect",
00032     "GIOP_Asynch_Invocation::start - start_msg",
00033     "GIOP_Asynch_Invocation::start - request_hdr"
00034   };
00035 
00036 enum
00037   {
00038     TAO_GIOP_ASYNCH_INVOCATION_INVOKE_START = 1100,
00039     TAO_GIOP_ASYNCH_INVOCATION_INVOKE_END,
00040 
00041     TAO_GIOP_ASYNCH_INVOCATION_START_ENTER,
00042     TAO_GIOP_ASYNCH_INVOCATION_START_LEAVE,
00043     TAO_GIOP_ASYNCH_INVOCATION_START_CONNECT,
00044     TAO_GIOP_ASYNCH_INVOCATION_START_START_MSG,
00045     TAO_GIOP_ASYNCH_INVOCATION_START_REQUEST_HDR
00046   };
00047 
00048 
00049 // Setup Timeprobes
00050 ACE_TIMEPROBE_EVENT_DESCRIPTIONS (TAO_Asynch_Invocation_Timeprobe_Description,
00051                                   TAO_GIOP_ASYNCH_INVOCATION_INVOKE_START);
00052 
00053 #endif /* ACE_ENABLE_TIMEPROBES */
00054 
00055 TAO_GIOP_Asynch_Invocation::TAO_GIOP_Asynch_Invocation (void)
00056   : rd_ (0)
00057 {
00058 }
00059 
00060 int
00061 TAO_GIOP_Asynch_Invocation::invoke (ACE_ENV_SINGLE_ARG_DECL)
00062     ACE_THROW_SPEC ((CORBA::SystemException))
00063 {
00064   TAO_FUNCTION_PP_TIMEPROBE (TAO_GIOP_ASYNCH_INVOCATION_INVOKE_START);
00065 
00066   return this->invoke_i (ACE_ENV_SINGLE_ARG_PARAMETER);
00067 }
00068 
00069 void
00070 TAO_GIOP_Asynch_Invocation::start (ACE_ENV_SINGLE_ARG_DECL)
00071   ACE_THROW_SPEC ((CORBA::SystemException))
00072 {
00073   this->TAO_GIOP_Invocation::start (ACE_ENV_SINGLE_ARG_PARAMETER);
00074   ACE_CHECK;
00075 
00076   this->target_spec_.target_specifier (this->profile_->object_key ());
00077 }
00078 
00079 // **************************************************************************

Generated on Mon Jun 16 13:48:01 2003 for TAO by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002