/** * Get Cache Duration * * @param Request $request Request * * @return int Cache Duration */ private function getCacheDuration(Request $request) { if ($duration = $request->getRoute()->getMiddlewareVariable('duration', 'cache')) { return $duration; } return $duration = craft()->config->get('defaultCacheDuration', 'httpMessagesCacheMiddleware'); }
/** * Invoke * * @return void */ public function __invoke(Request $request, Response $response, callable $next) { $config = $request->getRoute()->getMiddlewareConfig('validation'); $input = $request->getMethod() === 'GET' ? $request->getQueryParams() : $request->getParams(); try { $validator = $this->getValidator($config); $validator->assert($input); } catch (NestedValidationException $validation_exception) { $exception = new HttpMessagesException('Validation error.'); $exception->setErrors($validation_exception->getMessages()); $exception->setInput($input); throw $exception; } $response = $next($request, $response); return $response; }