PluginProbe ʕ •ᴥ•ʔ
WP STAGING – WordPress Backup, Restore, Migration & Clone / 4.9.2
WP STAGING – WordPress Backup, Restore, Migration & Clone v4.9.2
4.9.2 4.9.1 4.9.0 4.8.1 trunk 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.10.0 3.2.0 3.3.1 3.3.2 3.3.3 3.4.1 3.4.3 3.5.0 3.6.0 3.7.1 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.8.6 3.8.7 3.9.0 3.9.1 3.9.2 3.9.3 3.9.4 4.0.0 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.0 4.7.0 4.7.1 4.7.2 4.7.3 4.8.0
wp-staging / Staging / Jobs / StagingSiteDelete.php
wp-staging / Staging / Jobs Last commit date
StagingJobsProvider.php 5 months ago StagingSiteCreate.php 5 months ago StagingSiteDelete.php 1 year ago StagingSiteReset.php 2 weeks ago StagingSiteUpdate.php 2 weeks ago
StagingSiteDelete.php
54 lines
1 <?php
2
3 namespace WPStaging\Staging\Jobs;
4
5 use WPStaging\Framework\Job\AbstractJob;
6 use WPStaging\Staging\Dto\Job\StagingSiteDeleteDataDto;
7 use WPStaging\Staging\Tasks\StagingSite\CleanupStagingFilesTask;
8 use WPStaging\Staging\Tasks\StagingSite\CleanupStagingTablesTask;
9 use WPStaging\Staging\Tasks\StagingSiteDelete\FinishStagingSiteDeleteTask;
10
11 class StagingSiteDelete extends AbstractJob
12 {
13 /** @var StagingSiteDeleteDataDto $jobDataDto */
14 protected $jobDataDto;
15
16 /** @var array The array of tasks to execute for this job. Populated at init(). */
17 private $tasks = [];
18
19 public static function getJobName()
20 {
21 return 'staging_site_delete';
22 }
23
24 protected function getJobTasks()
25 {
26 return $this->tasks;
27 }
28
29 protected function execute()
30 {
31 try {
32 $response = $this->getResponse($this->currentTask->execute());
33 } catch (\Exception $e) {
34 $this->currentTask->getLogger()->critical($e->getMessage());
35 $response = $this->getResponse($this->currentTask->generateResponse(false));
36 }
37
38 return $response;
39 }
40
41 protected function init()
42 {
43 if ($this->jobDataDto->getIsDeletingTables()) {
44 $this->tasks[] = CleanupStagingTablesTask::class;
45 }
46
47 if ($this->jobDataDto->getIsDeletingFiles()) {
48 $this->tasks[] = CleanupStagingFilesTask::class;
49 }
50
51 $this->tasks[] = FinishStagingSiteDeleteTask::class;
52 }
53 }
54