@staticmethod
def _get_timer(req):
    think_time = req.get_think_time(full=True)
    if (not think_time):
        return []
    if (not isinstance(think_time, list)):
        return JMX.get_constant_timer(delay=ProtocolHandler.safe_time(think_time))
    mean = ProtocolHandler.safe_time(think_time[1])
    dev = ProtocolHandler.safe_time(think_time[2])
    if (think_time[0] == 'uniform'):
        return JMX.get_uniform_timer(maximum=(dev * 2), offset=(mean - dev))
    elif (think_time[0] == 'gaussian'):
        return JMX.get_gaussian_timer(dev=dev, offset=mean)
    elif (think_time[0] == 'poisson'):
        return JMX.get_poisson_timer(lam=(mean - dev), delay=dev)
    else:
        raise TaurusConfigError(('Wrong timer type: %s' % think_time[0]))
@staticmethod
def _get_timer(req):
    think_time = req.get_think_time(full=True)
    if (not think_time):
        return []
    if (not isinstance(think_time, list)):
        return JMX.get_constant_timer(delay=ProtocolHandler.safe_time(think_time))
    mean = ProtocolHandler.safe_time(think_time[1])
    dev = ProtocolHandler.safe_time(think_time[2])
    if (think_time[0] == 'uniform'):
        return JMX.get_uniform_timer(maximum=(dev * 2), offset=(mean - dev))
    elif (think_time[0] == 'gaussian'):
        return JMX.get_gaussian_timer(dev=dev, offset=mean)
    elif (think_time[0] == 'poisson'):
        return JMX.get_poisson_timer(lam=(mean - dev), delay=dev)
    else:
        raise TaurusConfigError(('Wrong timer type: %s' % think_time[0]))