예제 #1
0
파일: Archive.php 프로젝트: akochnov/fts
 /**
  * @param Job $job
  *
  * @throws \Exception
  *
  */
 public function __construct(Job $job)
 {
     $this->job = $job;
     $this->backup = $job->get_backup();
     switch ($job['compression']) {
         case 'zip':
             $this->extension = 'zip';
             $this->format = 'zip';
             $this->compression = Pharchive::COMPRESS_NONE;
             break;
         case 'tar':
             $this->extension = 'tar';
             $this->format = 'tar';
             $this->compression = Pharchive::COMPRESS_NONE;
             break;
         case 'gz':
             $this->extension = 'tar.gz';
             $this->format = 'tar';
             $this->compression = Pharchive::COMPRESS_GZIP;
             break;
         case 'bz2':
             $this->extension = 'tar.bz2';
             $this->format = 'tar';
             $this->compression = Pharchive::COMPRESS_BZIP;
             break;
         default:
             throw new \Exception('Unknown compression: ' . $job['compression']);
     }
     $this->password = $job['password'];
     $this->split_size = $job['volsize'] > 0 ? $job['volsize'] * 1024 * 1024 : 0;
     if (!is_null($this->backup)) {
         $this->archives = $this->backup->get_archives();
     }
 }
예제 #2
0
 public function __construct(Job $job)
 {
     $this->job = $job;
     $this->filePath = null === $job->get_backup() ? tempnam(sys_get_temp_dir(), 'my-wp-backup-export') : MyWPBackup::$info['root_dir'] . self::FILENAME;
     $job->set_dbpath($this->filePath);
 }