implemented to move or rename file/folder command mv
This commit is contained in:
@ -45,12 +45,14 @@ class FileApi(BaseApi):
|
||||
url = self.ENTRYPOINT + file.id + "/"
|
||||
token_check(self.connection)
|
||||
if path is not None:
|
||||
# update file body
|
||||
try:
|
||||
with open(path, mode="rb") as fp:
|
||||
response = self._put(url, files={"file": fp})
|
||||
except OSError:
|
||||
raise UnexpectedException(f"Could not open `{path}` file.")
|
||||
else:
|
||||
# update metadata
|
||||
data = {"name": file.name, "description": file.description}
|
||||
response = self._put(url, data=data)
|
||||
self._raise_response_error(response)
|
||||
@ -64,7 +66,7 @@ class FileApi(BaseApi):
|
||||
self._raise_response_error(response)
|
||||
return True
|
||||
|
||||
def move(self, file: File, folder_id: str | None) -> bool:
|
||||
def move(self, file: File, folder_id: str) -> bool:
|
||||
print(self.__class__.__name__ + "::" + sys._getframe().f_code.co_name)
|
||||
url = self.ENTRYPOINT + file.id + "/move/"
|
||||
data = {"folder": folder_id}
|
||||
@ -83,11 +85,12 @@ class FileApi(BaseApi):
|
||||
|
||||
def download(self, file: File, path: str) -> bool:
|
||||
print(self.__class__.__name__ + "::" + sys._getframe().f_code.co_name)
|
||||
url = self.connection.build_url("v2/", file.download_url)
|
||||
r = self.connection.session.get(url, stream=True)
|
||||
url = "v2/" + file.download_url
|
||||
response = self._get(url, stream=True)
|
||||
self._raise_response_error(response)
|
||||
try:
|
||||
with open(path, "wb") as f:
|
||||
for chunk in r.iter_content(chunk_size=4096):
|
||||
for chunk in response.iter_content(chunk_size=4096):
|
||||
if chunk:
|
||||
f.write(chunk)
|
||||
f.flush()
|
||||
|
@ -50,7 +50,7 @@ class FolderApi(BaseApi):
|
||||
|
||||
def update(self, folder: FolderSimple) -> bool:
|
||||
print(self.__class__.__name__ + "::" + sys._getframe().f_code.co_name)
|
||||
url = self.ENTRYPOINT
|
||||
url = self.ENTRYPOINT + folder.id + "/"
|
||||
data = {
|
||||
"name": folder.name,
|
||||
"description": folder.description,
|
||||
@ -68,6 +68,15 @@ class FolderApi(BaseApi):
|
||||
self._raise_response_error(response)
|
||||
return True
|
||||
|
||||
def move(self, folder: FolderSimple, folder_id: str) -> bool:
|
||||
print(self.__class__.__name__ + "::" + sys._getframe().f_code.co_name)
|
||||
url = self.ENTRYPOINT + folder.id + "/move/"
|
||||
data = {"parent": folder_id}
|
||||
token_check(self.connection)
|
||||
response = self._post(url, data=data)
|
||||
self._raise_response_error(response)
|
||||
return True
|
||||
|
||||
def metadata(self, id: str) -> dict:
|
||||
print(self.__class__.__name__ + "::" + sys._getframe().f_code.co_name)
|
||||
url = self.ENTRYPOINT + id + "/metadata/"
|
||||
|
Reference in New Issue
Block a user