public function CompressionFilter::afterBackup in Backup and Migrate 8.4
Run on a backup.
Parameters
\BackupMigrate\Core\File\BackupFileReadableInterface $file:
Return value
\BackupMigrate\Core\File\BackupFileReadableInterface
File
- lib/
backup_migrate_core/ src/ Filter/ CompressionFilter.php, line 127
Class
- CompressionFilter
- Class CompressionFilter.
Namespace
BackupMigrate\Core\FilterCode
public function afterBackup(BackupFileReadableInterface $file) {
$out = $success = FALSE;
if ($this
->confGet('compression') == 'gzip') {
$out = $this
->getTempFileManager()
->pushExt($file, 'gz');
$success = $this
->_gzipEncode($file, $out);
}
if ($this
->confGet('compression') == 'bzip') {
$out = $this
->getTempFileManager()
->pushExt($file, 'bz2');
$success = $this
->_bzipEncode($file, $out);
}
if ($this
->confGet('compression') == 'zip') {
$out = $this
->getTempFileManager()
->pushExt($file, 'zip');
$success = $this
->_ZipEncode($file, $out);
}
// If the file was successfully compressed.
if ($out && $success) {
$out
->setMeta('filesize_uncompressed', $file
->getMeta('filesize'));
$out
->setMeta('compression', $this
->confGet('compression'));
return $out;
}
// Return the original if we were not able to compress it.
return $file;
}