1515
1616use function explode ;
1717
18+ use Laudis \Neo4j \Common \Neo4jLogger ;
1819use Laudis \Neo4j \Contracts \AuthenticateInterface ;
1920use Psr \Http \Message \UriInterface ;
2021
@@ -32,47 +33,47 @@ final class Authenticate
3233 *
3334 * @pure
3435 */
35- public static function basic (string $ username , string $ password ): BasicAuth
36+ public static function basic (string $ username , string $ password, ? Neo4jLogger $ logger = null ): BasicAuth
3637 {
37- return new BasicAuth ($ username , $ password );
38+ return new BasicAuth ($ username , $ password, $ logger );
3839 }
3940
4041 /**
4142 * Authenticate using a kerberos token.
4243 *
4344 * @pure
4445 */
45- public static function kerberos (string $ token ): KerberosAuth
46+ public static function kerberos (string $ token, ? Neo4jLogger $ logger = null ): KerberosAuth
4647 {
47- return new KerberosAuth ($ token );
48+ return new KerberosAuth ($ token, $ logger );
4849 }
4950
5051 /**
5152 * Authenticate using a OpenID Connect token.
5253 *
5354 * @pure
5455 */
55- public static function oidc (string $ token ): OpenIDConnectAuth
56+ public static function oidc (string $ token, ? Neo4jLogger $ logger = null ): OpenIDConnectAuth
5657 {
57- return new OpenIDConnectAuth ($ token );
58+ return new OpenIDConnectAuth ($ token, $ logger );
5859 }
5960
6061 /**
6162 * Don't authenticate at all.
6263 *
6364 * @pure
6465 */
65- public static function disabled (): NoAuth
66+ public static function disabled (? Neo4jLogger $ logger = null ): NoAuth
6667 {
67- return new NoAuth ();
68+ return new NoAuth ($ logger );
6869 }
6970
7071 /**
7172 * Authenticate from information found in the url.
7273 *
7374 * @pure
7475 */
75- public static function fromUrl (UriInterface $ uri ): AuthenticateInterface
76+ public static function fromUrl (UriInterface $ uri, ? Neo4jLogger $ logger = null ): AuthenticateInterface
7677 {
7778 /**
7879 * @psalm-suppress ImpureMethodCall Uri is a pure object:
@@ -86,9 +87,9 @@ public static function fromUrl(UriInterface $uri): AuthenticateInterface
8687 $ explode = explode (': ' , $ userInfo );
8788 [$ user , $ pass ] = $ explode ;
8889
89- return self ::basic ($ user , $ pass );
90+ return self ::basic ($ user , $ pass, $ logger );
9091 }
9192
92- return self ::disabled ();
93+ return self ::disabled ($ logger );
9394 }
9495}
0 commit comments