Refactored Runtime to an extent, added plan (exceptions_plans.txt)
This commit is contained in:
parent
348ca2d4a1
commit
79c02e5132
3 changed files with 108 additions and 6 deletions
1
.idea/webResources.xml
generated
1
.idea/webResources.xml
generated
|
@ -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>
|
||||
|
|
86
scratch/exceptions_plan.txt
Normal file
86
scratch/exceptions_plan.txt
Normal 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
|
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue