Failed Conditions
Pull Request — master (#2617)
by Walt
05:51
created

AbstractDriverException::__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 6
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
dl 0
loc 6
ccs 0
cts 5
cp 0
rs 9.4285
c 0
b 0
f 0
cc 1
eloc 3
nc 1
nop 3
crap 2
1
<?php
2
/*
3
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
4
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
5
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
6
 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
7
 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
8
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
9
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
10
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
11
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
12
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
13
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
14
 *
15
 * This software consists of voluntary contributions made by many individuals
16
 * and is licensed under the MIT license. For more information, see
17
 * <http://www.doctrine-project.org>.
18
 */
19
20
namespace Doctrine\DBAL\Driver;
21
22
/**
23
 * Abstract base implementation of the {@link DriverException} interface.
24
 *
25
 * @author Steve Müller <[email protected]>
26
 * @link   www.doctrine-project.org
27
 * @since  2.5
28
 */
29
abstract class AbstractDriverException extends \Exception implements DriverException
30
{
31
    /**
32
     * The driver specific error code.
33
     *
34
     * @var int|string|null
35
     */
36
    private $errorCode;
37
38
    /**
39
     * The SQLSTATE of the driver.
40
     *
41
     * @var string|null
42
     */
43
    private $sqlState;
44
45
    /**
46
     * Constructor.
47
     *
48
     * @param string          $message   The driver error message.
49
     * @param string|null     $sqlState  The SQLSTATE the driver is in at the time the error occurred, if any.
50
     * @param int|string|null $errorCode The driver specific error code if any.
51
     */
52
    public function __construct($message, $sqlState = null, $errorCode = null)
53
    {
54
        parent::__construct($message);
55
56
        $this->errorCode = $errorCode;
57
        $this->sqlState  = $sqlState;
58
    }
59
60
    /**
61
     * {@inheritdoc}
62
     */
63
    public function getErrorCode()
64
    {
65
        return $this->errorCode;
66
    }
67
68
    /**
69
     * {@inheritdoc}
70
     */
71
    public function getSQLState()
72
    {
73
        return $this->sqlState;
74
    }
75
}
76