summaryrefslogtreecommitdiff
path: root/TAO/tests/Portable_Interceptors/Processing_Mode_Policy/Collocated/test_i.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tests/Portable_Interceptors/Processing_Mode_Policy/Collocated/test_i.cpp')
-rw-r--r--TAO/tests/Portable_Interceptors/Processing_Mode_Policy/Collocated/test_i.cpp52
1 files changed, 52 insertions, 0 deletions
diff --git a/TAO/tests/Portable_Interceptors/Processing_Mode_Policy/Collocated/test_i.cpp b/TAO/tests/Portable_Interceptors/Processing_Mode_Policy/Collocated/test_i.cpp
new file mode 100644
index 00000000000..547a8c5366c
--- /dev/null
+++ b/TAO/tests/Portable_Interceptors/Processing_Mode_Policy/Collocated/test_i.cpp
@@ -0,0 +1,52 @@
+// $Id$
+
+#include "test_i.h"
+#include "ace/OS_NS_unistd.h"
+
+ACE_RCSID(Dynamic, test_i, "$Id$")
+
+Visual_i::Visual_i (CORBA::ORB_ptr orb)
+ : orb_ (CORBA::ORB::_duplicate (orb))
+{
+}
+ // ctor
+
+void
+Visual_i::normal (CORBA::Long)
+{
+ // ACE_DEBUG ((LM_DEBUG, "Visual::normal called with %d\n", arg));
+}
+
+CORBA::Long
+Visual_i::calculate (CORBA::Long one,
+ CORBA::Long two)
+{
+ // ACE_DEBUG ((LM_DEBUG, "Visual::calculate\n"));
+ return (one + two);
+}
+
+void
+Visual_i::user (void)
+{
+ // ACE_DEBUG ((LM_DEBUG, "Visual::user, throwning Silly\n"));
+ throw Test_Interceptors::Silly ();
+}
+
+void
+Visual_i::system (void)
+{
+ // ACE_DEBUG ((LM_DEBUG, "Visual::user, throwing INV_OBJREF\n"));
+ throw CORBA::INV_OBJREF ();
+}
+
+void
+Visual_i::shutdown (void)
+{
+ this->_remove_ref ();
+
+ // Give the client thread time to return from the collocated
+ // call to this method before shutting down the ORB. We sleep
+ // to avoid BAD_INV_ORDER exceptions on fast dual processor machines.
+ ACE_OS::sleep(1);
+ this->orb_->shutdown ();
+}