async def METHOD_NAME(
    self, request: PipelineRequest[HTTPRequestType]
) -> PipelineResponse[HTTPRequestType, AsyncHTTPResponseType]:
    """Authorize request with a bearer token and send it to the next policy
    :param request: The pipeline request object
    :type request: ~azure.core.pipeline.PipelineRequest
    :return: The pipeline response object
    :rtype: ~azure.core.pipeline.PipelineResponse
    """
    await await_result(self.on_request, request)
    try:
        response = await self.next.METHOD_NAME(request)
        await await_result(self.on_response, request, response)
    except Exception:  # pylint:disable=broad-except
        handled = await await_result(self.on_exception, request)
        if not handled:
            raise
    return response