PluginProbe ʕ •ᴥ•ʔ
WP STAGING – WordPress Backup, Restore, Migration & Clone / 3.0.2
WP STAGING – WordPress Backup, Restore, Migration & Clone v3.0.2
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 / Basic / Backup / BackupServiceProvider.php
wp-staging / Basic / Backup Last commit date
BackupServiceProvider.php 3 years ago
BackupServiceProvider.php
71 lines
1 <?php
2
3 namespace WPStaging\Basic\Backup;
4
5 use WPStaging\Backup\Dto\Job\JobBackupDataDto;
6 use WPStaging\Backup\Dto\Job\JobRestoreDataDto;
7 use WPStaging\Backup\Dto\JobDataDto;
8 use WPStaging\Backup\Job\AbstractJob;
9 use WPStaging\Backup\Job\JobBackupProvider;
10 use WPStaging\Backup\Job\JobRestoreProvider;
11 use WPStaging\Backup\Job\Jobs\JobBackup;
12 use WPStaging\Backup\Job\Jobs\JobRestore;
13 use WPStaging\Backup\Service\Database\Importer\BasicDatabaseSearchReplacer;
14 use WPStaging\Backup\Service\Database\Importer\DatabaseSearchReplacerInterface;
15 use WPStaging\Backup\Service\Multipart\MultipartInjection;
16 use WPStaging\Backup\Service\Multipart\MultipartRestoreInterface;
17 use WPStaging\Backup\Service\Multipart\MultipartRestorer;
18 use WPStaging\Backup\Service\Multipart\MultipartSplitInterface;
19 use WPStaging\Backup\Service\Multipart\MultipartSplitter;
20 use WPStaging\Backup\Task\Tasks\JobRestore\RestoreDatabaseTask;
21 use WPStaging\Framework\DI\ServiceProvider;
22
23 /**
24 * Class BackupServiceProvider
25 *
26 * Responsible for injecting classes which are to be used in FREE/BASIC version only
27 */
28 class BackupServiceProvider extends ServiceProvider
29 {
30 protected function registerClasses()
31 {
32 $this->container->when(JobBackup::class)
33 ->needs(JobDataDto::class)
34 ->give(JobBackupDataDto::class);
35
36 $this->container->when(JobRestore::class)
37 ->needs(JobDataDto::class)
38 ->give(JobRestoreDataDto::class);
39
40 $container = $this->container;
41
42 $this->container->when(JobBackupProvider::class)
43 ->needs(AbstractJob::class)
44 ->give(function () use (&$container) {
45 return $container->make(JobBackup::class);
46 });
47
48 $this->container->when(JobRestoreProvider::class)
49 ->needs(AbstractJob::class)
50 ->give(function () use (&$container) {
51 return $container->make(JobRestore::class);
52 });
53
54 foreach (MultipartInjection::MULTIPART_CLASSES as $classId) {
55 $this->container->when($classId)
56 ->needs(MultipartSplitInterface::class)
57 ->give(MultipartSplitter::class);
58 }
59
60 foreach (MultipartInjection::RESTORE_CLASSES as $classId) {
61 $this->container->when($classId)
62 ->needs(MultipartRestoreInterface::class)
63 ->give(MultipartRestorer::class);
64 }
65
66 $this->container->when(RestoreDatabaseTask::class)
67 ->needs(DatabaseSearchReplacerInterface::class)
68 ->give(BasicDatabaseSearchReplacer::class);
69 }
70 }
71