Source code for pi_portal.modules.tasks.processor.file_system_move

"""Processes requests to move a file on the file system."""
import os
import shutil

from pi_portal.modules.tasks.enums import TaskType
from pi_portal.modules.tasks.processor.bases import processor_base
from pi_portal.modules.tasks.task import file_system_move


[docs]class ProcessorClass( processor_base.TaskProcessorBase[ file_system_move.Args, file_system_move.ReturnType, ], ): """Processes requests to move a file on the file system.""" __slots__ = () type = TaskType.FILE_SYSTEM_MOVE def _process( self, task: processor_base.TaskBase[ file_system_move.Args, file_system_move.ReturnType, ], ) -> file_system_move.ReturnType: if os.path.exists(task.args.source): shutil.move( src=task.args.source, dst=task.args.destination, ) else: self.recover(task)