package com.griddynamics.jagger.user.test.configurations.termination; import com.griddynamics.jagger.user.test.configurations.termination.auxiliary.DurationInSeconds; import java.util.Objects; /** * Test with such termination strategy will be executed for the defined time - duration. * * @ingroup Main_Termination_criteria_group */ public class JTerminationCriteriaDuration implements JTerminationCriteria { private final long durationInSeconds; /** Create termination criteria: by duration * @n * @param durationInSeconds - Test load execution time in seconds. After this time load test will be terminated */ public JTerminationCriteriaDuration(DurationInSeconds durationInSeconds) { Objects.requireNonNull(durationInSeconds); this.durationInSeconds = durationInSeconds.value(); } /** Create termination criteria: by duration * @n * @param durationInSeconds - Test load execution time in seconds. After this time load test will be terminated */ public static JTerminationCriteriaDuration of(DurationInSeconds durationInSeconds) { return new JTerminationCriteriaDuration(durationInSeconds); } public long getDurationInSeconds() { return durationInSeconds; } }