ruạṛ
# coding: utf-8 # Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved. # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. class FileReadCallbackStream: def __init__(self, file, progress_callback): self.progress_callback = progress_callback self.file = file self.mode = file.mode # this is used by 'requests' to determine the Content-Length header using fstat def fileno(self): return self.file.fileno() def read(self, n): self.progress_callback(n) return self.file.read(n) def __getattr__(self, attr): return getattr(self.file, attr)
cải xoăn