/** * Determine if we have an authentication failure, and, if so, return a 401 response * * @param AccessControlEvent $accessControlEvent * @return \Parrot\API\Problem\Response\ProblemResponse|\Zend\Stdlib\ResponseInterface */ public function __invoke(AccessControlEvent $accessControlEvent) { $result = $accessControlEvent->getAuthenticationResult(); if ($result->isValid()) { return; } $mvcEvent = $accessControlEvent->getMvcEvent(); $response = $mvcEvent->getResponse(); if (!$response instanceof HttpResponse) { return $response; } return new ProblemResponse(new Problem(401, 'Unauthorized')); }