Coverage for /pythoncovmergedfiles/medio/medio/usr/local/lib/python3.11/site-packages/oauthlib/oauth2/rfc8628/endpoints/pre_configured.py: 83%

Shortcuts on this page

r m x   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

6 statements  

1from oauthlib.oauth2.rfc8628.endpoints.device_authorization import ( 

2 DeviceAuthorizationEndpoint, 

3) 

4 

5from typing import Callable, Optional 

6from oauthlib.openid.connect.core.request_validator import RequestValidator 

7 

8 

9class DeviceApplicationServer(DeviceAuthorizationEndpoint): 

10 """An all-in-one endpoint featuring Authorization code grant and Bearer tokens.""" 

11 

12 def __init__( 

13 self, 

14 request_validator: RequestValidator, 

15 verification_uri: str, 

16 interval: int = 5, 

17 verification_uri_complete: Optional[str] = None, # noqa: FA100 

18 user_code_generator: Callable[[None], str] = None, 

19 **kwargs, 

20 ): 

21 """Construct a new web application server. 

22 

23 :param request_validator: An implementation of 

24 oauthlib.oauth2.rfc8626.RequestValidator. 

25 :param interval: How long the device needs to wait before polling the server 

26 :param verification_uri: the verification_uri to be send back. 

27 :param user_code_generator: a callable that allows the user code to be configured. 

28 """ 

29 DeviceAuthorizationEndpoint.__init__( 

30 self, 

31 request_validator, 

32 interval=interval, 

33 verification_uri=verification_uri, 

34 user_code_generator=user_code_generator, 

35 verification_uri_complete=verification_uri_complete, 

36 )