- Added new exception OperationException in \ncc\Exceptions to replace all generic related exceptions

- Removed unused exception `UnitsNotFoundException` in `\ncc\Exceptions` (not used)
 - Removed unused exception `NoAvailableUnitsException` in `\ncc\Exceptions` in favor for `OperationException`
 - Removed unused exception `InstallationException` in `\ncc\Exceptions` in favor for `OperationException`
 - Removed all unused exceptions from the project, reduced the number of exceptions in total.
This commit is contained in:
Netkas 2023-08-23 11:44:32 -04:00
parent 69d7b86534
commit eef360a8f7
No known key found for this signature in database
GPG key ID: 5DAF58535614062B
28 changed files with 102 additions and 500 deletions

View file

@ -28,7 +28,6 @@
use ncc\Enums\CompilerExtensionSupportedVersions;
use ncc\Exceptions\ConfigurationException;
use ncc\Exceptions\IOException;
use ncc\Exceptions\MalformedJsonException;
use ncc\Exceptions\PathNotFoundException;
use ncc\Managers\ProjectManager;
use ncc\Objects\CliHelpSection;
@ -45,7 +44,6 @@
* @return void
* @throws ConfigurationException
* @throws IOException
* @throws MalformedJsonException
* @throws PathNotFoundException
*/
public static function start($args): void
@ -65,7 +63,6 @@
* @return void
* @throws ConfigurationException
* @throws IOException
* @throws MalformedJsonException
* @throws PathNotFoundException
*/
public static function createProject($args): void

View file

