Completed
Push — master ( 71957b...519609 )
by Joshua
16:17
created

NumberParseException::__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 6
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 3
CRAP Score 1.064

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 6
ccs 3
cts 5
cp 0.6
rs 9.4285
cc 1
eloc 4
nc 1
nop 3
crap 1.064
1
<?php
2
3
namespace libphonenumber;
4
5
/**
6
 * Generic exception class for errors encountered when parsing phone numbers.
7
 * @author Lara Rennie
8
 */
9
class NumberParseException extends \Exception
10
{
11
    const INVALID_COUNTRY_CODE = 0;
12
    // This generally indicates the string passed in had less than 3 digits in it. More
13
    // specifically, the number failed to match the regular expression VALID_PHONE_NUMBER in
14
    // PhoneNumberUtil.
15
    const NOT_A_NUMBER = 1;
16
    // This indicates the string started with an international dialing prefix, but after this was
17
    // stripped from the number, had less digits than any valid phone number (including country
18
    // code) could have.
19
    const TOO_SHORT_AFTER_IDD = 2;
20
    // This indicates the string, after any country code has been stripped, had less digits than any
21
    // valid phone number could have.
22
    const TOO_SHORT_NSN = 3;
23
    // This indicates the string had more digits than any valid phone number could have.
24
    const TOO_LONG = 4;
25
26
    protected $errorType;
27
28 6
    public function __construct($errorType, $message, $previous = null)
29
    {
30
        parent::__construct($message, $errorType, $previous);
31 6
        $this->message = $message;
32 6
        $this->errorType = $errorType;
33
    }
34
35
    /**
36
     * Returns the error type of the exception that has been thrown.
37
     */
38 2
    public function getErrorType()
39
    {
40 2
        return $this->errorType;
41
    }
42
43 2
    public function __toString()
44
    {
45 2
        return "Error type: " . $this->errorType . ". " . $this->message;
46
    }
47
}
48