34 lines
910 B
PHP
34 lines
910 B
PHP
|
|
<?php
|
||
|
|
|
||
|
|
/**
|
||
|
|
* @package MokoJoomBackup
|
||
|
|
* @subpackage com_mokobackup
|
||
|
|
* @author Moko Consulting <hello@mokoconsulting.tech>
|
||
|
|
* @copyright Copyright (C) 2026 Moko Consulting. All rights reserved.
|
||
|
|
* @license GNU General Public License version 3 or later; see LICENSE
|
||
|
|
*/
|
||
|
|
|
||
|
|
namespace Joomla\Component\MokoBackup\Administrator\Engine;
|
||
|
|
|
||
|
|
defined('_JEXEC') or die;
|
||
|
|
|
||
|
|
interface RemoteUploaderInterface
|
||
|
|
{
|
||
|
|
/**
|
||
|
|
* Upload a file to remote storage.
|
||
|
|
*
|
||
|
|
* @param string $localPath Absolute path to the local file
|
||
|
|
* @param string $remoteName Filename to use on the remote end
|
||
|
|
*
|
||
|
|
* @return array{success: bool, message: string, remote_path?: string}
|
||
|
|
*/
|
||
|
|
public function upload(string $localPath, string $remoteName): array;
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Test the connection / credentials without uploading.
|
||
|
|
*
|
||
|
|
* @return array{success: bool, message: string}
|
||
|
|
*/
|
||
|
|
public function testConnection(): array;
|
||
|
|
}
|