Files
popsu-d9/old.vendor/davedevelopment/stiphle/src/Stiphle/Throttle/ThrottleInterface.php
2022-04-27 11:30:43 +02:00

51 lines
1.2 KiB
PHP

<?php
/**
* @package Stiphle
* @subpackage
*/
namespace Stiphle\Throttle;
/**
* This file is part of Stiphle
*
* Copyright (c) 2011 Dave Marshall <dave.marshall@atstsolutuions.co.uk>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/**
* Interface describing a throttle
*
* @author Dave Marshall <david.marshall@atstsolutions.co.uk>
*/
interface ThrottleInterface
{
/**
* Throttle
*
* @param string $key - A unique key for what we're throttling
* @param int $limit - How many are allowed
* @param int $milliseconds - In this many milliseconds
* @return void
*/
public function throttle($key, $limit, $milliseconds);
/**
* Get Estimate
*
* If I were to throttle now, how long would I be waiting
*
* @param string $key - A unique key for what we're throttling
* @param int $limit - How many are allowed
* @param int $milliseconds - In this many milliseconds
* @return int - the number of milliseconds before this request should be allowed
*/
public function getEstimate($key, $limit, $milliseconds);
}