@ -36,12 +36,11 @@
use ncc\Exceptions\ComposerException;
use ncc\Exceptions\ConfigurationException;
use ncc\Exceptions\NotSupportedException;
use ncc\Exceptions\OperationException;
use ncc\Exceptions\PackageException;
use ncc\Exceptions\PathNotFoundException;
use ncc\Exceptions\IOException;
use ncc\Exceptions\MalformedJsonException;
use ncc\Exceptions\RuntimeException;
use ncc\Exceptions\UserAbortedOperationException;
use ncc\Interfaces\ServiceSourceInterface;
use ncc\Managers\ProjectManager;
use ncc\ncc;
@ -78,12 +77,11 @@
* @throws ComposerException
* @throws ConfigurationException
* @throws IOException
* @throws MalformedJsonException
* @throws NotSupportedException
* @throws OperationException
* @throws PackageException
* @throws PathNotFoundException
* @throws RuntimeException
* @throws UserAbortedOperationException
*/
public static function fetch(RemotePackageInput $packageInput): string
{
@ -113,11 +111,10 @@
* @throws ComposerException
* @throws ConfigurationException
* @throws IOException
* @throws MalformedJsonException
* @throws NotSupportedException
* @throws OperationException
* @throws PackageException
* @throws PathNotFoundException
* @throws UserAbortedOperationException
*/
public static function fromLocal(string $path): string
{
@ -182,7 +179,6 @@
* @throws BuildException
* @throws ConfigurationException
* @throws IOException
* @throws MalformedJsonException
* @throws NotSupportedException
* @throws PackageException
* @throws PathNotFoundException
@ -202,7 +198,7 @@
}
catch(JsonException $e)
{
throw new MalformedJsonException($composer_lock_path, $e);
throw new IOException($composer_lock_path, $e);
}
$filesystem = new Filesystem();
@ -508,8 +504,8 @@
* @return string
* @throws ComposerException
* @throws IOException
* @throws OperationException
* @throws PathNotFoundException
* @throws UserAbortedOperationException
*/
private static function require(string $vendor, string $package, ?string $version = null): string
{
@ -627,7 +623,7 @@
* @param string $path
* @param array $options
* @return void
* @throws UserAbortedOperationException
* @throws OperationException
*/
private static function prepareProcess(Process $process, string $path, array $options): void
{
@ -642,7 +638,7 @@
{
if(!Console::getBooleanInput('Do you want to continue?'))
{
throw new UserAbortedOperationException('The operation was aborted by the user');
throw new OperationException('The operation was aborted by the user');
}
// The user understands the risks and wants to continue
@ -664,7 +660,6 @@
* @param mixed $composer_package
* @return ProjectConfiguration
* @throws IOException
* @throws MalformedJsonException
* @throws PackageException
* @throws PathNotFoundException
*/

View file

@ -27,9 +27,7 @@
use ncc\Classes\HttpClient;
use ncc\Exceptions\AuthenticationException;
use ncc\Exceptions\GitException;
use ncc\Exceptions\MalformedJsonException;
use ncc\Exceptions\NetworkException;
use ncc\Exceptions\VersionNotFoundException;
use ncc\Interfaces\RepositorySourceInterface;
use ncc\Objects\DefinedRemoteSource;
use ncc\Objects\HttpRequest;
@ -50,7 +48,6 @@
* @return RepositoryQueryResults
* @throws AuthenticationException
* @throws GitException
* @throws MalformedJsonException
* @throws NetworkException
*/
public static function getGitRepository(RemotePackageInput $packageInput, DefinedRemoteSource $definedRemoteSource, ?Entry $entry = null): RepositoryQueryResults
@ -82,9 +79,7 @@
* @return RepositoryQueryResults
* @throws AuthenticationException
* @throws GitException
* @throws MalformedJsonException
* @throws NetworkException
* @throws VersionNotFoundException
*/
public static function getRelease(RemotePackageInput $package_input, DefinedRemoteSource $defined_remote_source, ?Entry $entry = null): RepositoryQueryResults
{
@ -98,9 +93,7 @@
* @return RepositoryQueryResults
* @throws AuthenticationException
* @throws GitException
* @throws MalformedJsonException
* @throws NetworkException
* @throws VersionNotFoundException
*/
public static function getNccPackage(RemotePackageInput $packageInput, DefinedRemoteSource $definedRemoteSource, ?Entry $entry = null): RepositoryQueryResults
{
@ -116,7 +109,6 @@
* @return array
* @throws AuthenticationException
* @throws GitException
* @throws MalformedJsonException
* @throws NetworkException
*/
private static function getReleases(RemotePackageInput $packageInput, DefinedRemoteSource $definedRemoteSource, ?Entry $entry = null): array
@ -188,7 +180,6 @@
* @return array
* @throws AuthenticationException
* @throws GitException
* @throws MalformedJsonException
* @throws NetworkException
*/
private static function getJsonResponse(HttpRequest $httpRequest, ?Entry $entry): array
@ -215,9 +206,7 @@
* @return mixed
* @throws AuthenticationException
* @throws GitException
* @throws MalformedJsonException
* @throws NetworkException
* @throws VersionNotFoundException
*/
private static function processReleases(RemotePackageInput $packageInput, DefinedRemoteSource $definedRemoteSource, ?Entry $entry): mixed
{
@ -225,7 +214,7 @@
if (count($releases) === 0)
{
throw new VersionNotFoundException('No releases found for the given repository.');
throw new GitException(sprintf('No releases found for %s/%s on %s.', $packageInput->vendor, $packageInput->package, $definedRemoteSource->host));
}
if ($packageInput->version === Versions::LATEST)
@ -269,7 +258,7 @@
if ($selected_version === null)
{
throw new VersionNotFoundException('No releases found for the given repository.');
throw new GitException(sprintf('Version %s not found for %s/%s on %s.', $packageInput->version, $packageInput->vendor, $packageInput->package, $definedRemoteSource->host));
}
}
else
@ -279,7 +268,7 @@
if (!isset($releases[$selected_version]))
{
throw new VersionNotFoundException(sprintf('No releases found for the given repository. (Selected version: %s)', $selected_version));
throw new GitException(sprintf('Version %s not found for %s/%s on %s.', $packageInput->version, $packageInput->vendor, $packageInput->package, $definedRemoteSource->host));
}
return $releases[$selected_version];

View file

@ -26,10 +26,8 @@
use ncc\Classes\HttpClient;
use ncc\Exceptions\AuthenticationException;
use ncc\Exceptions\GitException;
use ncc\Exceptions\MalformedJsonException;
use ncc\Exceptions\NetworkException;
use ncc\Exceptions\NotSupportedException;
use ncc\Exceptions\ResourceNotFoundException;
use ncc\Interfaces\RepositorySourceInterface;
use ncc\Objects\DefinedRemoteSource;
use ncc\Objects\HttpRequest;
@ -51,7 +49,6 @@
* @return RepositoryQueryResults
* @throws AuthenticationException
* @throws GitException
* @throws MalformedJsonException
* @throws NetworkException
*/
public static function getGitRepository(RemotePackageInput $packageInput, DefinedRemoteSource $definedRemoteSource, ?Entry $entry=null): RepositoryQueryResults
@ -93,9 +90,7 @@
* @return RepositoryQueryResults
* @throws AuthenticationException
* @throws GitException
* @throws MalformedJsonException
* @throws NetworkException
* @throws ResourceNotFoundException
*/
public static function getRelease(RemotePackageInput $package_input, DefinedRemoteSource $defined_remote_source, ?Entry $entry = null): RepositoryQueryResults
{
@ -103,7 +98,7 @@
if(count($releases) === 0)
{
throw new ResourceNotFoundException(sprintf('No releases found for the repository %s/%s (selected version: %s)', $package_input->vendor, $package_input->package, $package_input->version));
throw new GitException(sprintf('No releases found for the repository %s/%s (selected version: %s)', $package_input->vendor, $package_input->package, $package_input->version));
}
// Query the latest package only
@ -148,7 +143,7 @@
if($selected_version === null)
{
throw new ResourceNotFoundException(sprintf('Could not find a release for %s/%s with the version %s', $package_input->vendor, $package_input->package, $package_input->version));
throw new GitException(sprintf('Could not find a release for %s/%s with the version %s', $package_input->vendor, $package_input->package, $package_input->version));
}
}
else
@ -158,7 +153,7 @@
if(!isset($releases[$selected_version]))
{
throw new ResourceNotFoundException(sprintf('Could not find a release for %s/%s with the version %s', $package_input->vendor, $package_input->package, $package_input->version));
throw new GitException(sprintf('Could not find a release for %s/%s with the version %s', $package_input->vendor, $package_input->package, $package_input->version));
}
return $releases[$selected_version];
@ -186,7 +181,6 @@
* @return array
* @throws AuthenticationException
* @throws GitException
* @throws MalformedJsonException
* @throws NetworkException
*/
private static function getReleases(string $owner, string $repository, DefinedRemoteSource $definedRemoteSource, ?Entry $entry): array

View file

@ -34,10 +34,8 @@
use ncc\Exceptions\BuildException;
use ncc\Exceptions\ConfigurationException;
use ncc\Exceptions\IOException;
use ncc\Exceptions\MalformedJsonException;
use ncc\Exceptions\NotSupportedException;
use ncc\Exceptions\PathNotFoundException;
use ncc\Exceptions\RunnerExecutionException;
use ncc\Interfaces\CompilerInterface;
use ncc\Managers\ProjectManager;
use ncc\ncc;
@ -60,7 +58,6 @@
* @throws BuildException
* @throws ConfigurationException
* @throws IOException
* @throws MalformedJsonException
* @throws NotSupportedException
* @throws PathNotFoundException
*/
@ -154,8 +151,8 @@
* @param ProjectConfiguration $configuration
* @return array
* @throws IOException
* @throws NotSupportedException
* @throws PathNotFoundException
* @throws RunnerExecutionException
*/
public static function compileExecutionPolicies(string $path, ProjectConfiguration $configuration): array
{

View file

@ -25,9 +25,9 @@
use ncc\Enums\Scopes;
use ncc\Exceptions\AuthenticationException;
use ncc\Exceptions\IOException;
use ncc\Exceptions\NoAvailableUnitsException;
use ncc\Exceptions\NotSupportedException;
use ncc\Exceptions\OperationException;
use ncc\Exceptions\PathNotFoundException;
use ncc\Exceptions\RunnerExecutionException;
use ncc\Managers\ExecutionPointerManager;
use ncc\Objects\Package\ExecutionUnit;
use ncc\Utilities\Resolver;
@ -43,9 +43,9 @@
* @return void
* @throws AuthenticationException
* @throws IOException
* @throws NoAvailableUnitsException
* @throws OperationException
* @throws PathNotFoundException
* @throws RunnerExecutionException
* @throws NotSupportedException
*/
public static function temporaryExecute(string $package, string $version, ExecutionUnit $unit): void
{

View file

@ -35,10 +35,9 @@
use ncc\Exceptions\BuildException;
use ncc\Exceptions\ConfigurationException;
use ncc\Exceptions\IOException;
use ncc\Exceptions\OperationException;
use ncc\Exceptions\PackageException;
use ncc\Exceptions\PathNotFoundException;
use ncc\Exceptions\RunnerExecutionException;
use ncc\Exceptions\VersionNotFoundException;
use ncc\Interfaces\CompilerInterface;
use ncc\Managers\PackageLockManager;
use ncc\Objects\Package;
@ -86,6 +85,7 @@
* @param string $build_configuration
* @return void
* @throws ConfigurationException
* @throws OperationException
* @throws PackageException
*/
public function prepare(string $build_configuration=BuildConfigurationValues::DEFAULT): void
@ -279,7 +279,7 @@
$version = $package->getVersion($dependency->Version);
if($version === null)
{
throw new VersionNotFoundException('Cannot find version ' . $dependency->Version . ' for dependency ' . $dependency->Name);
throw new OperationException('Cannot find version ' . $dependency->Version . ' for dependency ' . $dependency->Name);
}
Console::outDebug(sprintf('copying shadow package %s=%s to %s', $dependency->Name, $dependency->Version, $out_path));
@ -327,7 +327,6 @@
* @throws BuildException
* @throws IOException
* @throws PathNotFoundException
* @throws RunnerExecutionException
*/
public function build(): ?Package
{
@ -469,7 +468,6 @@
* @return void
* @throws IOException
* @throws PathNotFoundException
* @throws RunnerExecutionException
*/
public function compileExecutionPolicies(): void
{

View file

@ -28,71 +28,26 @@
*/
final class ExceptionCodes
{
/**
* @see MalformedJsonException
*/
public const MALFORMED_JSON = -1705;
/**
* @see RuntimeException
*/
public const RUNTIME = -1706;
/**
* @see ConstantReadonlyException
*/
public const CONSTANT_READ_ONLY = -1709;
/**
* @see NoUnitsFoundException
*/
public const NO_UNITS_FOUND = -1715;
/**
* @see BuildException
*/
public const BUILD_EXCEPTION = -1727;
/**
* @see InstallationException
*/
public const INSTALLATION_EXCEPTION = -1730;
/**
* @see IOException
*/
public const IO_EXCEPTION = -1735;
/**
* @see VersionNotFoundException
*/
public const VERSION_NOT_FOUND = -1737;
/**
* @see RunnerExecutionException
*/
public const RUNNER_EXECUTION_EXCEPTION = -1741;
/**
* @see NoAvailableUnitsException
*/
public const NO_AVAILABLE_UNITS = -1742;
/**
* @see ComposerException
*/
public const COMPOSER_EXCEPTION = -1749;
/**
* @see UserAbortedOperationException
*/
public const USER_ABORTED_OPERATION = -1750;
/**
* @see ImportException
*/
public const IMPORT_EXCEPTION = -1757;
/**
* @see AuthenticationException
*/
@ -138,22 +93,19 @@
*/
public const INTEGRITY_EXCEPTION = -1775;
/**
* @see OperationException
*/
public const OPERATION_EXCEPTION = -1776;
/**
* All the exception codes from NCC
*/
public const All = [
self::MALFORMED_JSON,
self::RUNTIME,
self::CONSTANT_READ_ONLY,
self::NO_UNITS_FOUND,
self::BUILD_EXCEPTION,
self::INSTALLATION_EXCEPTION,
self::IO_EXCEPTION,
self::VERSION_NOT_FOUND,
self::RUNNER_EXECUTION_EXCEPTION,
self::NO_AVAILABLE_UNITS,
self::COMPOSER_EXCEPTION,
self::USER_ABORTED_OPERATION,
self::AUTHENTICATION_EXCEPTION,
self::NOT_SUPPORTED_EXCEPTION,
self::ARCHIVE_EXCEPTION,
@ -162,6 +114,7 @@
self::CONFIGURATION_EXCEPTION,
self::PACKAGE_EXCEPTION,
self::NETWORK_EXCEPTION,
self::INTEGRITY_EXCEPTION
self::INTEGRITY_EXCEPTION,
self::OPERATION_EXCEPTION
];
}

View file

@ -1,40 +0,0 @@
<?php
/*
* Copyright (c) Nosial 2022-2023, all rights reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
* associated documentation files (the "Software"), to deal in the Software without restriction, including without
* limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the
* Software, and to permit persons to whom the Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be included in all copies or substantial portions
* of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
* PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*
*/
namespace ncc\Exceptions;
use Exception;
use ncc\Enums\ExceptionCodes;
use Throwable;
class ComponentChecksumException extends Exception
{
/**
* @param string $message
* @param Throwable|null $previous
*/
public function __construct(string $message = "", ?Throwable $previous = null)
{
parent::__construct($message, ExceptionCodes::COMPONENT_CHECKSUM_EXCEPTION, $previous);
}
}

View file

@ -1,39 +0,0 @@
<?php
/*
* Copyright (c) Nosial 2022-2023, all rights reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
* associated documentation files (the "Software"), to deal in the Software without restriction, including without
* limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the
* Software, and to permit persons to whom the Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be included in all copies or substantial portions
* of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
* PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*
*/
namespace ncc\Exceptions;
use Exception;
use ncc\Enums\ExceptionCodes;
use Throwable;
class InstallationException extends Exception
{
/**
* @param string $message
* @param Throwable|null $previous
*/
public function __construct(string $message = "", ?Throwable $previous = null)
{
parent::__construct($message, ExceptionCodes::INSTALLATION_EXCEPTION, $previous);
}
}

View file

@ -1,40 +0,0 @@
<?php
/*
* Copyright (c) Nosial 2022-2023, all rights reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
* associated documentation files (the "Software"), to deal in the Software without restriction, including without
* limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the
* Software, and to permit persons to whom the Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be included in all copies or substantial portions
* of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
* PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*
*/
namespace ncc\Exceptions;
use Exception;
use ncc\Enums\ExceptionCodes;
use Throwable;
class MalformedJsonException extends Exception
{
/**
* @param string $message
* @param Throwable|null $previous
*/
public function __construct(string $message = "", ?Throwable $previous = null)
{
parent::__construct($message, ExceptionCodes::MALFORMED_JSON, $previous);
}
}

View file

@ -1,39 +0,0 @@
<?php
/*
* Copyright (c) Nosial 2022-2023, all rights reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
* associated documentation files (the "Software"), to deal in the Software without restriction, including without
* limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the
* Software, and to permit persons to whom the Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be included in all copies or substantial portions
* of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
* PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*
*/
namespace ncc\Exceptions;
use Exception;
use ncc\Enums\ExceptionCodes;
use Throwable;
class NoAvailableUnitsException extends Exception
{
/**
* @param string $message
* @param Throwable|null $previous
*/
public function __construct(string $message = "", ?Throwable $previous = null)
{
parent::__construct($message, ExceptionCodes::NO_AVAILABLE_UNITS, $previous);
}
}

View file

@ -1,39 +0,0 @@
<?php
/*
* Copyright (c) Nosial 2022-2023, all rights reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
* associated documentation files (the "Software"), to deal in the Software without restriction, including without
* limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the
* Software, and to permit persons to whom the Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be included in all copies or substantial portions
* of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
* PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*
*/
namespace ncc\Exceptions;
use Exception;
use ncc\Enums\ExceptionCodes;
use Throwable;
class NoUnitsFoundException extends Exception
{
/**
* @param string $message
* @param Throwable|null $previous
*/
public function __construct(string $message = "", ?Throwable $previous = null)
{
parent::__construct($message, ExceptionCodes::NO_UNITS_FOUND, $previous);
}
}

View file

@ -22,10 +22,14 @@
namespace ncc\Exceptions;
class ResourceNotFoundException extends \Exception
use Exception;
use ncc\Enums\ExceptionCodes;
use Throwable;
class OperationException extends Exception
{
public function __construct(string $message = "", int $code = 0, ?Throwable $previous = null)
public function __construct(string $message = "", ?Throwable $previous = null)
{
parent::__construct($message, $code, $previous);
parent::__construct($message, ExceptionCodes::OPERATION_EXCEPTION, $previous);
}
}

View file

@ -1,39 +0,0 @@
<?php
/*
* Copyright (c) Nosial 2022-2023, all rights reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
* associated documentation files (the "Software"), to deal in the Software without restriction, including without
* limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the
* Software, and to permit persons to whom the Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be included in all copies or substantial portions
* of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
* PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*
*/
namespace ncc\Exceptions;
use Exception;
use ncc\Enums\ExceptionCodes;
use Throwable;
class RunnerExecutionException extends Exception
{
/**
* @param string $message
* @param Throwable|null $previous
*/
public function __construct(string $message = "", ?Throwable $previous = null)
{
parent::__construct($message, ExceptionCodes::RUNNER_EXECUTION_EXCEPTION, $previous);
}
}

View file

@ -1,39 +0,0 @@
<?php
/*
* Copyright (c) Nosial 2022-2023, all rights reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
* associated documentation files (the "Software"), to deal in the Software without restriction, including without
* limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the
* Software, and to permit persons to whom the Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be included in all copies or substantial portions
* of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
* PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*
*/
namespace ncc\Exceptions;
use Exception;
use ncc\Enums\ExceptionCodes;
use Throwable;
class UserAbortedOperationException extends Exception
{
/**
* @param string $message
* @param Throwable|null $previous
*/
public function __construct(string $message = "", Throwable $previous = null)
{
parent::__construct($message, ExceptionCodes::USER_ABORTED_OPERATION, $previous);
}
}

View file

@ -1,39 +0,0 @@
<?php
/*
* Copyright (c) Nosial 2022-2023, all rights reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
* associated documentation files (the "Software"), to deal in the Software without restriction, including without
* limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the
* Software, and to permit persons to whom the Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be included in all copies or substantial portions
* of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
* PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*
*/
namespace ncc\Exceptions;
use Exception;
use ncc\Enums\ExceptionCodes;
use Throwable;
class VersionNotFoundException extends Exception
{
/**
* @param string $message
* @param Throwable|null $previous
*/
public function __construct(string $message = "", ?Throwable $previous = null)
{
parent::__construct($message, ExceptionCodes::VERSION_NOT_FOUND, $previous);
}
}

View file

@ -23,7 +23,6 @@
namespace ncc\Interfaces;
use Exception;
use ncc\Exceptions\ComponentChecksumException;
use ncc\Objects\InstallationPaths;
use ncc\Objects\Package;
use ncc\Objects\Package\Component;
@ -42,7 +41,6 @@ namespace ncc\Interfaces;
*
* @param Component $component
* @return string|null
* @throws ComponentChecksumException
*/
public function processComponent(Package\Component $component): ?string;

View file

@ -37,9 +37,9 @@
use ncc\Classes\PythonExtension\PythonRunner;
use ncc\Exceptions\AuthenticationException;
use ncc\Exceptions\IOException;
use ncc\Exceptions\NoAvailableUnitsException;
use ncc\Exceptions\NotSupportedException;
use ncc\Exceptions\OperationException;
use ncc\Exceptions\PathNotFoundException;
use ncc\Exceptions\RunnerExecutionException;
use ncc\Objects\ExecutionPointers;
use ncc\Objects\Package;
use ncc\Objects\Package\ExecutionUnit;
@ -165,8 +165,9 @@
* @param ExecutionUnit $unit
* @param bool $temporary
* @return void
* @throws AuthenticationException
* @throws IOException
* @throws RunnerExecutionException
* @throws NotSupportedException
* @throws PathNotFoundException
*/
public function addUnit(string $package, string $version, ExecutionUnit $unit, bool $temporary=false): void
@ -210,7 +211,7 @@
Runners::PYTHON_2 => Python2Runner::getFileExtension(),
Runners::PYTHON_3 => Python3Runner::getFileExtension(),
Runners::LUA => LuaRunner::getFileExtension(),
default => throw new RunnerExecutionException('The runner \'' . $unit->execution_policy->runner . '\' is not supported'),
default => throw new NotSupportedException('The runner \'' . $unit->execution_policy->runner . '\' is not supported'),
};
Console::outDebug(sprintf('bin_file=%s', $bin_file));
@ -265,7 +266,9 @@
* @param string $version
* @param string $name
* @return bool
* @throws AuthenticationException
* @throws IOException
* @throws PathNotFoundException
*/
public function removeUnit(string $package, string $version, string $name): bool
{
@ -326,6 +329,7 @@
* @param string $version
* @return array
* @throws IOException
* @throws PathNotFoundException
*/
public function getUnits(string $package, string $version): array
{
@ -363,8 +367,8 @@
* @param array $args
* @return int
* @throws IOException
* @throws NoAvailableUnitsException
* @throws RunnerExecutionException
* @throws OperationException
* @throws PathNotFoundException
*/
public function executeUnit(string $package, string $version, string $name, array $args=[]): int
{
@ -375,7 +379,7 @@
if(!file_exists($package_config_path))
{
throw new NoAvailableUnitsException('There is no available units for \'' . $package . '=' .$version .'\'');
throw new OperationException('There is no available units for \'' . $package . '=' .$version .'\'');
}
$execution_pointers = ExecutionPointers::fromArray(ZiProto::decode(IO::fread($package_config_path)));
@ -383,7 +387,7 @@
if($unit === null)
{
throw new RunnerExecutionException('The execution unit \'' . $name . '\' was not found for \'' . $package . '=' .$version .'\'');
throw new OperationException('The execution unit \'' . $name . '\' was not found for \'' . $package . '=' .$version .'\'');
}
Console::outDebug(sprintf('unit=%s', $unit->execution_policy->name));
@ -453,7 +457,6 @@
}
}
Console::outDebug(sprintf('working_directory=%s', $process->getWorkingDirectory()));
Console::outDebug(sprintf('timeout=%s', (int)$process->getTimeout()));
Console::outDebug(sprintf('silent=%s', ($unit->execution_policy->execute->silent ? 'true' : 'false')));
@ -516,10 +519,11 @@
* @param Package $package
* @param string $unit_name
* @return void
* @throws AuthenticationException
* @throws IOException
* @throws NoAvailableUnitsException
* @throws NotSupportedException
* @throws OperationException
* @throws PathNotFoundException
* @throws RunnerExecutionException
*/
public function temporaryExecute(Package $package, string $unit_name): void
{
@ -528,7 +532,7 @@
if($unit === null)
{
throw new NoAvailableUnitsException(sprintf('No execution unit named \'%s\' is available for package \'%s\'', $unit_name, $package->assembly->package));
throw new OperationException(sprintf('No execution unit named \'%s\' is available for package \'%s\'', $unit_name, $package->assembly->package));
}
// Get the required units
@ -577,8 +581,8 @@
* @param Process|null $process
* @return bool
* @throws IOException
* @throws NoAvailableUnitsException
* @throws RunnerExecutionException
* @throws OperationException
* @throws PathNotFoundException
*/
public function handleExit(string $package, string $version, ExitHandle $exit_handler, ?Process $process=null): bool
{

View file

@ -39,13 +39,11 @@
use ncc\Classes\PhpExtension\PhpInstaller;
use ncc\CLI\Main;
use ncc\Exceptions\AuthenticationException;
use ncc\Exceptions\InstallationException;
use ncc\Exceptions\IOException;
use ncc\Exceptions\NotSupportedException;
use ncc\Exceptions\OperationException;
use ncc\Exceptions\PackageException;
use ncc\Exceptions\PathNotFoundException;
use ncc\Exceptions\RunnerExecutionException;
use ncc\Exceptions\VersionNotFoundException;
use ncc\Objects\DefinedRemoteSource;
use ncc\Objects\InstallationPaths;
use ncc\Objects\Package;
@ -99,12 +97,10 @@
* @return string
* @throws AuthenticationException
* @throws IOException
* @throws InstallationException
* @throws NotSupportedException
* @throws OperationException
* @throws PackageException
* @throws PathNotFoundException
* @throws RunnerExecutionException
* @throws VersionNotFoundException
*/
public function install(string $package_path, ?Entry $entry=null, array $options=[]): string
{
@ -230,7 +226,7 @@
}
catch(Exception $e)
{
throw new InstallationException('Error while creating directory, ' . $e->getMessage(), $e);
throw new IOException('Error while creating directory, ' . $e->getMessage(), $e);
}
try
@ -245,7 +241,7 @@
}
catch(Exception $e)
{
throw new InstallationException('Cannot initialize package install, ' . $e->getMessage(), $e);
throw new OperationException('Cannot initialize package install, ' . $e->getMessage(), $e);
}
// Execute the pre-installation stage before the installation stage
@ -257,7 +253,7 @@
}
catch (Exception $e)
{
throw new InstallationException('Pre installation stage failed, ' . $e->getMessage(), $e);
throw new OperationException('Pre installation stage failed, ' . $e->getMessage(), $e);
}
if($package->installer?->PreInstall !== null && count($package->installer->PreInstall) > 0)
@ -301,7 +297,7 @@
}
catch(Exception $e)
{
throw new InstallationException('Cannot process one or more components, ' . $e->getMessage(), $e);
throw new OperationException('Cannot process one or more components, ' . $e->getMessage(), $e);
}
++$current_steps;
@ -331,7 +327,7 @@
}
catch(Exception $e)
{
throw new InstallationException('Cannot process one or more resources, ' . $e->getMessage(), $e);
throw new OperationException('Cannot process one or more resources, ' . $e->getMessage(), $e);
}
++$current_steps;
@ -367,7 +363,7 @@
{
if($package->main_execution_policy === null)
{
throw new InstallationException('Cannot create symlink, no main execution policy is defined');
throw new OperationException('Cannot create symlink, no main execution policy is defined');
}
Console::outDebug(sprintf('creating symlink to %s', $package->assembly->package));
@ -388,7 +384,7 @@
}
catch (Exception $e)
{
throw new InstallationException('Post installation stage failed, ' . $e->getMessage(), $e);
throw new OperationException('Post installation stage failed, ' . $e->getMessage(), $e);
}
if($package->installer?->PostInstall !== null && count($package->installer->PostInstall) > 0)
@ -446,8 +442,8 @@
* @param string $source
* @param Entry|null $entry
* @return string
* @throws InstallationException
* @throws NotSupportedException
* @throws OperationException
* @throws PackageException
*/
public function fetchFromSource(string $source, ?Entry $entry=null): string
@ -498,7 +494,7 @@
$source = (new RemoteSourcesManager())->getRemoteSource($input->source);
if($source === null)
{
throw new InstallationException('Remote source ' . $input->source . ' is not defined');
throw new OperationException('Remote source ' . $input->source . ' is not defined');
}
$repositoryQueryResults = Functions::getRepositoryQueryResults($input, $source, $entry);
@ -613,7 +609,7 @@
* @param Entry|null $entry
* @param array $options
* @return string
* @throws InstallationException
* @throws OperationException
*/
public function installFromSource(string $source, ?Entry $entry, array $options=[]): string
{
@ -626,7 +622,7 @@
}
catch(Exception $e)
{
throw new InstallationException('Cannot install package from source, ' . $e->getMessage(), $e);
throw new OperationException('Cannot install package from source, ' . $e->getMessage(), $e);
}
}
@ -639,12 +635,10 @@
* @return void
* @throws AuthenticationException
* @throws IOException
* @throws InstallationException
* @throws NotSupportedException
* @throws OperationException
* @throws PackageException
* @throws PathNotFoundException
* @throws RunnerExecutionException
* @throws VersionNotFoundException
*/
private function processDependency(Dependency $dependency, Package $package, string $package_path, ?Entry $entry=null, array $options=[]): void
{
@ -790,7 +784,7 @@
$version = $package->getVersion($exploded[1]);
if($version === null)
{
throw new VersionNotFoundException('Version ' . $exploded[1] . ' not found for package ' . $exploded[0]);
throw new OperationException('Version ' . $exploded[1] . ' not found for package ' . $exploded[0]);
}
foreach ($version->Dependencies as $dependency)
@ -872,6 +866,7 @@
* @throws AuthenticationException
* @throws IOException
* @throws PackageException
* @throws PathNotFoundException
*/
public function uninstallPackageVersion(string $package, string $version): void
{
@ -987,7 +982,7 @@
/**
* @param Package $package
* @param InstallationPaths $paths
* @throws InstallationException
* @throws OperationException
*/
private static function initData(Package $package, InstallationPaths $paths): void
{
@ -1020,7 +1015,7 @@
}
catch (IOException $e)
{
throw new InstallationException('Cannot write to file \'' . $file . '\', ' . $e->getMessage(), $e);
throw new OperationException('Cannot write to file \'' . $file . '\', ' . $e->getMessage(), $e);
}
}
}

View file

@ -31,7 +31,6 @@
use ncc\Exceptions\BuildException;
use ncc\Exceptions\ConfigurationException;
use ncc\Exceptions\IOException;
use ncc\Exceptions\MalformedJsonException;
use ncc\Exceptions\NotSupportedException;
use ncc\Exceptions\PathNotFoundException;
use ncc\Objects\ProjectConfiguration;
@ -69,7 +68,6 @@
* @param string $path
* @throws ConfigurationException
* @throws IOException
* @throws MalformedJsonException
* @throws PathNotFoundException
*/
public function __construct(string $path)
@ -105,7 +103,6 @@
* @param array $options
* @throws ConfigurationException
* @throws IOException
* @throws MalformedJsonException
*/
public function initializeProject(Compiler $compiler, string $name, string $package, ?string $src=null, array $options=[]): void
{
@ -213,7 +210,6 @@
* @return void
* @throws ConfigurationException
* @throws IOException
* @throws MalformedJsonException
* @throws PathNotFoundException
*/
public function load(): void
@ -230,7 +226,6 @@
* Saves the project configuration
*
* @return void
* @throws MalformedJsonException
*/
public function save(): void
{
@ -248,7 +243,6 @@
* @return ProjectConfiguration
* @throws ConfigurationException
* @throws IOException
* @throws MalformedJsonException
* @throws PathNotFoundException
*/
public function getProjectConfiguration(): ProjectConfiguration
@ -280,7 +274,6 @@
* @throws BuildException
* @throws ConfigurationException
* @throws IOException
* @throws MalformedJsonException
* @throws NotSupportedException
* @throws PathNotFoundException
*/

View file

@ -25,7 +25,7 @@
namespace ncc\Objects;
use ncc\Enums\Versions;
use ncc\Exceptions\VersionNotFoundException;
use ncc\Exceptions\IOException;
use ncc\Objects\PackageLock\PackageEntry;
use ncc\Utilities\Console;
use ncc\Utilities\Functions;
@ -183,7 +183,7 @@
{
$version_entry = $package_entry->getVersion($version);
}
catch (VersionNotFoundException $e)
catch (IOException $e)
{
unset($e);
return false;

View file

@ -28,7 +28,6 @@
use ncc\Enums\Options\BuildConfigurationValues;
use ncc\Exceptions\ConfigurationException;
use ncc\Exceptions\IOException;
use ncc\Exceptions\MalformedJsonException;
use ncc\Exceptions\NotSupportedException;
use ncc\Exceptions\PathNotFoundException;
use ncc\Interfaces\BytecodeObjectInterface;
@ -366,7 +365,6 @@
* @param string $path
* @param bool $bytecode
* @return void
* @throws MalformedJsonException
* @noinspection PhpUnused
*/
public function toFile(string $path, bool $bytecode=false): void
@ -386,7 +384,6 @@
* @param string $path
* @return ProjectConfiguration
* @throws IOException
* @throws MalformedJsonException
* @throws PathNotFoundException
*/
public static function fromFile(string $path): ProjectConfiguration

View file

@ -42,10 +42,9 @@
use ncc\Exceptions\ArchiveException;
use ncc\Exceptions\AuthenticationException;
use ncc\Exceptions\IOException;
use ncc\Exceptions\MalformedJsonException;
use ncc\Exceptions\NetworkException;
use ncc\Exceptions\NotSupportedException;
use ncc\Exceptions\PathNotFoundException;
use ncc\Exceptions\RunnerExecutionException;
use ncc\Managers\ConfigurationManager;
use ncc\Managers\CredentialManager;
use ncc\Managers\PackageLockManager;
@ -121,7 +120,6 @@
* @param int $flags
* @return mixed
* @throws IOException
* @throws MalformedJsonException
* @throws PathNotFoundException
*/
public static function loadJsonFile(string $path, int $flags=0): mixed
@ -140,7 +138,7 @@
* @param string $json
* @param int $flags
* @return mixed
* @throws MalformedJsonException
* @throws IOException
*/
public static function loadJson(string $json, int $flags=0): mixed
{
@ -150,7 +148,7 @@
}
catch(Throwable $e)
{
throw new MalformedJsonException($e->getMessage(), $e);
throw new IOException($e->getMessage(), $e);
}
}
@ -160,7 +158,7 @@
* @param mixed $value
* @param int $flags
* @return string
* @throws MalformedJsonException
* @throws IOException
*/
public static function encodeJson(mixed $value, int $flags=0): string
{
@ -175,7 +173,7 @@
}
catch (JsonException $e)
{
throw new MalformedJsonException($e->getMessage(), $e);
throw new IOException($e->getMessage(), $e);
}
}
@ -186,7 +184,6 @@
* @param string $path
* @param int $flags
* @return void
* @throws MalformedJsonException
*/
public static function encodeJsonFile(mixed $value, string $path, int $flags=0): void
{
@ -291,8 +288,8 @@
* @param ExecutionPolicy $policy
* @return ExecutionUnit
* @throws IOException
* @throws NotSupportedException
* @throws PathNotFoundException
* @throws RunnerExecutionException
*/
public static function compileRunner(string $path, ExecutionPolicy $policy): ExecutionUnit
{
@ -305,7 +302,7 @@
Runners::PYTHON_2 => Python2Runner::processUnit($path, $policy),
Runners::PYTHON_3 => Python3Runner::processUnit($path, $policy),
Runners::LUA => LuaRunner::processUnit($path, $policy),
default => throw new RunnerExecutionException('The runner \'' . $policy->runner . '\' is not supported'),
default => throw new NotSupportedException('The runner \'' . $policy->runner . '\' is not supported'),
};
}
@ -419,7 +416,6 @@
* @param string $path
* @return ComposerJson
* @throws IOException
* @throws MalformedJsonException
* @throws PathNotFoundException
*/
public static function loadComposerJson(string $path): ComposerJson
@ -432,7 +428,7 @@
}
catch(JsonException $e)
{
throw new MalformedJsonException('Cannot parse composer.json, ' . $e->getMessage(), $e);
throw new IOException('Cannot parse composer.json, ' . $e->getMessage(), $e);
}
}

View file

@ -25,7 +25,7 @@
use InvalidArgumentException;
use ncc\Enums\Scopes;
use ncc\Exceptions\ConfigurationException;
use ncc\Exceptions\RunnerExecutionException;
use ncc\Exceptions\OperationException;
use ncc\ThirdParty\Symfony\Process\ExecutableFinder;
class PathFinder
@ -219,7 +219,7 @@
*
* @param string $runner
* @return string
* @throws RunnerExecutionException
* @throws OperationException
*/
public static function findRunner(string $runner): string
{
@ -242,6 +242,6 @@
return $exec_path;
}
throw new RunnerExecutionException(sprintf('Unable to find \'%s\' executable', $runner));
throw new OperationException(sprintf('Unable to find \'%s\' executable', $runner));
}
}

View file

@ -26,10 +26,10 @@
namespace ncc;
use ncc\Exceptions\IOException;
use ncc\Exceptions\MalformedJsonException;
use ncc\Exceptions\PathNotFoundException;
use ncc\Objects\NccVersionInformation;
use ncc\Utilities\Functions;
use RuntimeException;
/**
* @author Zi Xing Narrakas
@ -50,7 +50,6 @@
*
* @param boolean $reload Indicates if the cached version is to be ignored and the version file to be reloaded and validated
* @return NccVersionInformation
* @throws IOException
* @throws PathNotFoundException
*/
public static function getVersionInformation(bool $reload=False): NccVersionInformation
@ -62,26 +61,26 @@
if(!file_exists(__DIR__ . DIRECTORY_SEPARATOR . 'version.json'))
{
throw new \RuntimeException('The file \'version.json\' was not found in \'' . __DIR__ . '\'');
throw new RuntimeException('The file \'version.json\' was not found in \'' . __DIR__ . '\'');
}
try
{
self::$version_information = NccVersionInformation::fromArray(Functions::loadJsonFile(__DIR__ . DIRECTORY_SEPARATOR . 'version.json', Functions::FORCE_ARRAY));
}
catch(MalformedJsonException $e)
catch(IOException $e)
{
throw new \RuntimeException('Unable to parse JSON contents of \'version.json\' in \'' . __DIR__ . '\'', $e);
throw new RuntimeException('Unable to parse JSON contents of \'version.json\' in \'' . __DIR__ . '\'', $e);
}
if(self::$version_information->Version === null)
{
throw new \RuntimeException('The version number is not specified in the version information file');
throw new RuntimeException('The version number is not specified in the version information file');
}
if(self::$version_information->Branch === null)
{
throw new \RuntimeException('The version branch is not specified in the version information file');
throw new RuntimeException('The version branch is not specified in the version information file');
}
return self::$version_information;
@ -136,7 +135,7 @@
if(!defined('NCC_INIT'))
{
/** @noinspection ClassConstantCanBeUsedInspection */
throw new \RuntimeException('NCC Must be initialized before executing ' . get_called_class() . '::getConstants()');
throw new RuntimeException('NCC Must be initialized before executing ' . get_called_class() . '::getConstants()');
}
return [