forked from simplesamlphp/simplesamlphp
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathAuthSource.php
More file actions
65 lines (55 loc) · 1.41 KB
/
AuthSource.php
File metadata and controls
65 lines (55 loc) · 1.41 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<?php
declare(strict_types=1);
namespace SimpleSAML\Error;
use Throwable;
/**
* Baseclass for auth source exceptions.
*
* @package SimpleSAMLphp
*
*/
class AuthSource extends Error
{
/**
* Create a new AuthSource error.
*
* @param string $authsource Authsource module name from where this error was thrown.
* @param string $reason Description of the error.
* @param \Throwable|null $cause
*/
public function __construct(
private string $authsource,
private string $reason,
?Throwable $cause = null,
) {
$this->authsource = $authsource;
$this->reason = $reason;
parent::__construct(
[
ErrorCodes::AUTHSOURCEERROR,
'%AUTHSOURCE%' => $this->authsource,
'%REASON%' => $this->reason,
],
$cause,
);
$this->message = "Error with authentication source '$authsource': $reason";
}
/**
* Retrieve the authsource module name from where this error was thrown.
*
* @return string Authsource module name.
*/
public function getAuthSource(): string
{
return $this->authsource;
}
/**
* Retrieve the reason why the request was invalid.
*
* @return string The reason why the request was invalid.
*/
public function getReason(): string
{
return $this->reason;
}
}