def __init__()

in awscrt/s3.py [0:0]


    def __init__(
            self,
            *,
            client,
            request,
            type,
            credential_provider=None,
            recv_filepath=None,
            send_filepath=None,
            on_headers=None,
            on_body=None,
            on_done=None,
            on_progress=None,
            region=None):
        assert isinstance(client, S3Client)
        assert isinstance(request, HttpRequest)
        assert callable(on_headers) or on_headers is None
        assert callable(on_body) or on_body is None
        assert callable(on_done) or on_done is None

        super().__init__()

        self._finished_future = Future()
        self.shutdown_event = threading.Event()

        s3_request_core = _S3RequestCore(
            request,
            self._finished_future,
            self.shutdown_event,
            credential_provider,
            on_headers,
            on_body,
            on_done,
            on_progress)

        self._binding = _awscrt.s3_client_make_meta_request(
            self,
            client,
            request,
            type,
            credential_provider,
            recv_filepath,
            send_filepath,
            region,
            s3_request_core)