Exemple #1
0
 /**
  * Return a new file based on the one passed in but with the last part of the
  * file extension removed.
  * For example: xxx.mysql.gz would become xxx.mysql
  *
  *
  * @param \BackupMigrate\Core\File\BackupFileInterface $file
  * @return \BackupMigrate\Core\File\BackupFileWritableInterface
  *        A new writable backup file with the last extension removed and
  *        all of the metadata from the previous file.
  */
 public function popExt(BackupFileInterface $file)
 {
     // Pop the last extension from the last of the file.
     $parts = $file->getExtList();
     array_pop($parts);
     $new_ext = implode($parts, '.');
     // Create a new temp file with the new extension
     $out = new WritableStreamBackupFile($this->adapter->createTempFile($new_ext));
     // Copy the file metadata to a new TempFile
     $out->setMetaMultiple($file->getMetaAll());
     $out->setName($file->getName());
     $out->setExtList($parts);
     return $out;
 }