mirror of
https://github.com/laravel/valet.git
synced 2026-02-06 00:40:06 +01:00
Add type hints and return types to PhpFpm
This commit is contained in:
@@ -3,6 +3,7 @@
|
||||
namespace Valet;
|
||||
|
||||
use DomainException;
|
||||
use Illuminate\Support\Collection;
|
||||
|
||||
class PhpFpm
|
||||
{
|
||||
@@ -44,7 +45,7 @@ public function __construct(Brew $brew, CommandLine $cli, Filesystem $files, Con
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function install()
|
||||
public function install(): void
|
||||
{
|
||||
info('Installing and configuring phpfpm...');
|
||||
|
||||
@@ -71,7 +72,7 @@ public function install()
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function uninstall()
|
||||
public function uninstall(): void
|
||||
{
|
||||
$this->brew->uninstallAllPhpVersions();
|
||||
rename(BREW_PREFIX.'/etc/php', BREW_PREFIX.'/etc/php-valet-bak'.time());
|
||||
@@ -86,7 +87,7 @@ public function uninstall()
|
||||
* @param string $phpVersion
|
||||
* @return void
|
||||
*/
|
||||
public function createConfigurationFiles($phpVersion)
|
||||
public function createConfigurationFiles(string $phpVersion): void
|
||||
{
|
||||
info("Updating PHP configuration for {$phpVersion}...");
|
||||
|
||||
@@ -135,7 +136,7 @@ public function createConfigurationFiles($phpVersion)
|
||||
* @param string|null $phpVersion
|
||||
* @return void
|
||||
*/
|
||||
public function restart($phpVersion = null)
|
||||
public function restart(?string $phpVersion = null): void
|
||||
{
|
||||
$this->brew->restartService($phpVersion ?: $this->utilizedPhpVersions());
|
||||
}
|
||||
@@ -145,7 +146,7 @@ public function restart($phpVersion = null)
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function stop()
|
||||
public function stop(): void
|
||||
{
|
||||
call_user_func_array(
|
||||
[$this->brew, 'stopService'],
|
||||
@@ -159,7 +160,7 @@ public function stop()
|
||||
* @param string|null $phpVersion
|
||||
* @return string
|
||||
*/
|
||||
public function fpmConfigPath($phpVersion = null)
|
||||
public function fpmConfigPath(?string $phpVersion = null): string
|
||||
{
|
||||
if (! $phpVersion) {
|
||||
$phpVersion = $this->brew->linkedPhp();
|
||||
@@ -174,7 +175,7 @@ public function fpmConfigPath($phpVersion = null)
|
||||
/**
|
||||
* Stop only the running php services.
|
||||
*/
|
||||
public function stopRunning()
|
||||
public function stopRunning(): void
|
||||
{
|
||||
$this->brew->stopService(
|
||||
$this->brew->getAllRunningServices()
|
||||
@@ -191,7 +192,7 @@ public function stopRunning()
|
||||
* @param string|null $phpVersion
|
||||
* @return void
|
||||
*/
|
||||
public function stopIfUnused($phpVersion = null)
|
||||
public function stopIfUnused(?string $phpVersion = null): void
|
||||
{
|
||||
if (! $phpVersion) {
|
||||
return;
|
||||
@@ -211,7 +212,7 @@ public function stopIfUnused($phpVersion = null)
|
||||
* @param string $version
|
||||
* @return void
|
||||
*/
|
||||
public function isolateDirectory($directory, $version)
|
||||
public function isolateDirectory(string $directory, string $version): void
|
||||
{
|
||||
$site = $this->site->getSiteUrl($directory);
|
||||
|
||||
@@ -237,7 +238,7 @@ public function isolateDirectory($directory, $version)
|
||||
* @param string $directory
|
||||
* @return void
|
||||
*/
|
||||
public function unIsolateDirectory($directory)
|
||||
public function unIsolateDirectory(string $directory): void
|
||||
{
|
||||
$site = $this->site->getSiteUrl($directory);
|
||||
|
||||
@@ -253,9 +254,9 @@ public function unIsolateDirectory($directory)
|
||||
/**
|
||||
* List all directories with PHP isolation configured.
|
||||
*
|
||||
* @return \Illuminate\Support\Collection
|
||||
* @return Collection
|
||||
*/
|
||||
public function isolatedDirectories()
|
||||
public function isolatedDirectories(): Collection
|
||||
{
|
||||
return $this->nginx->configuredSites()->filter(function ($item) {
|
||||
return strpos($this->files->get(VALET_HOME_PATH.'/Nginx/'.$item), ISOLATED_PHP_VERSION) !== false;
|
||||
@@ -271,7 +272,7 @@ public function isolatedDirectories()
|
||||
* @param bool $force
|
||||
* @return string|void
|
||||
*/
|
||||
public function useVersion($version, $force = false)
|
||||
public function useVersion(string $version, bool $force = false): ?string
|
||||
{
|
||||
$version = $this->validateRequestedVersion($version);
|
||||
|
||||
@@ -316,15 +317,18 @@ public function useVersion($version, $force = false)
|
||||
* @param string $phpVersion
|
||||
* @return void
|
||||
*/
|
||||
public function symlinkPrimaryValetSock($phpVersion)
|
||||
public function symlinkPrimaryValetSock(string $phpVersion): void
|
||||
{
|
||||
$this->files->symlinkAsUser(VALET_HOME_PATH.'/'.$this->fpmSockName($phpVersion), VALET_HOME_PATH.'/valet.sock');
|
||||
}
|
||||
|
||||
/**
|
||||
* If passed php7.4, or php74, 7.4, or 74 formats, normalize to php@7.4 format.
|
||||
*
|
||||
* @param string|null
|
||||
* @return string
|
||||
*/
|
||||
public function normalizePhpVersion($version)
|
||||
public function normalizePhpVersion(?string $version): string
|
||||
{
|
||||
return preg_replace('/(?:php@?)?([0-9+])(?:.)?([0-9+])/i', 'php@$1.$2', (string) $version);
|
||||
}
|
||||
@@ -335,7 +339,7 @@ public function normalizePhpVersion($version)
|
||||
* @param string $version
|
||||
* @return string
|
||||
*/
|
||||
public function validateRequestedVersion($version)
|
||||
public function validateRequestedVersion(string $version): string
|
||||
{
|
||||
if (is_null($version)) {
|
||||
throw new DomainException("Please specify a PHP version (try something like 'php@8.1')");
|
||||
@@ -366,7 +370,7 @@ public function validateRequestedVersion($version)
|
||||
* @param string|null $phpVersion
|
||||
* @return string
|
||||
*/
|
||||
public static function fpmSockName($phpVersion = null)
|
||||
public static function fpmSockName(?string $phpVersion = null): string
|
||||
{
|
||||
$versionInteger = preg_replace('~[^\d]~', '', $phpVersion);
|
||||
|
||||
@@ -379,7 +383,7 @@ public static function fpmSockName($phpVersion = null)
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function utilizedPhpVersions()
|
||||
public function utilizedPhpVersions(): array
|
||||
{
|
||||
$fpmSockFiles = $this->brew->supportedPhpVersions()->map(function ($version) {
|
||||
return self::fpmSockName($this->normalizePhpVersion($version));
|
||||
|
||||
Reference in New Issue
Block a user