dgd-backupper-php/app/Utils/Builder.php

57 lines
1.1 KiB
PHP

<?php
namespace App\Utils;
use \AdamBrett\ShellWrapper\Command\Builder as CommandBuilder;
use App\Exceptions\BackupFolderNotFoundException;
use Throwable;
abstract class Builder
{
private $backupFolder;
private $containerName;
/**
* @param $backupFolder
* @return Builder
* @throws Throwable
*/
public function setBackupFolder($backupFolder): Builder
{
throw_if(!file_exists($backupFolder), new BackupFolderNotFoundException('Backup folder not exist!'));
$this->backupFolder = $backupFolder;
return $this;
}
/**
* @return string
*/
public function getBackupFolder(): string
{
return $this->backupFolder;
}
/**
* @param $containerName
* @return Builder
*/
public function setContainerName($containerName): Builder
{
$this->containerName = $containerName;
return $this;
}
/**
* @return string
*/
public function getContainerName(): string
{
return $this->containerName;
}
/**
* @return CommandBuilder
*/
abstract public function builder(): CommandBuilder;
}