1 | <?php |
||
11 | class SocialiteWasCalled |
||
12 | { |
||
13 | const SERVICE_CONTAINER_PREFIX = 'SocialiteProviders.config.'; |
||
14 | |||
15 | /** |
||
16 | * @var LaravelApp |
||
17 | */ |
||
18 | protected $app; |
||
19 | |||
20 | /** |
||
21 | * @var ConfigRetrieverInterface |
||
22 | */ |
||
23 | private $configRetriever; |
||
24 | |||
25 | /** |
||
26 | * @param LaravelApp $app |
||
27 | * @param ConfigRetrieverInterface $configRetriever |
||
28 | */ |
||
29 | 10 | public function __construct(LaravelApp $app, ConfigRetrieverInterface $configRetriever) |
|
34 | |||
35 | /** |
||
36 | * @param string $providerName 'meetup' |
||
37 | * @param string $providerClass 'Your\Name\Space\ClassNameProvider' must extend |
||
38 | * either Laravel\Socialite\Two\AbstractProvider or |
||
39 | * Laravel\Socialite\One\AbstractProvider |
||
40 | * @param string $oauth1Server 'Your\Name\Space\ClassNameServer' must extend League\OAuth1\Client\Server\Server |
||
41 | * |
||
42 | * @throws InvalidArgumentException |
||
43 | */ |
||
44 | 10 | public function extendSocialite($providerName, $providerClass, $oauth1Server = null) |
|
56 | |||
57 | /** |
||
58 | * @param SocialiteManager $socialite |
||
59 | * @param $providerName |
||
60 | * @param string $providerClass |
||
61 | * @param null|string $oauth1Server |
||
62 | * |
||
63 | * @return \Laravel\Socialite\One\AbstractProvider|\Laravel\Socialite\Two\AbstractProvider |
||
64 | */ |
||
65 | 10 | protected function buildProvider(SocialiteManager $socialite, $providerName, $providerClass, $oauth1Server) |
|
78 | |||
79 | /** |
||
80 | * Build an OAuth 1 provider instance. |
||
81 | * |
||
82 | * @param string $providerClass must extend Laravel\Socialite\One\AbstractProvider |
||
83 | * @param string $oauth1Server must extend League\OAuth1\Client\Server\Server |
||
84 | * @param array $config |
||
85 | * |
||
86 | * @return \Laravel\Socialite\One\AbstractProvider |
||
87 | */ |
||
88 | 2 | protected function buildOAuth1Provider($providerClass, $oauth1Server, array $config) |
|
97 | |||
98 | /** |
||
99 | * Build an OAuth 2 provider instance. |
||
100 | * |
||
101 | * @param SocialiteManager $socialite |
||
102 | * @param string $providerClass must extend Laravel\Socialite\Two\AbstractProvider |
||
103 | * @param array $config |
||
104 | * |
||
105 | * @return \Laravel\Socialite\Two\AbstractProvider |
||
106 | */ |
||
107 | 3 | protected function buildOAuth2Provider(SocialiteManager $socialite, $providerClass, array $config) |
|
113 | |||
114 | /** |
||
115 | * @param string $providerClass |
||
116 | * @param string $providerName |
||
117 | * |
||
118 | * @return array |
||
119 | * @throws MissingConfigException |
||
120 | */ |
||
121 | 6 | protected function getConfig($providerClass, $providerName) |
|
143 | |||
144 | /** |
||
145 | * Check if a server is given, which indicates that OAuth1 is used. |
||
146 | * |
||
147 | * @param string $oauth1Server |
||
148 | * |
||
149 | * @return bool |
||
150 | */ |
||
151 | 7 | private function isOAuth1($oauth1Server) |
|
155 | |||
156 | /** |
||
157 | * @param string $class |
||
158 | * @param string $baseClass |
||
159 | * |
||
160 | * @throws InvalidArgumentException |
||
161 | */ |
||
162 | 5 | private function classExtends($class, $baseClass) |
|
169 | |||
170 | 10 | private function classExists($providerClass) |
|
176 | } |
||
177 |