package com.intuit.tank.runner.method; /* * #%L * Intuit Tank Agent (apiharness) * %% * Copyright (C) 2011 - 2015 Intuit Inc. * %% * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * #L% */ import org.apache.commons.lang3.math.NumberUtils; import com.intuit.tank.harness.APITestHarness; import com.intuit.tank.harness.data.TimerStep; import com.intuit.tank.results.TankResult; import com.intuit.tank.runner.TestStepContext; import com.intuit.tank.vm.common.TankConstants; /** * * @author dangleton * */ class TimerRunner implements Runner { private TestStepContext tsc; /** * * @param tsc */ TimerRunner(TestStepContext tsc) { this.tsc = tsc; } /** * */ public String execute() { TimerStep testStep = (TimerStep) tsc.getTestStep(); if (testStep.isStart()) { tsc.getTimerMap().start(testStep.getValue()); } else { TankResult tankResult = tsc.getTimerMap().end( testStep.getValue()); if (tankResult != null && NumberUtils.isDigits(APITestHarness.getInstance().getAgentRunData().getJobId())) { APITestHarness.getInstance().queueTimingResult(tankResult); } } return TankConstants.HTTP_CASE_PASS; } }