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>
|
<resourceRoots>
|
||||||
<path value="file://$PROJECT_DIR$/templates" />
|
<path value="file://$PROJECT_DIR$/templates" />
|
||||||
<path value="file://$PROJECT_DIR$/assets" />
|
<path value="file://$PROJECT_DIR$/assets" />
|
||||||
|
<path value="file://$PROJECT_DIR$/scratch" />
|
||||||
</resourceRoots>
|
</resourceRoots>
|
||||||
</entryData>
|
</entryData>
|
||||||
</entry>
|
</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
|
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();
|
$version = self::getPackageManager()->getPackage($package)->getLatestVersion();
|
||||||
|
}
|
||||||
|
|
||||||
$entry = "$package=$version";
|
$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);
|
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));
|
throw new ImportException(sprintf("Package '%s' not found", $package));
|
||||||
}
|
}
|
||||||
|
|
||||||
if($version == Versions::LATEST)
|
if($version === Versions::LATEST)
|
||||||
|
{
|
||||||
$version = $package_entry->getLatestVersion();
|
$version = $package_entry->getLatestVersion();
|
||||||
|
}
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
/** @var VersionEntry $version_entry */
|
/** @var VersionEntry $version_entry */
|
||||||
$version_entry = $package_entry->getVersion($version);
|
$version_entry = $package_entry->getVersion($version);
|
||||||
|
|
||||||
if($version_entry == null)
|
if($version_entry === null)
|
||||||
|
{
|
||||||
throw new VersionNotFoundException();
|
throw new VersionNotFoundException();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
catch (VersionNotFoundException $e)
|
catch (VersionNotFoundException $e)
|
||||||
{
|
{
|
||||||
|
@ -124,7 +130,9 @@
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
if (self::isImported($package, $version))
|
if (self::isImported($package, $version))
|
||||||
|
{
|
||||||
return;
|
return;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
catch (PackageLockException $e)
|
catch (PackageLockException $e)
|
||||||
{
|
{
|
||||||
|
@ -136,7 +144,9 @@
|
||||||
// Import all dependencies first
|
// Import all dependencies first
|
||||||
/** @var Dependency $dependency */
|
/** @var Dependency $dependency */
|
||||||
foreach($version_entry->Dependencies as $dependency)
|
foreach($version_entry->Dependencies as $dependency)
|
||||||
|
{
|
||||||
self::import($dependency->PackageName, $dependency->version, $options);
|
self::import($dependency->PackageName, $dependency->version, $options);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
try
|
try
|
||||||
|
@ -173,8 +183,10 @@
|
||||||
{
|
{
|
||||||
$package = self::getPackageManager()->getPackage($package);
|
$package = self::getPackageManager()->getPackage($package);
|
||||||
|
|
||||||
if($package == null)
|
if($package === null)
|
||||||
|
{
|
||||||
throw new PackageNotFoundException('Package not found (null entry error, possible bug)');
|
throw new PackageNotFoundException('Package not found (null entry error, possible bug)');
|
||||||
|
}
|
||||||
|
|
||||||
return $package->getDataPath();
|
return $package->getDataPath();
|
||||||
}
|
}
|
||||||
|
@ -184,8 +196,11 @@
|
||||||
*/
|
*/
|
||||||
private static function getPackageManager(): PackageManager
|
private static function getPackageManager(): PackageManager
|
||||||
{
|
{
|
||||||
if(self::$package_manager == null)
|
if(self::$package_manager === null)
|
||||||
|
{
|
||||||
self::$package_manager = new PackageManager();
|
self::$package_manager = new PackageManager();
|
||||||
|
}
|
||||||
|
|
||||||
return self::$package_manager;
|
return self::$package_manager;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue