From 86cf7467afa9f23660f3d46d8ef170a0b7f02ad1 Mon Sep 17 00:00:00 2001 From: netkas Date: Sat, 14 Sep 2024 08:19:50 -0400 Subject: [PATCH] Convert ProjectType constants to enum cases --- src/ncc/Enums/Types/ProjectType.php | 11 +++-------- src/ncc/Managers/PackageManager.php | 5 +++-- src/ncc/Utilities/Resolver.php | 4 ++-- 3 files changed, 8 insertions(+), 12 deletions(-) diff --git a/src/ncc/Enums/Types/ProjectType.php b/src/ncc/Enums/Types/ProjectType.php index 3db7f63..648750f 100644 --- a/src/ncc/Enums/Types/ProjectType.php +++ b/src/ncc/Enums/Types/ProjectType.php @@ -22,14 +22,9 @@ namespace ncc\Enums\Types; - final class ProjectType + enum ProjectType : string { - public const COMPOSER = 'composer'; + case COMPOSER = 'composer'; - public const NCC = 'ncc'; - - public const ALL = [ - self::COMPOSER, - self::NCC, - ]; + case NCC = 'ncc'; } \ No newline at end of file diff --git a/src/ncc/Managers/PackageManager.php b/src/ncc/Managers/PackageManager.php index db489f6..52068fa 100644 --- a/src/ncc/Managers/PackageManager.php +++ b/src/ncc/Managers/PackageManager.php @@ -798,9 +798,10 @@ throw new OperationException(sprintf('Failed to detect project type from source %s: %s', $archive, $e->getMessage()), $e); } + // TODO: getProjectType() could return the enum case switch($project_detection->getProjectType()) { - case ProjectType::NCC: + case ProjectType::NCC->value: try { $package_path = (new ProjectManager($project_detection->getProjectFilePath()))->build( @@ -823,7 +824,7 @@ throw new OperationException(sprintf('Failed to build from source %s: %s', $archive, $e->getMessage()), $e); } - case ProjectType::COMPOSER: + case ProjectType::COMPOSER->value: try { $project_manager = ProjectManager::initializeFromComposer(dirname($project_detection->getProjectFilePath()), $options); diff --git a/src/ncc/Utilities/Resolver.php b/src/ncc/Utilities/Resolver.php index 410ac68..366fc15 100644 --- a/src/ncc/Utilities/Resolver.php +++ b/src/ncc/Utilities/Resolver.php @@ -212,12 +212,12 @@ { if(str_ends_with($file, 'project.json')) { - return new ProjectDetectionResults($file, ProjectType::NCC); + return new ProjectDetectionResults($file, ProjectType::NCC->value); } if(str_ends_with($file, 'composer.json')) { - return new ProjectDetectionResults($file, ProjectType::COMPOSER); + return new ProjectDetectionResults($file, ProjectType::COMPOSER->value); } }