| Server IP : 104.21.74.147 / Your IP : 216.73.217.154 Web Server : nginx/1.24.0 System : Linux wordpress-sites 6.8.0-134-generic #134-Ubuntu SMP PREEMPT_DYNAMIC Fri Jun 26 18:43:11 UTC 2026 x86_64 User : www-data ( 33) PHP Version : 8.1.34 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/rebeccaone.com/wp-content/plugins/worker/src/MWP/Action/IncrementalBackup/ |
Upload File : |
<?php
/*
* This file is part of the ManageWP Worker plugin.
*
* (c) ManageWP LLC <[email protected]>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
class MWP_Action_IncrementalBackup_FetchFiles extends MWP_Action_IncrementalBackup_AbstractFiles
{
public function execute(array $params = array())
{
/**
* Each file is structured like:
* [
* "relativePath" => file path relative to ABSPATH,
* "pathEncoded" => is path url encoded?,
* "size" => file size sent for reference,
* "offset" => number of bytes to offset hash start (integer, optional, default 0),
* "limit" => number of bytes to hash (integer, optional, default 0),
* ]
*/
$requestedFiles = $params['files'];
$result = new MWP_IncrementalBackup_Model_FetchFilesResult();
foreach ($requestedFiles as $requestedFile) {
$relativePath = $requestedFile['relativePath'];
$decodedRelativePath = $requestedFile['pathEncoded'] ? $this->pathDecode($relativePath) : $relativePath;
$realPath = $this->getRealPath($decodedRelativePath);
$offset = isset($requestedFile['offset']) ? $requestedFile['offset'] : 0;
$limit = isset($requestedFile['limit']) ? $requestedFile['limit'] : -1;
$file = new MWP_IncrementalBackup_Model_File();
$file->setPathname($relativePath);
$file->setStream(new MWP_Stream_FileLimit(new MWP_Stream_LazyFile($realPath), $offset, $limit));
if (isset($requestedFile['encoding'])) {
$file->setEncoding($requestedFile['encoding']);
}
$result->addFile($file);
}
$result->setServerStatistics(MWP_IncrementalBackup_Model_ServerStatistics::factory());
return $result;
}
}