Refactored Runtime to an extent, added plan (exceptions_plans.txt)

This commit is contained in:
Netkas 2023-08-19 12:34:22 -04:00
parent 348ca2d4a1
commit 79c02e5132
No known key found for this signature in database
GPG key ID: 5DAF58535614062B
3 changed files with 108 additions and 6 deletions

View file

@ -7,6 +7,7 @@
<resourceRoots>
<path value="file://$PROJECT_DIR$/templates" />
<path value="file://$PROJECT_DIR$/assets" />
<path value="file://$PROJECT_DIR$/scratch" />
</resourceRoots>
</entryData>
</entry>

View file

@ -0,0 +1,86 @@
ConfigurationException
INVALID_PROJECT_CONFIGURATION
INVALID_SCOPE
INVALID_CREDENTIALS_ENTRY
COMPONENT_VERSION_NOT_FOUND
INVALID_PACKAGE_NAME
INVALID_VERSION_NUMBER
INVALID_PROJECT_NAME
BUILD_CONFIGURATION_NOT_FOUND
INVALID_PROJECT_BUILD_CONFIGURATION
INVALID_PROPERTY_VALUE
INVALID_VERSION_CONFIGURATION
INVALID_BUILD_CONFIGURATION
INVALID_DEPENDENCY_CONFIGURATION
PROJECT_CONFIGURATION_NOT_FOUND
UNDEFINED_EXECUTION_POLICY
INVALID_EXECUTION_POLICY_NAME
AuthenticationException
ACCESS_DENIED
AUTHENTICATION_EXCEPTION
ResourceNotFoundException
PROJECT_ALREADY_EXISTS
NO_UNITS_FOUND
PACKAGE_NOT_FOUND
VERSION_NOT_FOUND
NO_AVAILABLE_UNITS
PATH_NOT_FOUND
PackageException
UNSUPPORTED_PACKAGE
INVALID_PACKAGE
PACKAGE_PREPARATION_FAILED
PACKAGE_PARSING_EXCEPTION
PACKAGE_LOCK_EXCEPTION
PACKAGE_ALREADY_INSTALLED
PACKAGE_FETCH_EXCEPTION
MISSING_DEPENDENCY
IOException
IO_EXCEPTION
SYMLINK_EXCEPTION
NetworkException
HTTP_EXCEPTION
UNSUPPORTED_REMOTE_SOURCE_TYPE
ComposerException
COMPOSER_DISABLED_EXCEPTION
INTERNAL_COMPOSER_NOT_AVAILABLE
COMPOSER_NOT_AVAILABLE
COMPOSER_EXCEPTION
GitException
GIT_CLONE_EXCEPTION
GIT_CHECKOUT_EXCEPTION
GITLAB_SERVICE_EXCEPTION
GIT_TAGS_EXCEPTION
ArchiveException
UNSUPPORTED_ARCHIVE
ARCHIVE_EXCEPTION
NotSupportedException
NOT_IMPLEMENTED
UNSUPPORTED_COMPILER_EXTENSION
UNSUPPORTED_EXTENSION_VERSION
UNSUPPORTED_COMPONENT_TYPE
NOT_SUPPORTED_EXCEPTION
UNSUPPORTED_PROJECT_TYPE
RuntimeException
RUNTIME
BUILD_EXCEPTION
RUNNER_EXECUTION_EXCEPTION
USER_ABORTED_OPERATION
IntegrityException
CONSTANT_READ_ONLY
INVALID_CONSTANT_NAME
COMPONENT_DECODE_EXCEPTION
RESOURCE_CHECKSUM_EXCEPTION
AutoLoadException
AUTOLOAD_GENERATOR

View file

@ -61,8 +61,10 @@
*/
private static function isImported(string $package, string $version=Versions::LATEST): bool
{
if($version == Versions::LATEST)
if($version === Versions::LATEST)
{
$version = self::getPackageManager()->getPackage($package)->getLatestVersion();
}
$entry = "$package=$version";
@ -100,21 +102,25 @@
{
throw new ImportException(sprintf('Failed to import package "%s" due to a package lock exception: %s', $package, $e->getMessage()), $e);
}
if($package_entry == null)
if($package_entry === null)
{
throw new ImportException(sprintf("Package '%s' not found", $package));
}
if($version == Versions::LATEST)
if($version === Versions::LATEST)
{
$version = $package_entry->getLatestVersion();
}
try
{
/** @var VersionEntry $version_entry */
$version_entry = $package_entry->getVersion($version);
if($version_entry == null)
if($version_entry === null)
{
throw new VersionNotFoundException();
}
}
catch (VersionNotFoundException $e)
{
@ -124,7 +130,9 @@
try
{
if (self::isImported($package, $version))
{
return;
}
}
catch (PackageLockException $e)
{
@ -136,7 +144,9 @@
// Import all dependencies first
/** @var Dependency $dependency */
foreach($version_entry->Dependencies as $dependency)
{
self::import($dependency->PackageName, $dependency->version, $options);
}
}
try
@ -173,8 +183,10 @@
{
$package = self::getPackageManager()->getPackage($package);
if($package == null)
if($package === null)
{
throw new PackageNotFoundException('Package not found (null entry error, possible bug)');
}
return $package->getDataPath();
}
@ -184,8 +196,11 @@
*/
private static function getPackageManager(): PackageManager
{
if(self::$package_manager == null)
if(self::$package_manager === null)
{
self::$package_manager = new PackageManager();
}
return self::$package_manager;
}