00001 /* 00002 * This program is free software; you can redistribute it and/or modify 00003 * it under the terms of the GNU General Public License as published by 00004 * the Free Software Foundation; either version 2 of the License, or 00005 * (at your option) any later version. 00006 * 00007 * This program is distributed in the hope that it will be useful, 00008 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00009 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00010 * GNU General Public License for more details. 00011 * 00012 * You should have received a copy of the GNU General Public License 00013 * along with this program; if not, write to the Free Software 00014 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00015 * 00016 * (c)Copyright 2006 Hewlett-Packard Development Company, LP. 00017 * 00018 */ 00019 00020 #include "C_StopTimerAction.hpp" 00021 #include "GeneratorTrace.hpp" 00022 #include "GeneratorError.h" 00023 00024 00025 C_StopTimerAction::C_StopTimerAction(T_CmdAction P_cmdAction, 00026 T_pControllers P_controllers) 00027 : C_CommandAction (P_cmdAction, P_controllers) { 00028 } 00029 00030 00031 C_StopTimerAction::~C_StopTimerAction() { 00032 } 00033 00034 00035 T_exeCode C_StopTimerAction::execute(T_pCmd_scenario P_pCmd, 00036 T_pCallContext P_callCtxt, 00037 C_MessageFrame *P_msg, 00038 C_MessageFrame *P_ref) { 00039 00040 T_exeCode L_exeCode = E_EXE_NOERROR ; 00041 long L_time_ms ; 00042 00043 GEN_DEBUG(1, "C_Scenario::execute_action() E_ACTION_SCEN_STOP_TIMER " << 00044 m_controllers.m_log); 00045 L_time_ms = 00046 ms_difftime(&P_callCtxt->m_current_time, 00047 &P_callCtxt->m_start_time); 00048 m_controllers.m_stat->executeStatAction (C_GeneratorStats::E_ADD_RESPONSE_TIME_DURATION, 00049 L_time_ms) ; 00050 if (m_controllers.m_log) { 00051 m_controllers.m_log->time_data(&P_callCtxt->m_start_time, 00052 &P_callCtxt->m_current_time); 00053 } 00054 00055 return (L_exeCode); 00056 } 00057 00058 00059 00060 00061