Code Coverage |
||||||||||
Lines |
Functions and Methods |
Classes and Traits |
||||||||
Total | n/a |
0 / 0 |
n/a |
0 / 0 |
CRAP | n/a |
0 / 0 |
1 | <?php |
2 | /** |
3 | * |
4 | * This file is part of the phpBB Forum Software package. |
5 | * |
6 | * @copyright (c) phpBB Limited <https://www.phpbb.com> |
7 | * @license GNU General Public License, version 2 (GPL-2.0) |
8 | * |
9 | * For full copyright and license information, please see |
10 | * the docs/CREDITS.txt file. |
11 | * |
12 | */ |
13 | |
14 | namespace phpbb\auth\provider\oauth\service; |
15 | |
16 | /** |
17 | * OAuth service interface |
18 | */ |
19 | interface service_interface |
20 | { |
21 | /** |
22 | * Returns an array of the scopes necessary for auth |
23 | * |
24 | * @return array An array of the required scopes |
25 | */ |
26 | public function get_auth_scope(); |
27 | |
28 | /** |
29 | * Returns an array containing the service credentials belonging to requested |
30 | * service. |
31 | * |
32 | * @return array An array containing the 'key' and the 'secret' of the |
33 | * service in the form: |
34 | * array( |
35 | * 'key' => string |
36 | * 'secret' => string |
37 | * ) |
38 | */ |
39 | public function get_service_credentials(); |
40 | |
41 | /** |
42 | * Returns the results of the authentication in json format |
43 | * |
44 | * @throws \phpbb\auth\provider\oauth\service\exception |
45 | * @return string The unique identifier returned by the service provider |
46 | * that is used to authenticate the user with phpBB. |
47 | */ |
48 | public function perform_auth_login(); |
49 | |
50 | /** |
51 | * Returns the results of the authentication in json format |
52 | * Use this function when the user already has an access token |
53 | * |
54 | * @throws \phpbb\auth\provider\oauth\service\exception |
55 | * @return string The unique identifier returned by the service provider |
56 | * that is used to authenticate the user with phpBB. |
57 | */ |
58 | public function perform_token_auth(); |
59 | |
60 | /** |
61 | * Returns the class of external library service provider that has to be used. |
62 | * |
63 | * @return string If the string is a class, it will register the provided string as a class, |
64 | * which later will be generated as the OAuth external service provider. |
65 | * If the string is not a class, it will use this string, |
66 | * trying to generate a service for the version 2 and 1 respectively: |
67 | * \OAuth\OAuth2\Service\<string> |
68 | * If the string is empty, it will default to OAuth's standard service classes, |
69 | * trying to generate a service for the version 2 and 1 respectively: |
70 | * \OAuth\OAuth2\Service\Facebook |
71 | */ |
72 | public function get_external_service_class(); |
73 | |
74 | /** |
75 | * Returns the external library service provider once it has been set |
76 | */ |
77 | public function get_external_service_provider(); |
78 | |
79 | /** |
80 | * Sets the external library service provider |
81 | * |
82 | * @param \OAuth\Common\Service\ServiceInterface $service_provider |
83 | */ |
84 | public function set_external_service_provider(\OAuth\Common\Service\ServiceInterface $service_provider); |
85 | } |