From 0ac30c079f9c4da70c4931c1e1c7081fbdd1d87d Mon Sep 17 00:00:00 2001 From: Christoph Wurst Date: Wed, 10 Feb 2021 09:02:23 +0100 Subject: [PATCH] Add the psr/event-dispatcher package Signed-off-by: Christoph Wurst --- .gitignore | 2 + composer.json | 11 +- composer.lock | 52 ++++++- composer/ClassLoader.php | 32 +++++ composer/InstalledVersions.php | 128 ++++++++++++++---- composer/autoload_classmap.php | 3 + composer/autoload_psr4.php | 1 + composer/autoload_real.php | 2 +- composer/autoload_static.php | 8 ++ composer/installed.json | 53 ++++++++ composer/installed.php | 13 +- .../src/PackageVersions/Versions.php | 3 +- psr/event-dispatcher/.gitignore | 2 + psr/event-dispatcher/LICENSE | 21 +++ psr/event-dispatcher/README.md | 6 + psr/event-dispatcher/composer.json | 26 ++++ .../src/EventDispatcherInterface.php | 21 +++ .../src/ListenerProviderInterface.php | 19 +++ .../src/StoppableEventInterface.php | 26 ++++ 19 files changed, 392 insertions(+), 37 deletions(-) create mode 100644 psr/event-dispatcher/.gitignore create mode 100644 psr/event-dispatcher/LICENSE create mode 100644 psr/event-dispatcher/README.md create mode 100644 psr/event-dispatcher/composer.json create mode 100644 psr/event-dispatcher/src/EventDispatcherInterface.php create mode 100644 psr/event-dispatcher/src/ListenerProviderInterface.php create mode 100644 psr/event-dispatcher/src/StoppableEventInterface.php diff --git a/.gitignore b/.gitignore index d93832d70..cbeb7299a 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,8 @@ bin */**/phpstan.neon .php_cs.dist +# ignore editor config +**/*.editorconfig # ignore demo files **/.travis.yml # ignore .github files diff --git a/composer.json b/composer.json index e94a9f940..f40290fcb 100644 --- a/composer.json +++ b/composer.json @@ -29,14 +29,17 @@ "microsoft/azure-storage-blob": "^1.5", "nextcloud/lognormalizer": "^1.0", "nikic/php-parser": "^4.2", + "opis/closure": "^3.6", "patchwork/jsqueeze": "^2.0", "pear/archive_tar": "^1.4.9", "pear/pear-core-minimal": "^v1.10", - "phpseclib/phpseclib": "2.0.30", + "php-ds/php-ds": "^1.3", "php-http/guzzle7-adapter": "^0.1.1", "php-opencloud/openstack": "^3.1", + "phpseclib/phpseclib": "2.0.30", "pimple/pimple": "3.3.1", "psr/container": "^1.0", + "psr/event-dispatcher": "^1.0", "punic/punic": "^1.6", "sabre/dav": "^4.1.3", "scssphp/scssphp": "^1.4.0", @@ -45,14 +48,12 @@ "symfony/console": "4.4.19", "symfony/event-dispatcher": "4.4.19", "symfony/event-dispatcher-contracts": "1.1.9", - "symfony/polyfill-intl-normalizer": "^1.20", "symfony/polyfill-intl-grapheme": "^1.20", + "symfony/polyfill-intl-normalizer": "^1.20", "symfony/process": "4.4.19", "symfony/routing": "4.4.19", "symfony/translation": "4.4.19", - "web-auth/webauthn-lib": "^3.1", - "php-ds/php-ds": "^1.3", - "opis/closure": "^3.6" + "web-auth/webauthn-lib": "^3.1" }, "scripts": { "vendor": "composer install --no-dev && git clean -xdf && composer dump-autoload" diff --git a/composer.lock b/composer.lock index 951b8e24e..137074357 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "328af51c7d776b3a58525611958edf5d", + "content-hash": "6bd5afe10bb7cd72024d5e52d17d1252", "packages": [ { "name": "aws/aws-sdk-php", @@ -3018,6 +3018,56 @@ }, "time": "2017-02-14T16:28:37+00:00" }, + { + "name": "psr/event-dispatcher", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/event-dispatcher.git", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0", + "shasum": "" + }, + "require": { + "php": ">=7.2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\EventDispatcher\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Standard interfaces for event handling.", + "keywords": [ + "events", + "psr", + "psr-14" + ], + "support": { + "issues": "https://github.com/php-fig/event-dispatcher/issues", + "source": "https://github.com/php-fig/event-dispatcher/tree/1.0.0" + }, + "time": "2019-01-08T18:20:26+00:00" + }, { "name": "psr/http-client", "version": "1.0.1", diff --git a/composer/ClassLoader.php b/composer/ClassLoader.php index 1a58957d2..4d989a212 100644 --- a/composer/ClassLoader.php +++ b/composer/ClassLoader.php @@ -42,6 +42,8 @@ */ class ClassLoader { + private $vendorDir; + // PSR-4 private $prefixLengthsPsr4 = array(); private $prefixDirsPsr4 = array(); @@ -57,6 +59,13 @@ class ClassLoader private $missingClasses = array(); private $apcuPrefix; + private static $registeredLoaders = array(); + + public function __construct($vendorDir = null) + { + $this->vendorDir = $vendorDir; + } + public function getPrefixes() { if (!empty($this->prefixesPsr0)) { @@ -300,6 +309,15 @@ public function getApcuPrefix() public function register($prepend = false) { spl_autoload_register(array($this, 'loadClass'), true, $prepend); + + if (null === $this->vendorDir) { + //no-op + } elseif ($prepend) { + self::$registeredLoaders = array($this->vendorDir => $this) + self::$registeredLoaders; + } else { + unset(self::$registeredLoaders[$this->vendorDir]); + self::$registeredLoaders[$this->vendorDir] = $this; + } } /** @@ -308,6 +326,10 @@ public function register($prepend = false) public function unregister() { spl_autoload_unregister(array($this, 'loadClass')); + + if (null !== $this->vendorDir) { + unset(self::$registeredLoaders[$this->vendorDir]); + } } /** @@ -367,6 +389,16 @@ public function findFile($class) return $file; } + /** + * Returns the currently registered loaders indexed by their corresponding vendor directories. + * + * @return self[] + */ + public static function getRegisteredLoaders() + { + return self::$registeredLoaders; + } + private function findFileWithExtension($class, $ext) { // PSR-4 lookup diff --git a/composer/InstalledVersions.php b/composer/InstalledVersions.php index a21b23537..eddb5ce60 100644 --- a/composer/InstalledVersions.php +++ b/composer/InstalledVersions.php @@ -12,6 +12,7 @@ namespace Composer; +use Composer\Autoload\ClassLoader; use Composer\Semver\VersionParser; @@ -29,7 +30,7 @@ class InstalledVersions 'aliases' => array ( ), - 'reference' => '3c8d312d2b0ca138164e37ef147329fb3b666436', + 'reference' => '90a8336c3b51a3be5869569ef8e84949a1e67608', 'name' => 'nextcloud/3rdparty', ), 'versions' => @@ -311,7 +312,7 @@ class InstalledVersions 'aliases' => array ( ), - 'reference' => '3c8d312d2b0ca138164e37ef147329fb3b666436', + 'reference' => '90a8336c3b51a3be5869569ef8e84949a1e67608', ), 'nextcloud/lognormalizer' => array ( @@ -478,6 +479,15 @@ class InstalledVersions ), 'reference' => 'b7ce3b176482dbbc1245ebf52b181af44c2cf55f', ), + 'psr/event-dispatcher' => + array ( + 'pretty_version' => '1.0.0', + 'version' => '1.0.0.0', + 'aliases' => + array ( + ), + 'reference' => 'dbefd12671e8a14ec7f180cab83036ed26714bb0', + ), 'psr/event-dispatcher-implementation' => array ( 'provided' => @@ -910,6 +920,8 @@ class InstalledVersions ), ), ); +private static $canGetVendors; +private static $installedByVendor = array(); @@ -919,7 +931,17 @@ class InstalledVersions public static function getInstalledPackages() { -return array_keys(self::$installed['versions']); +$packages = array(); +foreach (self::getInstalled() as $installed) { +$packages[] = array_keys($installed['versions']); +} + + +if (1 === \count($packages)) { +return $packages[0]; +} + +return array_keys(array_flip(\call_user_func_array('array_merge', $packages))); } @@ -932,7 +954,13 @@ public static function getInstalledPackages() public static function isInstalled($packageName) { -return isset(self::$installed['versions'][$packageName]); +foreach (self::getInstalled() as $installed) { +if (isset($installed['versions'][$packageName])) { +return true; +} +} + +return false; } @@ -967,42 +995,50 @@ public static function satisfies(VersionParser $parser, $packageName, $constrain public static function getVersionRanges($packageName) { -if (!isset(self::$installed['versions'][$packageName])) { -throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); +foreach (self::getInstalled() as $installed) { +if (!isset($installed['versions'][$packageName])) { +continue; } $ranges = array(); -if (isset(self::$installed['versions'][$packageName]['pretty_version'])) { -$ranges[] = self::$installed['versions'][$packageName]['pretty_version']; +if (isset($installed['versions'][$packageName]['pretty_version'])) { +$ranges[] = $installed['versions'][$packageName]['pretty_version']; } -if (array_key_exists('aliases', self::$installed['versions'][$packageName])) { -$ranges = array_merge($ranges, self::$installed['versions'][$packageName]['aliases']); +if (array_key_exists('aliases', $installed['versions'][$packageName])) { +$ranges = array_merge($ranges, $installed['versions'][$packageName]['aliases']); } -if (array_key_exists('replaced', self::$installed['versions'][$packageName])) { -$ranges = array_merge($ranges, self::$installed['versions'][$packageName]['replaced']); +if (array_key_exists('replaced', $installed['versions'][$packageName])) { +$ranges = array_merge($ranges, $installed['versions'][$packageName]['replaced']); } -if (array_key_exists('provided', self::$installed['versions'][$packageName])) { -$ranges = array_merge($ranges, self::$installed['versions'][$packageName]['provided']); +if (array_key_exists('provided', $installed['versions'][$packageName])) { +$ranges = array_merge($ranges, $installed['versions'][$packageName]['provided']); } return implode(' || ', $ranges); } +throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); +} + public static function getVersion($packageName) { -if (!isset(self::$installed['versions'][$packageName])) { -throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); +foreach (self::getInstalled() as $installed) { +if (!isset($installed['versions'][$packageName])) { +continue; } -if (!isset(self::$installed['versions'][$packageName]['version'])) { +if (!isset($installed['versions'][$packageName]['version'])) { return null; } -return self::$installed['versions'][$packageName]['version']; +return $installed['versions'][$packageName]['version']; +} + +throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); } @@ -1011,15 +1047,19 @@ public static function getVersion($packageName) public static function getPrettyVersion($packageName) { -if (!isset(self::$installed['versions'][$packageName])) { -throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); +foreach (self::getInstalled() as $installed) { +if (!isset($installed['versions'][$packageName])) { +continue; } -if (!isset(self::$installed['versions'][$packageName]['pretty_version'])) { +if (!isset($installed['versions'][$packageName]['pretty_version'])) { return null; } -return self::$installed['versions'][$packageName]['pretty_version']; +return $installed['versions'][$packageName]['pretty_version']; +} + +throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); } @@ -1028,15 +1068,19 @@ public static function getPrettyVersion($packageName) public static function getReference($packageName) { -if (!isset(self::$installed['versions'][$packageName])) { -throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); +foreach (self::getInstalled() as $installed) { +if (!isset($installed['versions'][$packageName])) { +continue; } -if (!isset(self::$installed['versions'][$packageName]['reference'])) { +if (!isset($installed['versions'][$packageName]['reference'])) { return null; } -return self::$installed['versions'][$packageName]['reference']; +return $installed['versions'][$packageName]['reference']; +} + +throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); } @@ -1045,7 +1089,9 @@ public static function getReference($packageName) public static function getRootPackage() { -return self::$installed['root']; +$installed = self::getInstalled(); + +return $installed[0]['root']; } @@ -1080,5 +1126,33 @@ public static function getRawData() public static function reload($data) { self::$installed = $data; +self::$installedByVendor = array(); +} + + + + +private static function getInstalled() +{ +if (null === self::$canGetVendors) { +self::$canGetVendors = method_exists('Composer\Autoload\ClassLoader', 'getRegisteredLoaders'); +} + +$installed = array(); + +if (self::$canGetVendors) { + +foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) { +if (isset(self::$installedByVendor[$vendorDir])) { +$installed[] = self::$installedByVendor[$vendorDir]; +} elseif (is_file($vendorDir.'/composer/installed.php')) { +$installed[] = self::$installedByVendor[$vendorDir] = require $vendorDir.'/composer/installed.php'; +} +} +} + +$installed[] = self::$installed; + +return $installed; } } diff --git a/composer/autoload_classmap.php b/composer/autoload_classmap.php index 82a0b55f6..8ef510918 100644 --- a/composer/autoload_classmap.php +++ b/composer/autoload_classmap.php @@ -2088,6 +2088,9 @@ 'Psr\\Container\\ContainerExceptionInterface' => $vendorDir . '/psr/container/src/ContainerExceptionInterface.php', 'Psr\\Container\\ContainerInterface' => $vendorDir . '/psr/container/src/ContainerInterface.php', 'Psr\\Container\\NotFoundExceptionInterface' => $vendorDir . '/psr/container/src/NotFoundExceptionInterface.php', + 'Psr\\EventDispatcher\\EventDispatcherInterface' => $vendorDir . '/psr/event-dispatcher/src/EventDispatcherInterface.php', + 'Psr\\EventDispatcher\\ListenerProviderInterface' => $vendorDir . '/psr/event-dispatcher/src/ListenerProviderInterface.php', + 'Psr\\EventDispatcher\\StoppableEventInterface' => $vendorDir . '/psr/event-dispatcher/src/StoppableEventInterface.php', 'Psr\\Http\\Client\\ClientExceptionInterface' => $vendorDir . '/psr/http-client/src/ClientExceptionInterface.php', 'Psr\\Http\\Client\\ClientInterface' => $vendorDir . '/psr/http-client/src/ClientInterface.php', 'Psr\\Http\\Client\\NetworkExceptionInterface' => $vendorDir . '/psr/http-client/src/NetworkExceptionInterface.php', diff --git a/composer/autoload_psr4.php b/composer/autoload_psr4.php index 2e5b0ab38..6697341c3 100644 --- a/composer/autoload_psr4.php +++ b/composer/autoload_psr4.php @@ -49,6 +49,7 @@ 'Psr\\Log\\' => array($vendorDir . '/psr/log/Psr/Log'), 'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-factory/src', $vendorDir . '/psr/http-message/src'), 'Psr\\Http\\Client\\' => array($vendorDir . '/psr/http-client/src'), + 'Psr\\EventDispatcher\\' => array($vendorDir . '/psr/event-dispatcher/src'), 'Psr\\Container\\' => array($vendorDir . '/psr/container/src'), 'PhpParser\\' => array($vendorDir . '/nikic/php-parser/lib/PhpParser'), 'Patchwork\\' => array($vendorDir . '/patchwork/jsqueeze/src'), diff --git a/composer/autoload_real.php b/composer/autoload_real.php index d6984712f..51e19b2df 100644 --- a/composer/autoload_real.php +++ b/composer/autoload_real.php @@ -25,7 +25,7 @@ public static function getLoader() require __DIR__ . '/platform_check.php'; spl_autoload_register(array('ComposerAutoloaderInit2f23f73bc0cc116b4b1eee1521aa8652', 'loadClassLoader'), true, true); - self::$loader = $loader = new \Composer\Autoload\ClassLoader(); + self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__))); spl_autoload_unregister(array('ComposerAutoloaderInit2f23f73bc0cc116b4b1eee1521aa8652', 'loadClassLoader')); $includePaths = require __DIR__ . '/include_paths.php'; diff --git a/composer/autoload_static.php b/composer/autoload_static.php index ab6788242..4cadd8c67 100644 --- a/composer/autoload_static.php +++ b/composer/autoload_static.php @@ -195,6 +195,7 @@ class ComposerStaticInit2f23f73bc0cc116b4b1eee1521aa8652 'Psr\\Log\\' => 8, 'Psr\\Http\\Message\\' => 17, 'Psr\\Http\\Client\\' => 16, + 'Psr\\EventDispatcher\\' => 20, 'Psr\\Container\\' => 14, 'PhpParser\\' => 10, 'Patchwork\\' => 10, @@ -453,6 +454,10 @@ class ComposerStaticInit2f23f73bc0cc116b4b1eee1521aa8652 array ( 0 => __DIR__ . '/..' . '/psr/http-client/src', ), + 'Psr\\EventDispatcher\\' => + array ( + 0 => __DIR__ . '/..' . '/psr/event-dispatcher/src', + ), 'Psr\\Container\\' => array ( 0 => __DIR__ . '/..' . '/psr/container/src', @@ -2715,6 +2720,9 @@ class ComposerStaticInit2f23f73bc0cc116b4b1eee1521aa8652 'Psr\\Container\\ContainerExceptionInterface' => __DIR__ . '/..' . '/psr/container/src/ContainerExceptionInterface.php', 'Psr\\Container\\ContainerInterface' => __DIR__ . '/..' . '/psr/container/src/ContainerInterface.php', 'Psr\\Container\\NotFoundExceptionInterface' => __DIR__ . '/..' . '/psr/container/src/NotFoundExceptionInterface.php', + 'Psr\\EventDispatcher\\EventDispatcherInterface' => __DIR__ . '/..' . '/psr/event-dispatcher/src/EventDispatcherInterface.php', + 'Psr\\EventDispatcher\\ListenerProviderInterface' => __DIR__ . '/..' . '/psr/event-dispatcher/src/ListenerProviderInterface.php', + 'Psr\\EventDispatcher\\StoppableEventInterface' => __DIR__ . '/..' . '/psr/event-dispatcher/src/StoppableEventInterface.php', 'Psr\\Http\\Client\\ClientExceptionInterface' => __DIR__ . '/..' . '/psr/http-client/src/ClientExceptionInterface.php', 'Psr\\Http\\Client\\ClientInterface' => __DIR__ . '/..' . '/psr/http-client/src/ClientInterface.php', 'Psr\\Http\\Client\\NetworkExceptionInterface' => __DIR__ . '/..' . '/psr/http-client/src/NetworkExceptionInterface.php', diff --git a/composer/installed.json b/composer/installed.json index e3c2b67ae..7917fb378 100644 --- a/composer/installed.json +++ b/composer/installed.json @@ -3146,6 +3146,59 @@ }, "install-path": "../psr/container" }, + { + "name": "psr/event-dispatcher", + "version": "1.0.0", + "version_normalized": "1.0.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/event-dispatcher.git", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0", + "shasum": "" + }, + "require": { + "php": ">=7.2.0" + }, + "time": "2019-01-08T18:20:26+00:00", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Psr\\EventDispatcher\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Standard interfaces for event handling.", + "keywords": [ + "events", + "psr", + "psr-14" + ], + "support": { + "issues": "https://github.com/php-fig/event-dispatcher/issues", + "source": "https://github.com/php-fig/event-dispatcher/tree/1.0.0" + }, + "install-path": "../psr/event-dispatcher" + }, { "name": "psr/http-client", "version": "1.0.1", diff --git a/composer/installed.php b/composer/installed.php index f5997fe3b..74f3bc6fa 100644 --- a/composer/installed.php +++ b/composer/installed.php @@ -6,7 +6,7 @@ 'aliases' => array ( ), - 'reference' => '3c8d312d2b0ca138164e37ef147329fb3b666436', + 'reference' => '90a8336c3b51a3be5869569ef8e84949a1e67608', 'name' => 'nextcloud/3rdparty', ), 'versions' => @@ -288,7 +288,7 @@ 'aliases' => array ( ), - 'reference' => '3c8d312d2b0ca138164e37ef147329fb3b666436', + 'reference' => '90a8336c3b51a3be5869569ef8e84949a1e67608', ), 'nextcloud/lognormalizer' => array ( @@ -455,6 +455,15 @@ ), 'reference' => 'b7ce3b176482dbbc1245ebf52b181af44c2cf55f', ), + 'psr/event-dispatcher' => + array ( + 'pretty_version' => '1.0.0', + 'version' => '1.0.0.0', + 'aliases' => + array ( + ), + 'reference' => 'dbefd12671e8a14ec7f180cab83036ed26714bb0', + ), 'psr/event-dispatcher-implementation' => array ( 'provided' => diff --git a/composer/package-versions-deprecated/src/PackageVersions/Versions.php b/composer/package-versions-deprecated/src/PackageVersions/Versions.php index 6d9618dd0..ffae23843 100644 --- a/composer/package-versions-deprecated/src/PackageVersions/Versions.php +++ b/composer/package-versions-deprecated/src/PackageVersions/Versions.php @@ -79,6 +79,7 @@ final class Versions 'phpseclib/phpseclib' => '2.0.30@136b9ca7eebef78be14abf90d65c5e57b6bc5d36', 'pimple/pimple' => 'v3.3.1@21e45061c3429b1e06233475cc0e1f6fc774d5b0', 'psr/container' => '1.0.0@b7ce3b176482dbbc1245ebf52b181af44c2cf55f', + 'psr/event-dispatcher' => '1.0.0@dbefd12671e8a14ec7f180cab83036ed26714bb0', 'psr/http-client' => '1.0.1@2dfb5f6c5eff0e91e20e913f8c5452ed95b86621', 'psr/http-factory' => '1.0.1@12ac7fcd07e5b077433f5f2bee95b3a771bf61be', 'psr/http-message' => '1.0.1@f6561bf28d520154e4b0ec72be95418abe6d9363', @@ -119,7 +120,7 @@ final class Versions 'web-auth/cose-lib' => 'v3.3.1@eea6fae63ff5c81bf98c115b1be5f38a69682c16', 'web-auth/metadata-service' => 'v3.3.1@8488d3a832a38cc81c670fce05de1e515c6e64b1', 'web-auth/webauthn-lib' => 'v3.3.1@e411527a41c1013512fccdfce61681eb36484c77', - 'nextcloud/3rdparty' => 'dev-master@3c8d312d2b0ca138164e37ef147329fb3b666436', + 'nextcloud/3rdparty' => 'dev-master@90a8336c3b51a3be5869569ef8e84949a1e67608', ); private function __construct() diff --git a/psr/event-dispatcher/.gitignore b/psr/event-dispatcher/.gitignore new file mode 100644 index 000000000..3a9875b46 --- /dev/null +++ b/psr/event-dispatcher/.gitignore @@ -0,0 +1,2 @@ +/vendor/ +composer.lock diff --git a/psr/event-dispatcher/LICENSE b/psr/event-dispatcher/LICENSE new file mode 100644 index 000000000..3f1559b2a --- /dev/null +++ b/psr/event-dispatcher/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2018 PHP-FIG + +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 NONINFRINGEMENT. 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. diff --git a/psr/event-dispatcher/README.md b/psr/event-dispatcher/README.md new file mode 100644 index 000000000..294214afb --- /dev/null +++ b/psr/event-dispatcher/README.md @@ -0,0 +1,6 @@ +PSR Event Dispatcher +==================== + +This repository holds the interfaces related to [PSR-14](http://www.php-fig.org/psr/psr-14/). + +Note that this is not an Event Dispatcher implementation of its own. It is merely interfaces that describe the components of an Event Dispatcher. See the specification for more details. diff --git a/psr/event-dispatcher/composer.json b/psr/event-dispatcher/composer.json new file mode 100644 index 000000000..667a71448 --- /dev/null +++ b/psr/event-dispatcher/composer.json @@ -0,0 +1,26 @@ +{ + "name": "psr/event-dispatcher", + "description": "Standard interfaces for event handling.", + "type": "library", + "keywords": ["psr", "psr-14", "events"], + "license": "MIT", + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "require": { + "php": ">=7.2.0" + }, + "autoload": { + "psr-4": { + "Psr\\EventDispatcher\\": "src/" + } + }, + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + } +} diff --git a/psr/event-dispatcher/src/EventDispatcherInterface.php b/psr/event-dispatcher/src/EventDispatcherInterface.php new file mode 100644 index 000000000..4306fa915 --- /dev/null +++ b/psr/event-dispatcher/src/EventDispatcherInterface.php @@ -0,0 +1,21 @@ +