|
2 | 2 |
|
3 | 3 | declare(strict_types=1); |
4 | 4 |
|
| 5 | +use League\Bundle\OAuth2ServerBundle\Controller\DeviceCodeController; |
| 6 | +use League\Bundle\OAuth2ServerBundle\Manager\DeviceCodeManagerInterface; |
| 7 | +use League\Bundle\OAuth2ServerBundle\Repository\DeviceCodeRepository; |
| 8 | +use League\OAuth2\Server\Grant\DeviceCodeGrant; |
| 9 | +use League\OAuth2\Server\Repositories\DeviceCodeRepositoryInterface; |
5 | 10 | use function Symfony\Component\DependencyInjection\Loader\Configurator\abstract_arg; |
6 | 11 | use function Symfony\Component\DependencyInjection\Loader\Configurator\param; |
7 | 12 | use function Symfony\Component\DependencyInjection\Loader\Configurator\service; |
|
79 | 84 | ->alias(RefreshTokenRepositoryInterface::class, 'league.oauth2_server.repository.refresh_token') |
80 | 85 | ->alias(RefreshTokenRepository::class, 'league.oauth2_server.repository.refresh_token') |
81 | 86 |
|
| 87 | + ->set('league.oauth2_server.repository.device_code', DeviceCodeRepository::class) |
| 88 | + ->args([ |
| 89 | + service(DeviceCodeManagerInterface::class), |
| 90 | + service(ClientManagerInterface::class), |
| 91 | + service(ScopeConverterInterface::class), |
| 92 | + service(ClientRepositoryInterface::class), |
| 93 | + ]) |
| 94 | + ->alias(DeviceCodeRepositoryInterface::class, 'league.oauth2_server.repository.device_code') |
| 95 | + ->alias(DeviceCodeRepository::class, 'league.oauth2_server.repository.device_code') |
| 96 | + |
82 | 97 | ->set('league.oauth2_server.repository.scope', ScopeRepository::class) |
83 | 98 | ->args([ |
84 | 99 | service(ScopeManagerInterface::class), |
|
195 | 210 | ]) |
196 | 211 | ->alias(AuthCodeGrant::class, 'league.oauth2_server.grant.auth_code') |
197 | 212 |
|
| 213 | + ->set('league.oauth2_server.grant.device_code', DeviceCodeGrant::class) |
| 214 | + ->args([ |
| 215 | + service(DeviceCodeRepositoryInterface::class), |
| 216 | + service(RefreshTokenRepositoryInterface::class), |
| 217 | + null, |
| 218 | + null, |
| 219 | + null |
| 220 | + ]) |
| 221 | + ->alias(DeviceCodeGrant::class, 'league.oauth2_server.grant.device_code') |
| 222 | + |
198 | 223 | ->set('league.oauth2_server.grant.implicit', ImplicitGrant::class) |
199 | 224 | ->args([ |
200 | 225 | null, |
|
216 | 241 | ->tag('controller.service_arguments') |
217 | 242 | ->alias(AuthorizationController::class, 'league.oauth2_server.controller.authorization') |
218 | 243 |
|
| 244 | + ->set('league.oauth2_server.controller.device_code', DeviceCodeController::class) |
| 245 | + ->args([ |
| 246 | + service(AuthorizationServer::class), |
| 247 | + service(EventDispatcherInterface::class), |
| 248 | + service(AuthorizationRequestResolveEventFactory::class), |
| 249 | + service(UserConverterInterface::class), |
| 250 | + service(ClientManagerInterface::class), |
| 251 | + service('league.oauth2_server.factory.psr_http'), |
| 252 | + service('league.oauth2_server.factory.http_foundation'), |
| 253 | + service('league.oauth2_server.factory.psr17'), |
| 254 | + ]) |
| 255 | + ->tag('controller.service_arguments') |
| 256 | + ->alias(DeviceCodeController::class, 'league.oauth2_server.controller.device_code') |
| 257 | + |
219 | 258 | // Token controller |
220 | 259 | ->set('league.oauth2_server.controller.token', TokenController::class) |
221 | 260 | ->args([ |
|
263 | 302 | service(AccessTokenManagerInterface::class), |
264 | 303 | service(RefreshTokenManagerInterface::class), |
265 | 304 | service(AuthorizationCodeManagerInterface::class), |
| 305 | + service(DeviceCodeManagerInterface::class), |
266 | 306 | ]) |
267 | 307 | ->tag('console.command', ['command' => 'league:oauth2-server:clear-expired-tokens']) |
268 | 308 | ->alias(ClearExpiredTokensCommand::class, 'league.oauth2_server.command.clear_expired_tokens') |
|
0 commit comments