本文整理汇总了PHP中ApiBase::shouldCheckMaxlag方法的典型用法代码示例。如果您正苦于以下问题:PHP ApiBase::shouldCheckMaxlag方法的具体用法?PHP ApiBase::shouldCheckMaxlag怎么用?PHP ApiBase::shouldCheckMaxlag使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ApiBase
的用法示例。
在下文中一共展示了ApiBase::shouldCheckMaxlag方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: checkMaxLag
/**
* Check the max lag if necessary
* @param ApiBase $module Api module being used
* @param array $params Array an array containing the request parameters.
* @return bool True on success, false should exit immediately
*/
protected function checkMaxLag($module, $params)
{
if ($module->shouldCheckMaxlag() && isset($params['maxlag'])) {
// Check for maxlag
$maxLag = $params['maxlag'];
list($host, $lag) = wfGetLB()->getMaxLag();
if ($lag > $maxLag) {
$response = $this->getRequest()->response();
$response->header('Retry-After: ' . max(intval($maxLag), 5));
$response->header('X-Database-Lag: ' . intval($lag));
if ($this->getConfig()->get('ShowHostnames')) {
$this->dieUsage("Waiting for {$host}: {$lag} seconds lagged", 'maxlag');
}
$this->dieUsage("Waiting for a database server: {$lag} seconds lagged", 'maxlag');
}
}
return true;
}