mirror of https://gitlab.com/KKlochko/tui-rsync
				
				
				
			
							parent
							
								
									cae4ce50c5
								
							
						
					
					
						commit
						d652469748
					
				@ -1,4 +1,5 @@
 | 
				
			|||||||
from .remove_all_backup_plans_command import RemoveAllBackupBackupPlansCommand
 | 
					from .remove_all_backup_plans_command import RemoveAllBackupBackupPlansCommand
 | 
				
			||||||
from .remove_backup_plan_destinations_command import RemoveBackupBackupPlanDestinationsCommand
 | 
					from .remove_backup_plan_destinations_command import RemoveBackupBackupPlanDestinationsCommand
 | 
				
			||||||
 | 
					from .remove_backup_plan_command import RemoveBackupBackupPlanCommand
 | 
				
			||||||
 | 
					
 | 
				
			||||||
__all__ = ['RemoveAllBackupBackupPlansCommand', 'RemoveBackupBackupPlanDestinationsCommand']
 | 
					__all__ = ['RemoveAllBackupBackupPlansCommand', 'RemoveBackupBackupPlanCommand', 'RemoveBackupBackupPlanDestinationsCommand']
 | 
				
			||||||
 | 
				
			|||||||
@ -0,0 +1,18 @@
 | 
				
			|||||||
 | 
					from tui_rsync.core.ports.orm import DatabaseManagerPort
 | 
				
			||||||
 | 
					from tui_rsync.core.shared_kernel.components.common import UUID
 | 
				
			||||||
 | 
					from tui_rsync.core.shared_kernel.ports.Exceptions import CommandException
 | 
				
			||||||
 | 
					from tui_rsync.infrastructure.orm.models import DestinationModel, BackupPlanModel
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class RemoveBackupBackupPlanCommand:
 | 
				
			||||||
 | 
					    def __init__(self, database_manager: DatabaseManagerPort):
 | 
				
			||||||
 | 
					        self.databaseManager = database_manager
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    def execute(self, uuid: UUID) -> bool:
 | 
				
			||||||
 | 
					        deleted = BackupPlanModel.delete().where(BackupPlanModel.id == uuid.id).execute()
 | 
				
			||||||
 | 
					        deleted = DestinationModel.delete().where(DestinationModel.source == uuid.id).execute() | deleted
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if deleted == 0:
 | 
				
			||||||
 | 
					            raise CommandException("Failed to delete the backup plan, because it doesn't exist.")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        return True
 | 
				
			||||||
					Loading…
					
					
				
		Reference in new issue