![]() Server : Apache/2.4.62 (Unix) OpenSSL/1.0.2k-fips System : Linux server1.richineiserver.com 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64 User : fdshops ( 1003) PHP Version : 8.2.21 Disable Function : NONE Directory : /home/fdshops/public_html/vendor/spatie/laravel-backup/src/Tasks/Backup/ |
<?php namespace Spatie\Backup\Tasks\Backup; use Illuminate\Support\Arr; use Illuminate\Support\Collection; use Spatie\Backup\BackupDestination\BackupDestinationFactory; class BackupJobFactory { public static function createFromArray(array $config): BackupJob { return (new BackupJob()) ->setFileSelection(static::createFileSelection($config['backup']['source']['files'])) ->setDbDumpers(static::createDbDumpers($config['backup']['source']['databases'])) ->setBackupDestinations(BackupDestinationFactory::createFromArray($config['backup'])); } protected static function createFileSelection(array $sourceFiles): FileSelection { return FileSelection::create($sourceFiles['include']) ->excludeFilesFrom($sourceFiles['exclude']) ->shouldFollowLinks(isset($sourceFiles['follow_links']) && $sourceFiles['follow_links']) ->shouldIgnoreUnreadableDirs(Arr::get($sourceFiles, 'ignore_unreadable_directories', false)); } protected static function createDbDumpers(array $dbConnectionNames): Collection { return collect($dbConnectionNames)->mapWithKeys( fn (string $dbConnectionName) => [$dbConnectionName => DbDumperFactory::createFromConnection($dbConnectionName)] ); } }