PluginProbe ʕ •ᴥ•ʔ
WP STAGING – WordPress Backups, Restore, Migration & Clone / 4.11.0
WP STAGING – WordPress Backups, Restore, Migration & Clone v4.11.0
4.11.0 4.10.0 4.9.5 4.9.4 4.9.3 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 / Tasks / StagingSiteDelete / FinishStagingSiteDeleteTask.php
wp-staging / Staging / Tasks / StagingSiteDelete Last commit date
FinishStagingSiteDeleteTask.php 1 day ago
FinishStagingSiteDeleteTask.php
72 lines
1 <?php
2
3 namespace WPStaging\Staging\Tasks\StagingSiteDelete;
4
5 use WPStaging\Framework\Queue\SeekableQueueInterface;
6 use WPStaging\Framework\Job\Dto\StepsDto;
7 use WPStaging\Framework\Job\Dto\TaskResponseDto;
8 use WPStaging\Framework\Utils\Cache\Cache;
9 use WPStaging\Staging\Dto\Job\StagingSiteDeleteDataDto;
10 use WPStaging\Staging\Sites;
11 use WPStaging\Staging\Tasks\StagingTask;
12 use WPStaging\Vendor\Psr\Log\LoggerInterface;
13
14 class FinishStagingSiteDeleteTask extends StagingTask
15 {
16
17 protected $jobDataDto;
18
19
20 private $sites;
21
22
23
24
25
26
27
28
29 public function __construct(LoggerInterface $logger, Cache $cache, StepsDto $stepsDto, SeekableQueueInterface $taskQueue, Sites $sites)
30 {
31 parent::__construct($logger, $cache, $stepsDto, $taskQueue);
32 $this->sites = $sites;
33 }
34
35
36
37
38 public static function getTaskName()
39 {
40 return 'staging_finish_delete';
41 }
42
43
44
45
46 public static function getTaskTitle()
47 {
48 return 'Finish Staging Site Delete';
49 }
50
51
52
53
54 public function execute()
55 {
56 $this->getJobTransientCache()->completeJob();
57 $stagingSite = $this->jobDataDto->getStagingSite();
58 $stagingSites = $this->sites->tryGettingStagingSites();
59 if (isset($stagingSites[$this->jobDataDto->getCloneId()])) {
60 unset($stagingSites[$this->jobDataDto->getCloneId()]);
61 $this->sites->updateStagingSites($stagingSites);
62 }
63
64 $this->logger->info(sprintf(
65 'Staging Site "%s" deleted.',
66 $stagingSite->getSiteName()
67 ));
68
69 return $this->generateResponse();
70 }
71 }
72