1<?php
2
3/*
4 * This file is part of the Symfony package.
5 *
6 * (c) Fabien Potencier <fabien@symfony.com>
7 *
8 * For the full copyright and license information, please view the LICENSE
9 * file that was distributed with this source code.
10 */
11
12namespace Symfony\Component\Process\Exception;
13
14use Symfony\Component\Process\Process;
15
16/**
17 * Exception that is thrown when a process has been signaled.
18 *
19 * @author Sullivan Senechal <soullivaneuh@gmail.com>
20 */
21final class ProcessSignaledException extends RuntimeException
22{
23    private $process;
24
25    public function __construct(Process $process)
26    {
27        $this->process = $process;
28
29        parent::__construct(sprintf('The process has been signaled with signal "%s".', $process->getTermSignal()));
30    }
31
32    public function getProcess(): Process
33    {
34        return $this->process;
35    }
36
37    public function getSignal(): int
38    {
39        return $this->getProcess()->getTermSignal();
40    }
41}
42