3 ,î[Àã@sjdZddlmZmZddlZddlZddlmZmZddlm Z m Z ej e ƒZ Gdd„deƒZd d „ZdS) zš oauthlib.oauth2.rfc6749 ~~~~~~~~~~~~~~~~~~~~~~~ This module is an implementation of various logic needed for consuming and providing OAuth 2.0 RFC6749. é)Úabsolute_importÚunicode_literalsNé)ÚTemporarilyUnavailableErrorÚ ServerError)ÚFatalClientErrorÚ OAuth2Errorc@sHeZdZdd„Zedd„ƒZejdd„ƒZedd„ƒZejdd„ƒZd S) Ú BaseEndpointcCsd|_d|_dS)NTF)Ú _availableÚ _catch_errors)Úself©r ú/usr/lib/python3.6/__init__.pyÚ__init__szBaseEndpoint.__init__cCs|jS)N)r )r r r rÚ availableszBaseEndpoint.availablecCs ||_dS)N)r )r rr r rrscCs|jS)N)r )r r r rÚ catch_errors#szBaseEndpoint.catch_errorscCs ||_dS)N)r )r rr r rr'sN)Ú__name__Ú __module__Ú __qualname__rÚpropertyrÚsetterrr r r rr s   r cstjˆƒ‡fdd„ƒ}|S)Ncs¼|js&tƒ}tjd|ƒi|jdfS|jr¦yˆ||f|ž|ŽStk rT‚Yq¸tk rh‚Yq¸tk r¢}z t ƒ}tj d|ƒi|jdfSd}~Xq¸Xnˆ||f|ž|ŽSdS)Nz*Endpoint unavailable, ignoring request %s.i÷z.Exception caught while processing request, %s.iô) rrÚlogÚinfoZjsonrrrÚ ExceptionrZwarning)ZendpointZuriÚargsÚkwargsÚeÚerror)Úfr rÚwrapper-s"  z0catch_errors_and_unavailability..wrapper)Ú functoolsÚwraps)rrr )rrÚcatch_errors_and_unavailability,sr")Ú__doc__Z __future__rrr ZloggingÚerrorsrrrrZ getLoggerrrÚobjectr r"r r r rÚs