summaryrefslogtreecommitdiff
path: root/TAO/tao/POA.cpp
diff options
context:
space:
mode:
authorirfan <irfan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1998-05-25 18:18:05 +0000
committerirfan <irfan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1998-05-25 18:18:05 +0000
commita6d71a3d9cc64176ae6199c70fe1e991e274a643 (patch)
treea16d658010f0d97db04e87ad6f6d171fe7231355 /TAO/tao/POA.cpp
parentf948b190934fb38d8fee99b392d6c90fa66a97c2 (diff)
downloadATCD-a6d71a3d9cc64176ae6199c70fe1e991e274a643.tar.gz
*** empty log message ***
Diffstat (limited to 'TAO/tao/POA.cpp')
-rw-r--r--TAO/tao/POA.cpp38
1 files changed, 28 insertions, 10 deletions
diff --git a/TAO/tao/POA.cpp b/TAO/tao/POA.cpp
index 7ecd4cb4fb7..4cea5adf527 100644
--- a/TAO/tao/POA.cpp
+++ b/TAO/tao/POA.cpp
@@ -4,9 +4,8 @@
# include "tao/corba.h"
-#if !defined (__ACE_INLINE__)
-# include "tao/POA.i"
-#endif /* ! __ACE_INLINE__ */
+// Timeprobes class
+#include "tao/Timeprobe.h"
// auto_ptr class
#include "ace/Auto_Ptr.h"
@@ -14,6 +13,10 @@
// Forwarding Servant class
#include "tao/Forwarding_Servant.h"
+#if !defined (__ACE_INLINE__)
+# include "tao/POA.i"
+#endif /* ! __ACE_INLINE__ */
+
// This is the maximum space require to convert the ulong into a
// string.
const int TAO_POA::max_space_required_for_ulong = 24;
@@ -1760,6 +1763,8 @@ TAO_POA::locate_poa_i (const TAO_ObjectKey &key,
PortableServer::ObjectId &id,
CORBA::Environment &env)
{
+ ACE_FUNCTION_TIMEPROBE (TAO_POA_LOCATE_POA_I_START);
+
TAO_POA::String poa_name;
CORBA::Boolean persistent = CORBA::B_FALSE;
TAO_Temporary_Creation_Time poa_creation_time;
@@ -1912,6 +1917,8 @@ TAO_POA::locate_poa_and_servant_i (const TAO_ObjectKey &key,
TAO_POA *&poa_impl,
CORBA::Environment &env)
{
+ ACE_FUNCTION_TIMEPROBE (TAO_POA_LOCATE_POA_AND_SERVANT_I_START);
+
poa_impl = this->locate_poa_i (key,
id,
env);
@@ -1925,9 +1932,14 @@ TAO_POA::locate_poa_and_servant_i (const TAO_ObjectKey &key,
if (poa_impl->policies ().servant_retention () == PortableServer::RETAIN)
{
PortableServer::Servant servant = 0;
- if (poa_impl->active_object_map ().find (id, servant) != -1)
- // Success
- return servant;
+
+ {
+ ACE_FUNCTION_TIMEPROBE (TAO_POA_FIND_SERVANT_START);
+
+ if (poa_impl->active_object_map ().find (id, servant) != -1)
+ // Success
+ return servant;
+ }
}
// If the POA has the NON_RETAIN policy or has the RETAIN policy but
@@ -2104,10 +2116,14 @@ TAO_POA::dispatch_servant_i (const TAO_ObjectKey &key,
&current_context,
env);
- // Upcall
- servant->_dispatch (req,
- context,
- env);
+ {
+ ACE_FUNCTION_TIMEPROBE (TAO_SERVANT_DISPATCH_START);
+
+ // Upcall
+ servant->_dispatch (req,
+ context,
+ env);
+ }
// Cleanup from upcall
poa->post_invoke (servant,
@@ -2182,6 +2198,8 @@ TAO_POA::parse_key (const TAO_ObjectKey &key,
CORBA::Boolean &persistent,
TAO_Temporary_Creation_Time &poa_creation_time)
{
+ ACE_FUNCTION_TIMEPROBE (TAO_POA_PARSE_KEY_START);
+
// Try to find the last separator
int last_token_position = this->rfind (key, TAO_POA::name_separator ());