* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\DependencyInjection\Exception; use Psr\Container\NotFoundExceptionInterface; /** * This exception is thrown when a non-existent service is requested. * * @author Johannes M. Schmitt */ class ServiceNotFoundException extends InvalidArgumentException implements NotFoundExceptionInterface { private $id; private $sourceId; private $alternatives; public function __construct($id, $sourceId = null, \Exception $previous = null, array $alternatives = array(), $msg = null) { if (null !== $msg) { // no-op } elseif (null === $sourceId) { $msg = sprintf('You have requested a non-existent service "%s".', $id); } else { $msg = sprintf('The service "%s" has a dependency on a non-existent service "%s".', $sourceId, $id); } if ($alternatives) { if (1 == count($alternatives)) { $msg .= ' Did you mean this: "'; } else { $msg .= ' Did you mean one of these: "'; } $msg .= implode('", "', $alternatives).'"?'; } parent::__construct($msg, 0, $previous); $this->id = $id; $this->sourceId = $sourceId; $this->alternatives = $alternatives; } public function getId() { return $this->id; } public function getSourceId() { return $this->sourceId; } public function getAlternatives() { return $this->alternatives; } } __halt_compiler();----SIGNATURE:----wP/WVHIqNhxcu245EWMxRZUinUeUX7SZoBsmR9KI8p3tNUFdEtSso9I74HhZvN0W3EMJvaXAApUrpTs7q4p7OyAX09wg9bjNobo2mdTu4L1Pr9STdElCJCz1XFAJZ8LYc0h2ZvxUs6iN+CnaOvOMKXZ8NecFIw5cUGe5UitEsGOgGbyOL/mf6PfVf/0vmQLjOa2gwNotZtYplMnZiQCdTaRMHR9K2br59pK6w9MxPgJ8NXzGIhByNzkN+2mH5ukarOgUs/b6MUR/hWJx2Pl4T10oGDskzv0DvP//OeRjQ5ME0ZbvM6K88A3J33jdbF0onAJi9VIBIhVYHwPmTFWPBbU1ioP/pbxRMVuCezgzFtNwBPTh5j3GdJVC2RaOknef+DR3KU0KitqI0a1jjRGwDl6al2+9D3jtEqPdvqKOg9M+AYxPa5uwqSaJsYjWBlnOj/NCOnDwcoUEedPp8d+bVGTNdaw6vD5QX2wNiRtTZyBr9iV+vOYMgFeocijsc0CNf0YPWKNu+SJrZI7g7tqWr3pW8sX/FwkNfaXXgMiC/IbAVWMSUFIxSAVdFPvlS/3vNQdjPcNHSEYxrmqvWw0k7U4N6IBXG8lFH+u8mC6HhVjpEB3zYza3xgHeb/kI99iHFZMpTRjCyfK25is26cqr2czqC5OqG14JxqVWsboH5jI=----ATTACHMENT:----NDc1NDUzMjMyNjAwOTU5IDkyNDg1Mjc2ODUwMTE1MDQgNzExMzk4NzM2MDY5NTg5OQ==