/** * @param Session $session * @param ErrorMessage $msg */ private function processInterruptError(Session $session, ErrorMessage $msg) { $call = isset($this->callInterruptIndex[$msg->getRequestId()]) ? $this->callInterruptIndex[$msg->getRequestId()] : null; if (!$call) { Logger::warning($this, "Interrupt error with no corresponding interrupt index"); return; } $errorMsgToCaller = ErrorMessage::createErrorMessageFromMessage($call->getCancelMessage()); $errorMsgToCaller->setErrorURI($msg->getErrorURI()); $callerSession = $call->getCallerSession(); $callerSession->sendMessage($errorMsgToCaller); $call->getRegistration()->removeCall($call); $this->removeCall($call); }
public function __construct(ErrorMessage $error, \Exception $previous = null) { $this->errorUri = $error->getErrorURI(); $this->errorMessage = ucfirst(implode(': ', $error->getArguments())); parent::__construct($this->errorMessage, $error->getMsgCode(), $previous); }