refactor: update load_stream method to directly yield file chunks (#9806)

This commit is contained in:
zhuhao 2024-10-25 10:11:25 +08:00 • committed by GitHub
commit 5bf31e7a86
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
11 changed files with 48 additions and 83 deletions

View file

@ -36,12 +36,9 @@ class AliyunOssStorage(BaseStorage):
return data
def load_stream(self, filename: str) -> Generator:
def generate(filename: str = filename) -> Generator:
obj = self.client.get_object(self.__wrapper_folder_filename(filename))
while chunk := obj.read(4096):
yield chunk
return generate()
obj = self.client.get_object(self.__wrapper_folder_filename(filename))
while chunk := obj.read(4096):
yield chunk
def download(self, filename, target_filepath):
self.client.get_object_to_file(self.__wrapper_folder_filename(filename), target_filepath)