summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwolff1 <wolff1@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2009-03-17 17:46:05 +0000
committerwolff1 <wolff1@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2009-03-17 17:46:05 +0000
commit522c03b61fb74c6224b743bf5941c9a51e75f286 (patch)
tree0a9c009f2addb3585b320d6d1e6213356ddaf379
parent94ca646687d2a4cd67e0a77f9c2a287007921c7b (diff)
downloadATCD-522c03b61fb74c6224b743bf5941c9a51e75f286.tar.gz
ChangeLogTag: Tue Mar 17 17:45:13 UTC 2009 Friedhelm Wolf <fwolf@dre.vanderbilt.edu>
-rw-r--r--CIAO/ChangeLog15
-rw-r--r--CIAO/DAnCE/tests/CIAO/FTComponents/FTClient_Timer_Handler.cpp20
-rw-r--r--CIAO/DAnCE/tests/CIAO/FTComponents/FTClient_Timer_Handler.h4
-rw-r--r--CIAO/DAnCE/tests/CIAO/FTComponents/FTClient_exec.cpp4
-rw-r--r--CIAO/DAnCE/tests/CIAO/FTComponents/FTClient_exec.h2
-rw-r--r--CIAO/DAnCE/tests/CIAO/FTComponents/FTTask_exec.cpp13
-rw-r--r--CIAO/DAnCE/tests/CIAO/FTComponents/FTTask_exec.h4
-rw-r--r--CIAO/DAnCE/tests/CIAO/FTComponents/Trigger.idl2
-rw-r--r--CIAO/DAnCE/tests/CIAO/FTComponents/Worker.idl7
-rw-r--r--CIAO/DAnCE/tests/CIAO/FTComponents/client_trigger.cpp9
10 files changed, 63 insertions, 17 deletions
diff --git a/CIAO/ChangeLog b/CIAO/ChangeLog
index 1d545f2dba8..17313f32563 100644
--- a/CIAO/ChangeLog
+++ b/CIAO/ChangeLog
@@ -1,3 +1,18 @@
+Tue Mar 17 17:45:13 UTC 2009 Friedhelm Wolf <fwolf@dre.vanderbilt.edu>
+
+ * DAnCE/tests/CIAO/FTComponents/Worker.idl
+ * DAnCE/tests/CIAO/FTComponents/FTTask_exec.cpp
+ * DAnCE/tests/CIAO/FTComponents/client_trigger.cpp
+ * DAnCE/tests/CIAO/FTComponents/FTTask_exec.h
+ * DAnCE/tests/CIAO/FTComponents/FTClient_Timer_Handler.cpp
+ * DAnCE/tests/CIAO/FTComponents/FTClient_Timer_Handler.h
+ * DAnCE/tests/CIAO/FTComponents/FTClient_exec.cpp
+ * DAnCE/tests/CIAO/FTComponents/FTClient_exec.h
+ * DAnCE/tests/CIAO/FTComponents/Trigger.idl:
+
+ Added prefix paramter to the trigger interface and added a
+ return value for the processing time to the Worker interface.
+
Mon Mar 16 17:36:12 UTC 2009 Friedhelm Wolf <fwolf@dre.vanderbilt.edu>
* DAnCE/tests/CIAO/FTComponents/FTTask_exec.cpp
diff --git a/CIAO/DAnCE/tests/CIAO/FTComponents/FTClient_Timer_Handler.cpp b/CIAO/DAnCE/tests/CIAO/FTComponents/FTClient_Timer_Handler.cpp
index be7e72bc1bb..bafe9c51f9b 100644
--- a/CIAO/DAnCE/tests/CIAO/FTComponents/FTClient_Timer_Handler.cpp
+++ b/CIAO/DAnCE/tests/CIAO/FTComponents/FTClient_Timer_Handler.cpp
@@ -1,11 +1,14 @@
// $Id$
#include <ace/High_Res_Timer.h>
+#include <ace/Env_Value_T.h>
//#include <tao/RTCORBA/RTCORBA.h>
#include "FTClient_Timer_Handler.h"
#include "ciao/CIAO_common.h"
#include "FTClient_exec.h"
+const char * CORFU_TEXT_ENVIRONMENT_VARIABLE = "CORFU_TEST";
+
namespace CIDL_FTClient_Impl
{
@@ -31,6 +34,12 @@ namespace CIDL_FTClient_Impl
server_ = DeCoRAM::Worker::_duplicate (server);
}
+ void
+ FTClient_Timer_Handler::set_prefix (const char * prefix)
+ {
+ prefix_ = prefix;
+ }
+
int
FTClient_Timer_Handler::handle_timeout (const ACE_Time_Value &,
const void *)
@@ -58,9 +67,12 @@ namespace CIDL_FTClient_Impl
}
}
+ CORBA::ULong server_processing_time;
+
timer_.start ();
- server_->run_task (client_executor_->execution_time ());
+ server_processing_time =
+ server_->run_task (client_executor_->execution_time ());
timer_.stop ();
@@ -68,7 +80,7 @@ namespace CIDL_FTClient_Impl
timer_.elapsed_time (rt);
if (logging_)
- history_.push_back (rt.msec ());
+ history_.push_back (rt.msec () - server_processing_time);
}
catch (CORBA::Exception & ex)
{
@@ -106,7 +118,9 @@ namespace CIDL_FTClient_Impl
{
if (logging_)
{
- std::string logfile = client_executor_->name ();
+ std::string logfile;
+ logfile += prefix_;
+ logfile += client_executor_->name ();
logfile += "-client.txt";
std::ofstream out (logfile.c_str ());
diff --git a/CIAO/DAnCE/tests/CIAO/FTComponents/FTClient_Timer_Handler.h b/CIAO/DAnCE/tests/CIAO/FTComponents/FTClient_Timer_Handler.h
index d76d7639062..294004f2d57 100644
--- a/CIAO/DAnCE/tests/CIAO/FTComponents/FTClient_Timer_Handler.h
+++ b/CIAO/DAnCE/tests/CIAO/FTComponents/FTClient_Timer_Handler.h
@@ -25,6 +25,8 @@ namespace CIDL_FTClient_Impl
void set_server (DeCoRAM::Worker_ptr server);
+ void set_prefix (const char * prefix);
+
// Hook method that is called by the reactor when a timer expires.
virtual int handle_timeout (const ACE_Time_Value &tv,
const void *);
@@ -47,6 +49,8 @@ namespace CIDL_FTClient_Impl
typedef std::list<CORBA::ULong> TimingList;
TimingList history_;
+
+ std::string prefix_;
};
} // end namespace CIDL_FTClient_Impl
diff --git a/CIAO/DAnCE/tests/CIAO/FTComponents/FTClient_exec.cpp b/CIAO/DAnCE/tests/CIAO/FTComponents/FTClient_exec.cpp
index 257849660ce..35827be7852 100644
--- a/CIAO/DAnCE/tests/CIAO/FTComponents/FTClient_exec.cpp
+++ b/CIAO/DAnCE/tests/CIAO/FTComponents/FTClient_exec.cpp
@@ -51,12 +51,14 @@ namespace CIDL_FTClient_Impl
// Supported or inherited operations.
void
- FTClient_exec_i::start (void)
+ FTClient_exec_i::start (const char * prefix)
{
CIAO_TRACE ("FTClient_exec_i::start ()");
if (!started_)
{
+ timeout_handler_.set_prefix (prefix);
+
// register the timer handler with the ORB reactor
ACE_Time_Value period;
period.msec (static_cast<long> (period_));
diff --git a/CIAO/DAnCE/tests/CIAO/FTComponents/FTClient_exec.h b/CIAO/DAnCE/tests/CIAO/FTComponents/FTClient_exec.h
index f3bfa421966..6b03abebe6d 100644
--- a/CIAO/DAnCE/tests/CIAO/FTComponents/FTClient_exec.h
+++ b/CIAO/DAnCE/tests/CIAO/FTComponents/FTClient_exec.h
@@ -46,7 +46,7 @@ namespace CIDL_FTClient_Impl
// Supported or inherited operations.
- virtual void start (void);
+ virtual void start (const char * prefix);
// Attribute operations.
virtual ::CORBA::Double
diff --git a/CIAO/DAnCE/tests/CIAO/FTComponents/FTTask_exec.cpp b/CIAO/DAnCE/tests/CIAO/FTComponents/FTTask_exec.cpp
index 5ece7de1e24..1760c858cee 100644
--- a/CIAO/DAnCE/tests/CIAO/FTComponents/FTTask_exec.cpp
+++ b/CIAO/DAnCE/tests/CIAO/FTComponents/FTTask_exec.cpp
@@ -58,28 +58,27 @@ namespace CIDL_FTTask_Impl
// Supported or inherited operations.
- void
+ CORBA::ULong
FTTask_exec_i::run_task (
::CORBA::Double execution_time)
{
- CIAO_DEBUG ((LM_TRACE, "x(%d, %f)=", state_, execution_time));
+ CIAO_DEBUG ((LM_TRACE, "x(%d, %f) ", state_, execution_time));
timer_.start ();
this->cpu_.run (static_cast <size_t> (execution_time));
- timer_.stop ();
-
++state_;
agent_->state_changed (object_id_.c_str ());
- ACE_Time_Value rt;
- timer_.elapsed_time (rt);
+ timer_.stop ();
- CIAO_DEBUG ((LM_TRACE, "%dms ", rt.msec ()));
+ timer_.elapsed_time (last_execution_time_);
task_.signal ();
+
+ return last_execution_time_.msec ();
}
void
diff --git a/CIAO/DAnCE/tests/CIAO/FTComponents/FTTask_exec.h b/CIAO/DAnCE/tests/CIAO/FTComponents/FTTask_exec.h
index 55fda96ba90..bffe397af9c 100644
--- a/CIAO/DAnCE/tests/CIAO/FTComponents/FTTask_exec.h
+++ b/CIAO/DAnCE/tests/CIAO/FTComponents/FTTask_exec.h
@@ -47,7 +47,7 @@ namespace CIDL_FTTask_Impl
// Supported or inherited operations.
- virtual void
+ virtual CORBA::ULong
run_task (
::CORBA::Double execution_time);
@@ -147,6 +147,8 @@ namespace CIDL_FTTask_Impl
Failure_Task task_;
ACE_High_Res_Timer timer_;
+
+ ACE_Time_Value last_execution_time_;
};
extern "C" FTTASK_EXEC_Export ::Components::EnterpriseComponent_ptr
diff --git a/CIAO/DAnCE/tests/CIAO/FTComponents/Trigger.idl b/CIAO/DAnCE/tests/CIAO/FTComponents/Trigger.idl
index 9493b487c2b..03e6de9d37d 100644
--- a/CIAO/DAnCE/tests/CIAO/FTComponents/Trigger.idl
+++ b/CIAO/DAnCE/tests/CIAO/FTComponents/Trigger.idl
@@ -3,7 +3,7 @@
interface Trigger
{
- void start ();
+ void start (in string prefix);
};
#endif /* TRIGGER_IDL_ */
diff --git a/CIAO/DAnCE/tests/CIAO/FTComponents/Worker.idl b/CIAO/DAnCE/tests/CIAO/FTComponents/Worker.idl
index 902af4cb3bd..30fd2e12fde 100644
--- a/CIAO/DAnCE/tests/CIAO/FTComponents/Worker.idl
+++ b/CIAO/DAnCE/tests/CIAO/FTComponents/Worker.idl
@@ -2,7 +2,12 @@ module DeCoRAM
{
interface Worker
{
- void run_task (in double execution_time);
+ /**
+ * @param execution_time indicates how long the method will run in
+ * ms.
+ * @return time in ms that has elapsed since the method started.
+ */
+ unsigned long run_task (in double execution_time);
void stop ();
};
};
diff --git a/CIAO/DAnCE/tests/CIAO/FTComponents/client_trigger.cpp b/CIAO/DAnCE/tests/CIAO/FTComponents/client_trigger.cpp
index e6576b65315..c9b0ff71b76 100644
--- a/CIAO/DAnCE/tests/CIAO/FTComponents/client_trigger.cpp
+++ b/CIAO/DAnCE/tests/CIAO/FTComponents/client_trigger.cpp
@@ -4,11 +4,12 @@
#include "ace/Get_Opt.h"
const ACE_TCHAR *first_ior = ACE_TEXT ("file://first.ior");
+const ACE_TCHAR *prefix = ACE_TEXT ("");
int
parse_args (int argc, ACE_TCHAR *argv[])
{
- ACE_Get_Opt get_opts (argc, argv, ACE_TEXT("k:"));
+ ACE_Get_Opt get_opts (argc, argv, ACE_TEXT("k:n:"));
int c;
while ((c = get_opts ()) != -1)
@@ -17,11 +18,15 @@ parse_args (int argc, ACE_TCHAR *argv[])
case 'k':
first_ior = get_opts.opt_arg ();
break;
+ case 'n':
+ prefix = get_opts.opt_arg ();
+ break;
case '?':
default:
ACE_ERROR_RETURN ((LM_ERROR,
"usage: %s"
"-k <ior> "
+ "-n <prefix>"
"\n",
argv [0]),
-1);
@@ -52,7 +57,7 @@ ACE_TMAIN(int argc, ACE_TCHAR *argv[])
1);
}
- trigger->start ();
+ trigger->start (CORBA::string_dup (prefix));
orb->destroy ();
}