mirror of
https://gitee.com/liuxioabin/fengketrade.git
synced 2026-04-22 05:57:33 +08:00
1
This commit is contained in:
parent
be05b7f663
commit
7de67356f0
@ -32,7 +32,8 @@
|
|||||||
"ext-pdo": "*",
|
"ext-pdo": "*",
|
||||||
"ext-bcmath": "*",
|
"ext-bcmath": "*",
|
||||||
"phpseclib/phpseclib": "*",
|
"phpseclib/phpseclib": "*",
|
||||||
"workerman/phpsocket.io": "^2.2"
|
"workerman/phpsocket.io": "^2.2",
|
||||||
|
"hyperf/pimple": "^2.2"
|
||||||
},
|
},
|
||||||
"config": {
|
"config": {
|
||||||
"preferred-install": "dist",
|
"preferred-install": "dist",
|
||||||
|
|||||||
49
vendor/composer/InstalledVersions.php
vendored
49
vendor/composer/InstalledVersions.php
vendored
@ -32,7 +32,7 @@ private static $installed = array (
|
|||||||
'aliases' =>
|
'aliases' =>
|
||||||
array (
|
array (
|
||||||
),
|
),
|
||||||
'reference' => '0a95974a63e41cca15747597241a53381c61f1df',
|
'reference' => 'be05b7f6639c030982107e2c8b858af2b106b2b6',
|
||||||
'name' => 'fastadminnet/fastadmin',
|
'name' => 'fastadminnet/fastadmin',
|
||||||
),
|
),
|
||||||
'versions' =>
|
'versions' =>
|
||||||
@ -71,7 +71,7 @@ private static $installed = array (
|
|||||||
'aliases' =>
|
'aliases' =>
|
||||||
array (
|
array (
|
||||||
),
|
),
|
||||||
'reference' => '0a95974a63e41cca15747597241a53381c61f1df',
|
'reference' => 'be05b7f6639c030982107e2c8b858af2b106b2b6',
|
||||||
),
|
),
|
||||||
'fastadminnet/fastadmin-addons' =>
|
'fastadminnet/fastadmin-addons' =>
|
||||||
array (
|
array (
|
||||||
@ -118,6 +118,51 @@ private static $installed = array (
|
|||||||
),
|
),
|
||||||
'reference' => '21dc724a0583619cd1652f673303492272778051',
|
'reference' => '21dc724a0583619cd1652f673303492272778051',
|
||||||
),
|
),
|
||||||
|
'hyperf/context' =>
|
||||||
|
array (
|
||||||
|
'pretty_version' => 'v3.0.37',
|
||||||
|
'version' => '3.0.37.0',
|
||||||
|
'aliases' =>
|
||||||
|
array (
|
||||||
|
),
|
||||||
|
'reference' => '264e06fb882426d90758eca2c5bb8293f8b60455',
|
||||||
|
),
|
||||||
|
'hyperf/contract' =>
|
||||||
|
array (
|
||||||
|
'pretty_version' => 'v3.0.37',
|
||||||
|
'version' => '3.0.37.0',
|
||||||
|
'aliases' =>
|
||||||
|
array (
|
||||||
|
),
|
||||||
|
'reference' => '2e8290104468a8d90855067d8644a32114474452',
|
||||||
|
),
|
||||||
|
'hyperf/engine' =>
|
||||||
|
array (
|
||||||
|
'pretty_version' => 'v2.14.1',
|
||||||
|
'version' => '2.14.1.0',
|
||||||
|
'aliases' =>
|
||||||
|
array (
|
||||||
|
),
|
||||||
|
'reference' => '6595d2659ce7ebb940b8740a00ecd199128398f0',
|
||||||
|
),
|
||||||
|
'hyperf/engine-contract' =>
|
||||||
|
array (
|
||||||
|
'pretty_version' => 'v1.13.0',
|
||||||
|
'version' => '1.13.0.0',
|
||||||
|
'aliases' =>
|
||||||
|
array (
|
||||||
|
),
|
||||||
|
'reference' => '26a18ec0375147546bf9702b0fd737fdd2cec1d6',
|
||||||
|
),
|
||||||
|
'hyperf/pimple' =>
|
||||||
|
array (
|
||||||
|
'pretty_version' => 'v2.2.2',
|
||||||
|
'version' => '2.2.2.0',
|
||||||
|
'aliases' =>
|
||||||
|
array (
|
||||||
|
),
|
||||||
|
'reference' => '7bd07745c256b83679471c06ec2a11e901d37277',
|
||||||
|
),
|
||||||
'maennchen/zipstream-php' =>
|
'maennchen/zipstream-php' =>
|
||||||
array (
|
array (
|
||||||
'pretty_version' => '2.4.0',
|
'pretty_version' => '2.4.0',
|
||||||
|
|||||||
3
vendor/composer/autoload_files.php
vendored
3
vendor/composer/autoload_files.php
vendored
@ -12,15 +12,16 @@ return array(
|
|||||||
'0d59ee240a4cd96ddbb4ff164fccea4d' => $vendorDir . '/symfony/polyfill-php73/bootstrap.php',
|
'0d59ee240a4cd96ddbb4ff164fccea4d' => $vendorDir . '/symfony/polyfill-php73/bootstrap.php',
|
||||||
'0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => $vendorDir . '/symfony/polyfill-mbstring/bootstrap.php',
|
'0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => $vendorDir . '/symfony/polyfill-mbstring/bootstrap.php',
|
||||||
'37a3dc5111fe8f707ab4c132ef1dbc62' => $vendorDir . '/guzzlehttp/guzzle/src/functions_include.php',
|
'37a3dc5111fe8f707ab4c132ef1dbc62' => $vendorDir . '/guzzlehttp/guzzle/src/functions_include.php',
|
||||||
|
'9c7a683baffd24f5595c1dc5f5273030' => $vendorDir . '/hyperf/engine/src/Functions.php',
|
||||||
'6b998e7ad3182c0d21d23780badfa07b' => $vendorDir . '/yansongda/supports/src/Functions.php',
|
'6b998e7ad3182c0d21d23780badfa07b' => $vendorDir . '/yansongda/supports/src/Functions.php',
|
||||||
'2cffec82183ee1cea088009cef9a6fc3' => $vendorDir . '/ezyang/htmlpurifier/library/HTMLPurifier.composer.php',
|
'2cffec82183ee1cea088009cef9a6fc3' => $vendorDir . '/ezyang/htmlpurifier/library/HTMLPurifier.composer.php',
|
||||||
'9b552a3cc426e3287cc811caefa3cf53' => $vendorDir . '/topthink/think-helper/src/helper.php',
|
'9b552a3cc426e3287cc811caefa3cf53' => $vendorDir . '/topthink/think-helper/src/helper.php',
|
||||||
'988d02680beedec88d52f2787b2d2007' => $vendorDir . '/yansongda/artful/src/Functions.php',
|
'988d02680beedec88d52f2787b2d2007' => $vendorDir . '/yansongda/artful/src/Functions.php',
|
||||||
|
'f7e3d8cd19cf23ce3883a6a51d791b77' => $vendorDir . '/fastadminnet/fastadmin-addons/src/common.php',
|
||||||
'f0e7e63bbb278a92db02393536748c5f' => $vendorDir . '/overtrue/wechat/src/Kernel/Support/Helpers.php',
|
'f0e7e63bbb278a92db02393536748c5f' => $vendorDir . '/overtrue/wechat/src/Kernel/Support/Helpers.php',
|
||||||
'6747f579ad6817f318cc3a7e7a0abb93' => $vendorDir . '/overtrue/wechat/src/Kernel/Helpers.php',
|
'6747f579ad6817f318cc3a7e7a0abb93' => $vendorDir . '/overtrue/wechat/src/Kernel/Helpers.php',
|
||||||
'decc78cc4436b1292c6c0d151b19445c' => $vendorDir . '/phpseclib/phpseclib/phpseclib/bootstrap.php',
|
'decc78cc4436b1292c6c0d151b19445c' => $vendorDir . '/phpseclib/phpseclib/phpseclib/bootstrap.php',
|
||||||
'1cfd2761b63b0a29ed23657ea394cb2d' => $vendorDir . '/topthink/think-captcha/src/helper.php',
|
'1cfd2761b63b0a29ed23657ea394cb2d' => $vendorDir . '/topthink/think-captcha/src/helper.php',
|
||||||
'cc56288302d9df745d97c934d6a6e5f0' => $vendorDir . '/topthink/think-queue/src/common.php',
|
'cc56288302d9df745d97c934d6a6e5f0' => $vendorDir . '/topthink/think-queue/src/common.php',
|
||||||
'f7e3d8cd19cf23ce3883a6a51d791b77' => $vendorDir . '/fastadminnet/fastadmin-addons/src/common.php',
|
|
||||||
'8c783b3a3de2f6d9177022b5ccdcc841' => $vendorDir . '/yansongda/pay/src/Functions.php',
|
'8c783b3a3de2f6d9177022b5ccdcc841' => $vendorDir . '/yansongda/pay/src/Functions.php',
|
||||||
);
|
);
|
||||||
|
|||||||
9
vendor/composer/autoload_psr4.php
vendored
9
vendor/composer/autoload_psr4.php
vendored
@ -9,7 +9,7 @@ return array(
|
|||||||
'think\\helper\\' => array($vendorDir . '/topthink/think-helper/src'),
|
'think\\helper\\' => array($vendorDir . '/topthink/think-helper/src'),
|
||||||
'think\\composer\\' => array($vendorDir . '/topthink/think-installer/src'),
|
'think\\composer\\' => array($vendorDir . '/topthink/think-installer/src'),
|
||||||
'think\\captcha\\' => array($vendorDir . '/topthink/think-captcha/src'),
|
'think\\captcha\\' => array($vendorDir . '/topthink/think-captcha/src'),
|
||||||
'think\\' => array($baseDir . '/thinkphp/library/think', $vendorDir . '/topthink/think-queue/src', $vendorDir . '/fastadminnet/fastadmin-addons/src'),
|
'think\\' => array($vendorDir . '/fastadminnet/fastadmin-addons/src', $baseDir . '/thinkphp/library/think', $vendorDir . '/topthink/think-queue/src'),
|
||||||
'phpseclib3\\' => array($vendorDir . '/phpseclib/phpseclib/phpseclib'),
|
'phpseclib3\\' => array($vendorDir . '/phpseclib/phpseclib/phpseclib'),
|
||||||
'addons\\' => array($baseDir . '/addons'),
|
'addons\\' => array($baseDir . '/addons'),
|
||||||
'ZipStream\\' => array($vendorDir . '/maennchen/zipstream-php/src'),
|
'ZipStream\\' => array($vendorDir . '/maennchen/zipstream-php/src'),
|
||||||
@ -32,7 +32,7 @@ return array(
|
|||||||
'Symfony\\Bridge\\PsrHttpMessage\\' => array($vendorDir . '/symfony/psr-http-message-bridge'),
|
'Symfony\\Bridge\\PsrHttpMessage\\' => array($vendorDir . '/symfony/psr-http-message-bridge'),
|
||||||
'Psr\\SimpleCache\\' => array($vendorDir . '/psr/simple-cache/src'),
|
'Psr\\SimpleCache\\' => array($vendorDir . '/psr/simple-cache/src'),
|
||||||
'Psr\\Log\\' => array($vendorDir . '/psr/log/Psr/Log'),
|
'Psr\\Log\\' => array($vendorDir . '/psr/log/Psr/Log'),
|
||||||
'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-message/src', $vendorDir . '/psr/http-factory/src'),
|
'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-factory/src', $vendorDir . '/psr/http-message/src'),
|
||||||
'Psr\\Http\\Client\\' => array($vendorDir . '/psr/http-client/src'),
|
'Psr\\Http\\Client\\' => array($vendorDir . '/psr/http-client/src'),
|
||||||
'Psr\\EventDispatcher\\' => array($vendorDir . '/psr/event-dispatcher/src'),
|
'Psr\\EventDispatcher\\' => array($vendorDir . '/psr/event-dispatcher/src'),
|
||||||
'Psr\\Container\\' => array($vendorDir . '/psr/container/src'),
|
'Psr\\Container\\' => array($vendorDir . '/psr/container/src'),
|
||||||
@ -46,6 +46,11 @@ return array(
|
|||||||
'MyCLabs\\Enum\\' => array($vendorDir . '/myclabs/php-enum/src'),
|
'MyCLabs\\Enum\\' => array($vendorDir . '/myclabs/php-enum/src'),
|
||||||
'Monolog\\' => array($vendorDir . '/monolog/monolog/src/Monolog'),
|
'Monolog\\' => array($vendorDir . '/monolog/monolog/src/Monolog'),
|
||||||
'Matrix\\' => array($vendorDir . '/markbaker/matrix/classes/src'),
|
'Matrix\\' => array($vendorDir . '/markbaker/matrix/classes/src'),
|
||||||
|
'Hyperf\\Pimple\\' => array($vendorDir . '/hyperf/pimple/src'),
|
||||||
|
'Hyperf\\Engine\\Contract\\' => array($vendorDir . '/hyperf/engine-contract/src'),
|
||||||
|
'Hyperf\\Engine\\' => array($vendorDir . '/hyperf/engine/src'),
|
||||||
|
'Hyperf\\Contract\\' => array($vendorDir . '/hyperf/contract/src'),
|
||||||
|
'Hyperf\\Context\\' => array($vendorDir . '/hyperf/context/src'),
|
||||||
'GuzzleHttp\\Psr7\\' => array($vendorDir . '/guzzlehttp/psr7/src'),
|
'GuzzleHttp\\Psr7\\' => array($vendorDir . '/guzzlehttp/psr7/src'),
|
||||||
'GuzzleHttp\\Promise\\' => array($vendorDir . '/guzzlehttp/promises/src'),
|
'GuzzleHttp\\Promise\\' => array($vendorDir . '/guzzlehttp/promises/src'),
|
||||||
'GuzzleHttp\\' => array($vendorDir . '/guzzlehttp/guzzle/src'),
|
'GuzzleHttp\\' => array($vendorDir . '/guzzlehttp/guzzle/src'),
|
||||||
|
|||||||
41
vendor/composer/autoload_static.php
vendored
41
vendor/composer/autoload_static.php
vendored
@ -13,16 +13,17 @@ class ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1
|
|||||||
'0d59ee240a4cd96ddbb4ff164fccea4d' => __DIR__ . '/..' . '/symfony/polyfill-php73/bootstrap.php',
|
'0d59ee240a4cd96ddbb4ff164fccea4d' => __DIR__ . '/..' . '/symfony/polyfill-php73/bootstrap.php',
|
||||||
'0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php',
|
'0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php',
|
||||||
'37a3dc5111fe8f707ab4c132ef1dbc62' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/functions_include.php',
|
'37a3dc5111fe8f707ab4c132ef1dbc62' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/functions_include.php',
|
||||||
|
'9c7a683baffd24f5595c1dc5f5273030' => __DIR__ . '/..' . '/hyperf/engine/src/Functions.php',
|
||||||
'6b998e7ad3182c0d21d23780badfa07b' => __DIR__ . '/..' . '/yansongda/supports/src/Functions.php',
|
'6b998e7ad3182c0d21d23780badfa07b' => __DIR__ . '/..' . '/yansongda/supports/src/Functions.php',
|
||||||
'2cffec82183ee1cea088009cef9a6fc3' => __DIR__ . '/..' . '/ezyang/htmlpurifier/library/HTMLPurifier.composer.php',
|
'2cffec82183ee1cea088009cef9a6fc3' => __DIR__ . '/..' . '/ezyang/htmlpurifier/library/HTMLPurifier.composer.php',
|
||||||
'9b552a3cc426e3287cc811caefa3cf53' => __DIR__ . '/..' . '/topthink/think-helper/src/helper.php',
|
'9b552a3cc426e3287cc811caefa3cf53' => __DIR__ . '/..' . '/topthink/think-helper/src/helper.php',
|
||||||
'988d02680beedec88d52f2787b2d2007' => __DIR__ . '/..' . '/yansongda/artful/src/Functions.php',
|
'988d02680beedec88d52f2787b2d2007' => __DIR__ . '/..' . '/yansongda/artful/src/Functions.php',
|
||||||
|
'f7e3d8cd19cf23ce3883a6a51d791b77' => __DIR__ . '/..' . '/fastadminnet/fastadmin-addons/src/common.php',
|
||||||
'f0e7e63bbb278a92db02393536748c5f' => __DIR__ . '/..' . '/overtrue/wechat/src/Kernel/Support/Helpers.php',
|
'f0e7e63bbb278a92db02393536748c5f' => __DIR__ . '/..' . '/overtrue/wechat/src/Kernel/Support/Helpers.php',
|
||||||
'6747f579ad6817f318cc3a7e7a0abb93' => __DIR__ . '/..' . '/overtrue/wechat/src/Kernel/Helpers.php',
|
'6747f579ad6817f318cc3a7e7a0abb93' => __DIR__ . '/..' . '/overtrue/wechat/src/Kernel/Helpers.php',
|
||||||
'decc78cc4436b1292c6c0d151b19445c' => __DIR__ . '/..' . '/phpseclib/phpseclib/phpseclib/bootstrap.php',
|
'decc78cc4436b1292c6c0d151b19445c' => __DIR__ . '/..' . '/phpseclib/phpseclib/phpseclib/bootstrap.php',
|
||||||
'1cfd2761b63b0a29ed23657ea394cb2d' => __DIR__ . '/..' . '/topthink/think-captcha/src/helper.php',
|
'1cfd2761b63b0a29ed23657ea394cb2d' => __DIR__ . '/..' . '/topthink/think-captcha/src/helper.php',
|
||||||
'cc56288302d9df745d97c934d6a6e5f0' => __DIR__ . '/..' . '/topthink/think-queue/src/common.php',
|
'cc56288302d9df745d97c934d6a6e5f0' => __DIR__ . '/..' . '/topthink/think-queue/src/common.php',
|
||||||
'f7e3d8cd19cf23ce3883a6a51d791b77' => __DIR__ . '/..' . '/fastadminnet/fastadmin-addons/src/common.php',
|
|
||||||
'8c783b3a3de2f6d9177022b5ccdcc841' => __DIR__ . '/..' . '/yansongda/pay/src/Functions.php',
|
'8c783b3a3de2f6d9177022b5ccdcc841' => __DIR__ . '/..' . '/yansongda/pay/src/Functions.php',
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -100,6 +101,14 @@ class ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1
|
|||||||
'Monolog\\' => 8,
|
'Monolog\\' => 8,
|
||||||
'Matrix\\' => 7,
|
'Matrix\\' => 7,
|
||||||
),
|
),
|
||||||
|
'H' =>
|
||||||
|
array (
|
||||||
|
'Hyperf\\Pimple\\' => 14,
|
||||||
|
'Hyperf\\Engine\\Contract\\' => 23,
|
||||||
|
'Hyperf\\Engine\\' => 14,
|
||||||
|
'Hyperf\\Contract\\' => 16,
|
||||||
|
'Hyperf\\Context\\' => 15,
|
||||||
|
),
|
||||||
'G' =>
|
'G' =>
|
||||||
array (
|
array (
|
||||||
'GuzzleHttp\\Psr7\\' => 16,
|
'GuzzleHttp\\Psr7\\' => 16,
|
||||||
@ -134,9 +143,9 @@ class ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1
|
|||||||
),
|
),
|
||||||
'think\\' =>
|
'think\\' =>
|
||||||
array (
|
array (
|
||||||
0 => __DIR__ . '/../..' . '/thinkphp/library/think',
|
0 => __DIR__ . '/..' . '/fastadminnet/fastadmin-addons/src',
|
||||||
1 => __DIR__ . '/..' . '/topthink/think-queue/src',
|
1 => __DIR__ . '/../..' . '/thinkphp/library/think',
|
||||||
2 => __DIR__ . '/..' . '/fastadminnet/fastadmin-addons/src',
|
2 => __DIR__ . '/..' . '/topthink/think-queue/src',
|
||||||
),
|
),
|
||||||
'phpseclib3\\' =>
|
'phpseclib3\\' =>
|
||||||
array (
|
array (
|
||||||
@ -228,8 +237,8 @@ class ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1
|
|||||||
),
|
),
|
||||||
'Psr\\Http\\Message\\' =>
|
'Psr\\Http\\Message\\' =>
|
||||||
array (
|
array (
|
||||||
0 => __DIR__ . '/..' . '/psr/http-message/src',
|
0 => __DIR__ . '/..' . '/psr/http-factory/src',
|
||||||
1 => __DIR__ . '/..' . '/psr/http-factory/src',
|
1 => __DIR__ . '/..' . '/psr/http-message/src',
|
||||||
),
|
),
|
||||||
'Psr\\Http\\Client\\' =>
|
'Psr\\Http\\Client\\' =>
|
||||||
array (
|
array (
|
||||||
@ -283,6 +292,26 @@ class ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1
|
|||||||
array (
|
array (
|
||||||
0 => __DIR__ . '/..' . '/markbaker/matrix/classes/src',
|
0 => __DIR__ . '/..' . '/markbaker/matrix/classes/src',
|
||||||
),
|
),
|
||||||
|
'Hyperf\\Pimple\\' =>
|
||||||
|
array (
|
||||||
|
0 => __DIR__ . '/..' . '/hyperf/pimple/src',
|
||||||
|
),
|
||||||
|
'Hyperf\\Engine\\Contract\\' =>
|
||||||
|
array (
|
||||||
|
0 => __DIR__ . '/..' . '/hyperf/engine-contract/src',
|
||||||
|
),
|
||||||
|
'Hyperf\\Engine\\' =>
|
||||||
|
array (
|
||||||
|
0 => __DIR__ . '/..' . '/hyperf/engine/src',
|
||||||
|
),
|
||||||
|
'Hyperf\\Contract\\' =>
|
||||||
|
array (
|
||||||
|
0 => __DIR__ . '/..' . '/hyperf/contract/src',
|
||||||
|
),
|
||||||
|
'Hyperf\\Context\\' =>
|
||||||
|
array (
|
||||||
|
0 => __DIR__ . '/..' . '/hyperf/context/src',
|
||||||
|
),
|
||||||
'GuzzleHttp\\Psr7\\' =>
|
'GuzzleHttp\\Psr7\\' =>
|
||||||
array (
|
array (
|
||||||
0 => __DIR__ . '/..' . '/guzzlehttp/psr7/src',
|
0 => __DIR__ . '/..' . '/guzzlehttp/psr7/src',
|
||||||
|
|||||||
346
vendor/composer/installed.json
vendored
346
vendor/composer/installed.json
vendored
@ -658,6 +658,352 @@
|
|||||||
],
|
],
|
||||||
"install-path": "../guzzlehttp/psr7"
|
"install-path": "../guzzlehttp/psr7"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "hyperf/context",
|
||||||
|
"version": "v3.0.37",
|
||||||
|
"version_normalized": "3.0.37.0",
|
||||||
|
"source": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/hyperf/context.git",
|
||||||
|
"reference": "264e06fb882426d90758eca2c5bb8293f8b60455"
|
||||||
|
},
|
||||||
|
"dist": {
|
||||||
|
"type": "zip",
|
||||||
|
"url": "https://api.github.com/repos/hyperf/context/zipball/264e06fb882426d90758eca2c5bb8293f8b60455",
|
||||||
|
"reference": "264e06fb882426d90758eca2c5bb8293f8b60455",
|
||||||
|
"shasum": "",
|
||||||
|
"mirrors": [
|
||||||
|
{
|
||||||
|
"url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
|
||||||
|
"preferred": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"require": {
|
||||||
|
"hyperf/engine": "^1.2|^2.0",
|
||||||
|
"php": ">=8.0"
|
||||||
|
},
|
||||||
|
"time": "2023-09-19T01:50:18+00:00",
|
||||||
|
"type": "library",
|
||||||
|
"extra": {
|
||||||
|
"branch-alias": {
|
||||||
|
"dev-master": "3.0-dev"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"installation-source": "dist",
|
||||||
|
"autoload": {
|
||||||
|
"psr-4": {
|
||||||
|
"Hyperf\\Context\\": "src/"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"notification-url": "https://packagist.org/downloads/",
|
||||||
|
"license": [
|
||||||
|
"MIT"
|
||||||
|
],
|
||||||
|
"description": "A coroutine/application context library.",
|
||||||
|
"homepage": "https://hyperf.io",
|
||||||
|
"keywords": [
|
||||||
|
"Context",
|
||||||
|
"hyperf",
|
||||||
|
"php",
|
||||||
|
"swoole"
|
||||||
|
],
|
||||||
|
"support": {
|
||||||
|
"docs": "https://hyperf.wiki",
|
||||||
|
"issues": "https://github.com/hyperf/hyperf/issues",
|
||||||
|
"pull-request": "https://github.com/hyperf/hyperf/pulls",
|
||||||
|
"source": "https://github.com/hyperf/hyperf"
|
||||||
|
},
|
||||||
|
"install-path": "../hyperf/context"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "hyperf/contract",
|
||||||
|
"version": "v3.0.37",
|
||||||
|
"version_normalized": "3.0.37.0",
|
||||||
|
"source": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/hyperf/contract.git",
|
||||||
|
"reference": "2e8290104468a8d90855067d8644a32114474452"
|
||||||
|
},
|
||||||
|
"dist": {
|
||||||
|
"type": "zip",
|
||||||
|
"url": "https://api.github.com/repos/hyperf/contract/zipball/2e8290104468a8d90855067d8644a32114474452",
|
||||||
|
"reference": "2e8290104468a8d90855067d8644a32114474452",
|
||||||
|
"shasum": "",
|
||||||
|
"mirrors": [
|
||||||
|
{
|
||||||
|
"url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
|
||||||
|
"preferred": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"require": {
|
||||||
|
"php": ">=8.0"
|
||||||
|
},
|
||||||
|
"time": "2023-09-19T01:50:18+00:00",
|
||||||
|
"type": "library",
|
||||||
|
"extra": {
|
||||||
|
"branch-alias": {
|
||||||
|
"dev-master": "3.0-dev"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"installation-source": "dist",
|
||||||
|
"autoload": {
|
||||||
|
"psr-4": {
|
||||||
|
"Hyperf\\Contract\\": "src/"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"notification-url": "https://packagist.org/downloads/",
|
||||||
|
"license": [
|
||||||
|
"MIT"
|
||||||
|
],
|
||||||
|
"description": "The contracts of Hyperf.",
|
||||||
|
"homepage": "https://hyperf.io",
|
||||||
|
"keywords": [
|
||||||
|
"hyperf",
|
||||||
|
"php",
|
||||||
|
"swoole"
|
||||||
|
],
|
||||||
|
"support": {
|
||||||
|
"docs": "https://hyperf.wiki",
|
||||||
|
"issues": "https://github.com/hyperf/hyperf/issues",
|
||||||
|
"pull-request": "https://github.com/hyperf/hyperf/pulls",
|
||||||
|
"source": "https://github.com/hyperf/hyperf"
|
||||||
|
},
|
||||||
|
"install-path": "../hyperf/contract"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "hyperf/engine",
|
||||||
|
"version": "v2.14.1",
|
||||||
|
"version_normalized": "2.14.1.0",
|
||||||
|
"source": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/hyperf/engine.git",
|
||||||
|
"reference": "6595d2659ce7ebb940b8740a00ecd199128398f0"
|
||||||
|
},
|
||||||
|
"dist": {
|
||||||
|
"type": "zip",
|
||||||
|
"url": "https://api.github.com/repos/hyperf/engine/zipball/6595d2659ce7ebb940b8740a00ecd199128398f0",
|
||||||
|
"reference": "6595d2659ce7ebb940b8740a00ecd199128398f0",
|
||||||
|
"shasum": "",
|
||||||
|
"mirrors": [
|
||||||
|
{
|
||||||
|
"url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
|
||||||
|
"preferred": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"require": {
|
||||||
|
"hyperf/engine-contract": "~1.13.0",
|
||||||
|
"php": ">=8.0"
|
||||||
|
},
|
||||||
|
"conflict": {
|
||||||
|
"ext-swoole": "<5.0"
|
||||||
|
},
|
||||||
|
"require-dev": {
|
||||||
|
"friendsofphp/php-cs-fixer": "^3.0",
|
||||||
|
"hyperf/guzzle": "^3.0",
|
||||||
|
"hyperf/http-message": "^3.0",
|
||||||
|
"mockery/mockery": "^1.5",
|
||||||
|
"phpstan/phpstan": "^1.0",
|
||||||
|
"phpunit/phpunit": "^9.4",
|
||||||
|
"swoole/ide-helper": "5.*"
|
||||||
|
},
|
||||||
|
"suggest": {
|
||||||
|
"ext-sockets": "*",
|
||||||
|
"ext-swoole": ">=5.0",
|
||||||
|
"hyperf/http-message": "Required to use ResponseEmitter.",
|
||||||
|
"psr/http-message": "Required to use WebSocket Frame."
|
||||||
|
},
|
||||||
|
"time": "2025-08-04T02:12:07+00:00",
|
||||||
|
"type": "library",
|
||||||
|
"extra": {
|
||||||
|
"hyperf": {
|
||||||
|
"config": "Hyperf\\Engine\\ConfigProvider"
|
||||||
|
},
|
||||||
|
"branch-alias": {
|
||||||
|
"dev-master": "2.14-dev"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"installation-source": "dist",
|
||||||
|
"autoload": {
|
||||||
|
"files": [
|
||||||
|
"src/Functions.php"
|
||||||
|
],
|
||||||
|
"psr-4": {
|
||||||
|
"Hyperf\\Engine\\": "src/"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"notification-url": "https://packagist.org/downloads/",
|
||||||
|
"license": [
|
||||||
|
"MIT"
|
||||||
|
],
|
||||||
|
"description": "Coroutine engine provided by swoole.",
|
||||||
|
"keywords": [
|
||||||
|
"engine",
|
||||||
|
"hyperf",
|
||||||
|
"php",
|
||||||
|
"swoole"
|
||||||
|
],
|
||||||
|
"support": {
|
||||||
|
"issues": "https://github.com/hyperf/engine/issues",
|
||||||
|
"source": "https://github.com/hyperf/engine/tree/v2.14.1"
|
||||||
|
},
|
||||||
|
"funding": [
|
||||||
|
{
|
||||||
|
"url": "https://hyperf.wiki/#/zh-cn/donate",
|
||||||
|
"type": "custom"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "https://opencollective.com/hyperf",
|
||||||
|
"type": "open_collective"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"install-path": "../hyperf/engine"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "hyperf/engine-contract",
|
||||||
|
"version": "v1.13.0",
|
||||||
|
"version_normalized": "1.13.0.0",
|
||||||
|
"source": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/hyperf/engine-contract.git",
|
||||||
|
"reference": "26a18ec0375147546bf9702b0fd737fdd2cec1d6"
|
||||||
|
},
|
||||||
|
"dist": {
|
||||||
|
"type": "zip",
|
||||||
|
"url": "https://api.github.com/repos/hyperf/engine-contract/zipball/26a18ec0375147546bf9702b0fd737fdd2cec1d6",
|
||||||
|
"reference": "26a18ec0375147546bf9702b0fd737fdd2cec1d6",
|
||||||
|
"shasum": "",
|
||||||
|
"mirrors": [
|
||||||
|
{
|
||||||
|
"url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
|
||||||
|
"preferred": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"require": {
|
||||||
|
"php": ">=8.0"
|
||||||
|
},
|
||||||
|
"require-dev": {
|
||||||
|
"friendsofphp/php-cs-fixer": "^3.0",
|
||||||
|
"mockery/mockery": "^1.0",
|
||||||
|
"phpstan/phpstan": "^1.0",
|
||||||
|
"phpunit/phpunit": ">=7.0",
|
||||||
|
"psr/http-message": "^1.0",
|
||||||
|
"swoole/ide-helper": "^4.5"
|
||||||
|
},
|
||||||
|
"suggest": {
|
||||||
|
"psr/http-message": "Required to use WebSocket Frame."
|
||||||
|
},
|
||||||
|
"time": "2025-04-13T14:48:14+00:00",
|
||||||
|
"type": "library",
|
||||||
|
"extra": {
|
||||||
|
"branch-alias": {
|
||||||
|
"dev-master": "1.11-dev"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"installation-source": "dist",
|
||||||
|
"autoload": {
|
||||||
|
"psr-4": {
|
||||||
|
"Hyperf\\Engine\\Contract\\": "src/"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"notification-url": "https://packagist.org/downloads/",
|
||||||
|
"license": [
|
||||||
|
"MIT"
|
||||||
|
],
|
||||||
|
"description": "Contract for Coroutine Engine",
|
||||||
|
"keywords": [
|
||||||
|
"contract",
|
||||||
|
"coroutine",
|
||||||
|
"engine",
|
||||||
|
"hyperf",
|
||||||
|
"php"
|
||||||
|
],
|
||||||
|
"support": {
|
||||||
|
"issues": "https://github.com/hyperf/engine-contract/issues",
|
||||||
|
"source": "https://github.com/hyperf/engine-contract/tree/v1.13.0"
|
||||||
|
},
|
||||||
|
"funding": [
|
||||||
|
{
|
||||||
|
"url": "https://hyperf.wiki/#/zh-cn/donate",
|
||||||
|
"type": "custom"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "https://opencollective.com/hyperf",
|
||||||
|
"type": "open_collective"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"install-path": "../hyperf/engine-contract"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "hyperf/pimple",
|
||||||
|
"version": "v2.2.2",
|
||||||
|
"version_normalized": "2.2.2.0",
|
||||||
|
"source": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/hyperf-cloud/pimple-integration.git",
|
||||||
|
"reference": "7bd07745c256b83679471c06ec2a11e901d37277"
|
||||||
|
},
|
||||||
|
"dist": {
|
||||||
|
"type": "zip",
|
||||||
|
"url": "https://api.github.com/repos/hyperf-cloud/pimple-integration/zipball/7bd07745c256b83679471c06ec2a11e901d37277",
|
||||||
|
"reference": "7bd07745c256b83679471c06ec2a11e901d37277",
|
||||||
|
"shasum": "",
|
||||||
|
"mirrors": [
|
||||||
|
{
|
||||||
|
"url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
|
||||||
|
"preferred": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"require": {
|
||||||
|
"hyperf/context": "^3.0",
|
||||||
|
"hyperf/contract": "^3.0",
|
||||||
|
"php": ">=8.0",
|
||||||
|
"pimple/pimple": "^3.3"
|
||||||
|
},
|
||||||
|
"require-dev": {
|
||||||
|
"friendsofphp/php-cs-fixer": "^3.0",
|
||||||
|
"hyperf/support": "^3.0",
|
||||||
|
"mockery/mockery": "^1.3",
|
||||||
|
"phpstan/phpstan": "^1.0",
|
||||||
|
"phpunit/phpunit": ">=7.0"
|
||||||
|
},
|
||||||
|
"time": "2023-06-10T04:41:29+00:00",
|
||||||
|
"type": "library",
|
||||||
|
"extra": {
|
||||||
|
"hyperf": {
|
||||||
|
"config": "Hyperf\\Pimple\\ConfigProvider"
|
||||||
|
},
|
||||||
|
"branch-alias": {
|
||||||
|
"dev-master": "2.0-dev"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"installation-source": "dist",
|
||||||
|
"autoload": {
|
||||||
|
"psr-4": {
|
||||||
|
"Hyperf\\Pimple\\": "src/"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"notification-url": "https://packagist.org/downloads/",
|
||||||
|
"license": [
|
||||||
|
"MIT"
|
||||||
|
],
|
||||||
|
"description": "Pimple Container",
|
||||||
|
"keywords": [
|
||||||
|
"container",
|
||||||
|
"hyperf",
|
||||||
|
"php",
|
||||||
|
"psr11"
|
||||||
|
],
|
||||||
|
"support": {
|
||||||
|
"issues": "https://github.com/hyperf-cloud/pimple-integration/issues",
|
||||||
|
"source": "https://github.com/hyperf-cloud/pimple-integration/tree/v2.2.2"
|
||||||
|
},
|
||||||
|
"install-path": "../hyperf/pimple"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "maennchen/zipstream-php",
|
"name": "maennchen/zipstream-php",
|
||||||
"version": "2.4.0",
|
"version": "2.4.0",
|
||||||
|
|||||||
49
vendor/composer/installed.php
vendored
49
vendor/composer/installed.php
vendored
@ -6,7 +6,7 @@
|
|||||||
'aliases' =>
|
'aliases' =>
|
||||||
array (
|
array (
|
||||||
),
|
),
|
||||||
'reference' => '0a95974a63e41cca15747597241a53381c61f1df',
|
'reference' => 'be05b7f6639c030982107e2c8b858af2b106b2b6',
|
||||||
'name' => 'fastadminnet/fastadmin',
|
'name' => 'fastadminnet/fastadmin',
|
||||||
),
|
),
|
||||||
'versions' =>
|
'versions' =>
|
||||||
@ -45,7 +45,7 @@
|
|||||||
'aliases' =>
|
'aliases' =>
|
||||||
array (
|
array (
|
||||||
),
|
),
|
||||||
'reference' => '0a95974a63e41cca15747597241a53381c61f1df',
|
'reference' => 'be05b7f6639c030982107e2c8b858af2b106b2b6',
|
||||||
),
|
),
|
||||||
'fastadminnet/fastadmin-addons' =>
|
'fastadminnet/fastadmin-addons' =>
|
||||||
array (
|
array (
|
||||||
@ -92,6 +92,51 @@
|
|||||||
),
|
),
|
||||||
'reference' => '21dc724a0583619cd1652f673303492272778051',
|
'reference' => '21dc724a0583619cd1652f673303492272778051',
|
||||||
),
|
),
|
||||||
|
'hyperf/context' =>
|
||||||
|
array (
|
||||||
|
'pretty_version' => 'v3.0.37',
|
||||||
|
'version' => '3.0.37.0',
|
||||||
|
'aliases' =>
|
||||||
|
array (
|
||||||
|
),
|
||||||
|
'reference' => '264e06fb882426d90758eca2c5bb8293f8b60455',
|
||||||
|
),
|
||||||
|
'hyperf/contract' =>
|
||||||
|
array (
|
||||||
|
'pretty_version' => 'v3.0.37',
|
||||||
|
'version' => '3.0.37.0',
|
||||||
|
'aliases' =>
|
||||||
|
array (
|
||||||
|
),
|
||||||
|
'reference' => '2e8290104468a8d90855067d8644a32114474452',
|
||||||
|
),
|
||||||
|
'hyperf/engine' =>
|
||||||
|
array (
|
||||||
|
'pretty_version' => 'v2.14.1',
|
||||||
|
'version' => '2.14.1.0',
|
||||||
|
'aliases' =>
|
||||||
|
array (
|
||||||
|
),
|
||||||
|
'reference' => '6595d2659ce7ebb940b8740a00ecd199128398f0',
|
||||||
|
),
|
||||||
|
'hyperf/engine-contract' =>
|
||||||
|
array (
|
||||||
|
'pretty_version' => 'v1.13.0',
|
||||||
|
'version' => '1.13.0.0',
|
||||||
|
'aliases' =>
|
||||||
|
array (
|
||||||
|
),
|
||||||
|
'reference' => '26a18ec0375147546bf9702b0fd737fdd2cec1d6',
|
||||||
|
),
|
||||||
|
'hyperf/pimple' =>
|
||||||
|
array (
|
||||||
|
'pretty_version' => 'v2.2.2',
|
||||||
|
'version' => '2.2.2.0',
|
||||||
|
'aliases' =>
|
||||||
|
array (
|
||||||
|
),
|
||||||
|
'reference' => '7bd07745c256b83679471c06ec2a11e901d37277',
|
||||||
|
),
|
||||||
'maennchen/zipstream-php' =>
|
'maennchen/zipstream-php' =>
|
||||||
array (
|
array (
|
||||||
'pretty_version' => '2.4.0',
|
'pretty_version' => '2.4.0',
|
||||||
|
|||||||
2
vendor/hyperf/context/.gitattributes
vendored
Normal file
2
vendor/hyperf/context/.gitattributes
vendored
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
/tests export-ignore
|
||||||
|
/.github export-ignore
|
||||||
21
vendor/hyperf/context/LICENSE
vendored
Normal file
21
vendor/hyperf/context/LICENSE
vendored
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
The MIT License (MIT)
|
||||||
|
|
||||||
|
Copyright (c) Hyperf
|
||||||
|
|
||||||
|
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.
|
||||||
40
vendor/hyperf/context/composer.json
vendored
Normal file
40
vendor/hyperf/context/composer.json
vendored
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
{
|
||||||
|
"name": "hyperf/context",
|
||||||
|
"description": "A coroutine/application context library.",
|
||||||
|
"license": "MIT",
|
||||||
|
"keywords": [
|
||||||
|
"php",
|
||||||
|
"swoole",
|
||||||
|
"hyperf",
|
||||||
|
"context"
|
||||||
|
],
|
||||||
|
"homepage": "https://hyperf.io",
|
||||||
|
"support": {
|
||||||
|
"docs": "https://hyperf.wiki",
|
||||||
|
"issues": "https://github.com/hyperf/hyperf/issues",
|
||||||
|
"pull-request": "https://github.com/hyperf/hyperf/pulls",
|
||||||
|
"source": "https://github.com/hyperf/hyperf"
|
||||||
|
},
|
||||||
|
"require": {
|
||||||
|
"php": ">=8.0",
|
||||||
|
"hyperf/engine": "^1.2|^2.0"
|
||||||
|
},
|
||||||
|
"autoload": {
|
||||||
|
"psr-4": {
|
||||||
|
"Hyperf\\Context\\": "src/"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"autoload-dev": {
|
||||||
|
"psr-4": {
|
||||||
|
"HyperfTest\\Context\\": "tests/"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"config": {
|
||||||
|
"sort-packages": true
|
||||||
|
},
|
||||||
|
"extra": {
|
||||||
|
"branch-alias": {
|
||||||
|
"dev-master": "3.0-dev"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
39
vendor/hyperf/context/src/ApplicationContext.php
vendored
Normal file
39
vendor/hyperf/context/src/ApplicationContext.php
vendored
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Context;
|
||||||
|
|
||||||
|
use Psr\Container\ContainerInterface;
|
||||||
|
use TypeError;
|
||||||
|
|
||||||
|
class ApplicationContext
|
||||||
|
{
|
||||||
|
protected static ?ContainerInterface $container = null;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @throws TypeError
|
||||||
|
*/
|
||||||
|
public static function getContainer(): ContainerInterface
|
||||||
|
{
|
||||||
|
return self::$container;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function hasContainer(): bool
|
||||||
|
{
|
||||||
|
return isset(self::$container);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function setContainer(ContainerInterface $container): ContainerInterface
|
||||||
|
{
|
||||||
|
self::$container = $container;
|
||||||
|
return $container;
|
||||||
|
}
|
||||||
|
}
|
||||||
125
vendor/hyperf/context/src/Context.php
vendored
Normal file
125
vendor/hyperf/context/src/Context.php
vendored
Normal file
@ -0,0 +1,125 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Context;
|
||||||
|
|
||||||
|
use Closure;
|
||||||
|
use Hyperf\Engine\Coroutine;
|
||||||
|
|
||||||
|
use function Hyperf\Support\value;
|
||||||
|
|
||||||
|
class Context
|
||||||
|
{
|
||||||
|
protected static array $nonCoContext = [];
|
||||||
|
|
||||||
|
public static function set(string $id, mixed $value, ?int $coroutineId = null): mixed
|
||||||
|
{
|
||||||
|
if (Coroutine::id() > 0) {
|
||||||
|
Coroutine::getContextFor($coroutineId)[$id] = $value;
|
||||||
|
} else {
|
||||||
|
static::$nonCoContext[$id] = $value;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function get(string $id, mixed $default = null, ?int $coroutineId = null): mixed
|
||||||
|
{
|
||||||
|
if (Coroutine::id() > 0) {
|
||||||
|
return Coroutine::getContextFor($coroutineId)[$id] ?? $default;
|
||||||
|
}
|
||||||
|
|
||||||
|
return static::$nonCoContext[$id] ?? $default;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function has(string $id, ?int $coroutineId = null): bool
|
||||||
|
{
|
||||||
|
if (Coroutine::id() > 0) {
|
||||||
|
return isset(Coroutine::getContextFor($coroutineId)[$id]);
|
||||||
|
}
|
||||||
|
|
||||||
|
return isset(static::$nonCoContext[$id]);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Release the context when you are not in coroutine environment.
|
||||||
|
*/
|
||||||
|
public static function destroy(string $id, ?int $coroutineId = null): void
|
||||||
|
{
|
||||||
|
if (Coroutine::id() > 0) {
|
||||||
|
unset(Coroutine::getContextFor($coroutineId)[$id]);
|
||||||
|
}
|
||||||
|
|
||||||
|
unset(static::$nonCoContext[$id]);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Copy the context from a coroutine to current coroutine.
|
||||||
|
* This method will delete the origin values in current coroutine.
|
||||||
|
*/
|
||||||
|
public static function copy(int $fromCoroutineId, array $keys = []): void
|
||||||
|
{
|
||||||
|
$from = Coroutine::getContextFor($fromCoroutineId);
|
||||||
|
|
||||||
|
if ($from === null) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
$current = Coroutine::getContextFor();
|
||||||
|
|
||||||
|
if ($keys) {
|
||||||
|
$map = array_intersect_key($from->getArrayCopy(), array_flip($keys));
|
||||||
|
} else {
|
||||||
|
$map = $from->getArrayCopy();
|
||||||
|
}
|
||||||
|
|
||||||
|
$current->exchangeArray($map);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieve the value and override it by closure.
|
||||||
|
*/
|
||||||
|
public static function override(string $id, Closure $closure, ?int $coroutineId = null): mixed
|
||||||
|
{
|
||||||
|
$value = null;
|
||||||
|
|
||||||
|
if (self::has($id, $coroutineId)) {
|
||||||
|
$value = self::get($id, null, $coroutineId);
|
||||||
|
}
|
||||||
|
|
||||||
|
$value = $closure($value);
|
||||||
|
|
||||||
|
self::set($id, $value, $coroutineId);
|
||||||
|
|
||||||
|
return $value;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieve the value and store it if not exists.
|
||||||
|
*/
|
||||||
|
public static function getOrSet(string $id, mixed $value, ?int $coroutineId = null): mixed
|
||||||
|
{
|
||||||
|
if (! self::has($id, $coroutineId)) {
|
||||||
|
return self::set($id, value($value), $coroutineId);
|
||||||
|
}
|
||||||
|
|
||||||
|
return self::get($id, null, $coroutineId);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function getContainer(?int $coroutineId = null)
|
||||||
|
{
|
||||||
|
if (Coroutine::id() > 0) {
|
||||||
|
return Coroutine::getContextFor($coroutineId);
|
||||||
|
}
|
||||||
|
|
||||||
|
return static::$nonCoContext;
|
||||||
|
}
|
||||||
|
}
|
||||||
44
vendor/hyperf/context/src/Traits/CoroutineProxy.php
vendored
Normal file
44
vendor/hyperf/context/src/Traits/CoroutineProxy.php
vendored
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Context\Traits;
|
||||||
|
|
||||||
|
use Hyperf\Context\Context;
|
||||||
|
use RuntimeException;
|
||||||
|
|
||||||
|
trait CoroutineProxy
|
||||||
|
{
|
||||||
|
public function __call($name, $arguments)
|
||||||
|
{
|
||||||
|
$target = $this->getTargetObject();
|
||||||
|
return $target->{$name}(...$arguments);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function __get($name)
|
||||||
|
{
|
||||||
|
$target = $this->getTargetObject();
|
||||||
|
return $target->{$name};
|
||||||
|
}
|
||||||
|
|
||||||
|
public function __set($name, $value)
|
||||||
|
{
|
||||||
|
$target = $this->getTargetObject();
|
||||||
|
return $target->{$name} = $value;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function getTargetObject()
|
||||||
|
{
|
||||||
|
if (! isset($this->proxyKey)) {
|
||||||
|
throw new RuntimeException(sprintf('Missing $proxyKey property in %s.', $this::class));
|
||||||
|
}
|
||||||
|
return Context::get($this->proxyKey);
|
||||||
|
}
|
||||||
|
}
|
||||||
2
vendor/hyperf/contract/.gitattributes
vendored
Normal file
2
vendor/hyperf/contract/.gitattributes
vendored
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
/tests export-ignore
|
||||||
|
/.github export-ignore
|
||||||
21
vendor/hyperf/contract/LICENSE
vendored
Normal file
21
vendor/hyperf/contract/LICENSE
vendored
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
The MIT License (MIT)
|
||||||
|
|
||||||
|
Copyright (c) Hyperf
|
||||||
|
|
||||||
|
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.
|
||||||
33
vendor/hyperf/contract/composer.json
vendored
Normal file
33
vendor/hyperf/contract/composer.json
vendored
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
{
|
||||||
|
"name": "hyperf/contract",
|
||||||
|
"description": "The contracts of Hyperf.",
|
||||||
|
"license": "MIT",
|
||||||
|
"keywords": [
|
||||||
|
"php",
|
||||||
|
"swoole",
|
||||||
|
"hyperf"
|
||||||
|
],
|
||||||
|
"homepage": "https://hyperf.io",
|
||||||
|
"support": {
|
||||||
|
"docs": "https://hyperf.wiki",
|
||||||
|
"issues": "https://github.com/hyperf/hyperf/issues",
|
||||||
|
"pull-request": "https://github.com/hyperf/hyperf/pulls",
|
||||||
|
"source": "https://github.com/hyperf/hyperf"
|
||||||
|
},
|
||||||
|
"require": {
|
||||||
|
"php": ">=8.0"
|
||||||
|
},
|
||||||
|
"autoload": {
|
||||||
|
"psr-4": {
|
||||||
|
"Hyperf\\Contract\\": "src/"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"config": {
|
||||||
|
"sort-packages": true
|
||||||
|
},
|
||||||
|
"extra": {
|
||||||
|
"branch-alias": {
|
||||||
|
"dev-master": "3.0-dev"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
21
vendor/hyperf/contract/src/ApplicationInterface.php
vendored
Normal file
21
vendor/hyperf/contract/src/ApplicationInterface.php
vendored
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
use Hyperf\Framework\ApplicationFactory;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @see ApplicationFactory
|
||||||
|
*/
|
||||||
|
interface ApplicationInterface
|
||||||
|
{
|
||||||
|
}
|
||||||
24
vendor/hyperf/contract/src/Arrayable.php
vendored
Normal file
24
vendor/hyperf/contract/src/Arrayable.php
vendored
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @template TKey of array-key
|
||||||
|
* @template TValue
|
||||||
|
*/
|
||||||
|
interface Arrayable
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @return array<TKey, TValue>
|
||||||
|
*/
|
||||||
|
public function toArray(): array;
|
||||||
|
}
|
||||||
22
vendor/hyperf/contract/src/Castable.php
vendored
Normal file
22
vendor/hyperf/contract/src/Castable.php
vendored
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface Castable
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Get the name of the caster class to use when casting from / to this cast target.
|
||||||
|
*
|
||||||
|
* @return CastsAttributes|CastsInboundAttributes|string
|
||||||
|
*/
|
||||||
|
public static function castUsing();
|
||||||
|
}
|
||||||
33
vendor/hyperf/contract/src/CastsAttributes.php
vendored
Normal file
33
vendor/hyperf/contract/src/CastsAttributes.php
vendored
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface CastsAttributes
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Transform the attribute from the underlying model values.
|
||||||
|
*
|
||||||
|
* @param object $model
|
||||||
|
* @param mixed $value
|
||||||
|
* @return mixed
|
||||||
|
*/
|
||||||
|
public function get($model, string $key, $value, array $attributes);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Transform the attribute to its underlying model values.
|
||||||
|
*
|
||||||
|
* @param object $model
|
||||||
|
* @param mixed $value
|
||||||
|
* @return array|string
|
||||||
|
*/
|
||||||
|
public function set($model, string $key, $value, array $attributes);
|
||||||
|
}
|
||||||
24
vendor/hyperf/contract/src/CastsInboundAttributes.php
vendored
Normal file
24
vendor/hyperf/contract/src/CastsInboundAttributes.php
vendored
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface CastsInboundAttributes
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Transform the attribute to its underlying model values.
|
||||||
|
*
|
||||||
|
* @param object $model
|
||||||
|
* @param mixed $value
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public function set($model, string $key, $value, array $attributes);
|
||||||
|
}
|
||||||
17
vendor/hyperf/contract/src/CompressInterface.php
vendored
Normal file
17
vendor/hyperf/contract/src/CompressInterface.php
vendored
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface CompressInterface
|
||||||
|
{
|
||||||
|
public function compress(): UnCompressInterface;
|
||||||
|
}
|
||||||
40
vendor/hyperf/contract/src/ConfigInterface.php
vendored
Normal file
40
vendor/hyperf/contract/src/ConfigInterface.php
vendored
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface ConfigInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Finds an entry of the container by its identifier and returns it.
|
||||||
|
*
|
||||||
|
* @param string $key identifier of the entry to look for
|
||||||
|
* @param mixed $default default value of the entry when does not found
|
||||||
|
* @return mixed entry
|
||||||
|
*/
|
||||||
|
public function get(string $key, mixed $default = null): mixed;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns true if the container can return an entry for the given identifier.
|
||||||
|
* Returns false otherwise.
|
||||||
|
*
|
||||||
|
* @param string $keys identifier of the entry to look for
|
||||||
|
*/
|
||||||
|
public function has(string $keys): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set a value to the container by its identifier.
|
||||||
|
*
|
||||||
|
* @param string $key identifier of the entry to set
|
||||||
|
* @param mixed $value the value that save to container
|
||||||
|
*/
|
||||||
|
public function set(string $key, mixed $value): void;
|
||||||
|
}
|
||||||
40
vendor/hyperf/contract/src/ConnectionInterface.php
vendored
Normal file
40
vendor/hyperf/contract/src/ConnectionInterface.php
vendored
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface ConnectionInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Get the real connection from pool.
|
||||||
|
*/
|
||||||
|
public function getConnection();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reconnect the connection.
|
||||||
|
*/
|
||||||
|
public function reconnect(): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check the connection is valid.
|
||||||
|
*/
|
||||||
|
public function check(): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Close the connection.
|
||||||
|
*/
|
||||||
|
public function close(): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Release the connection to pool.
|
||||||
|
*/
|
||||||
|
public function release(): void;
|
||||||
|
}
|
||||||
53
vendor/hyperf/contract/src/ContainerInterface.php
vendored
Normal file
53
vendor/hyperf/contract/src/ContainerInterface.php
vendored
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
use Psr\Container\ContainerInterface as PsrContainerInterface;
|
||||||
|
|
||||||
|
interface ContainerInterface extends PsrContainerInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Build an entry of the container by its name.
|
||||||
|
* This method behave like get() except resolves the entry again every time.
|
||||||
|
* For example if the entry is a class then a new instance will be created each time.
|
||||||
|
* This method makes the container behave like a factory.
|
||||||
|
*
|
||||||
|
* @param string $name entry name or a class name
|
||||||
|
* @param array $parameters Optional parameters to use to build the entry. Use this to force specific parameters
|
||||||
|
* to specific values. Parameters not defined in this array will be resolved using
|
||||||
|
* the container.
|
||||||
|
* @throws InvalidArgumentException the name parameter must be of type string
|
||||||
|
* @throws NotFoundException no entry found for the given name
|
||||||
|
*/
|
||||||
|
public function make(string $name, array $parameters = []);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Bind an arbitrary resolved entry to an identifier.
|
||||||
|
* Useful for testing 'get'.
|
||||||
|
*
|
||||||
|
* @param mixed $entry
|
||||||
|
*/
|
||||||
|
public function set(string $name, $entry): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Unbind an arbitrary resolved entry.
|
||||||
|
*/
|
||||||
|
public function unbind(string $name): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Bind an arbitrary definition to an identifier.
|
||||||
|
* Useful for testing 'make'.
|
||||||
|
*
|
||||||
|
* @param array|callable|string $definition
|
||||||
|
*/
|
||||||
|
public function define(string $name, $definition): void;
|
||||||
|
}
|
||||||
17
vendor/hyperf/contract/src/DispatcherInterface.php
vendored
Normal file
17
vendor/hyperf/contract/src/DispatcherInterface.php
vendored
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface DispatcherInterface
|
||||||
|
{
|
||||||
|
public function dispatch(...$params);
|
||||||
|
}
|
||||||
25
vendor/hyperf/contract/src/FrequencyInterface.php
vendored
Normal file
25
vendor/hyperf/contract/src/FrequencyInterface.php
vendored
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface FrequencyInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Number of hit per time.
|
||||||
|
*/
|
||||||
|
public function hit(int $number = 1): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Hits per second.
|
||||||
|
*/
|
||||||
|
public function frequency(): float;
|
||||||
|
}
|
||||||
17
vendor/hyperf/contract/src/IPReaderInterface.php
vendored
Normal file
17
vendor/hyperf/contract/src/IPReaderInterface.php
vendored
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface IPReaderInterface
|
||||||
|
{
|
||||||
|
public function read(): string;
|
||||||
|
}
|
||||||
17
vendor/hyperf/contract/src/IdGeneratorInterface.php
vendored
Normal file
17
vendor/hyperf/contract/src/IdGeneratorInterface.php
vendored
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface IdGeneratorInterface
|
||||||
|
{
|
||||||
|
public function generate();
|
||||||
|
}
|
||||||
17
vendor/hyperf/contract/src/JsonDeSerializable.php
vendored
Normal file
17
vendor/hyperf/contract/src/JsonDeSerializable.php
vendored
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface JsonDeSerializable
|
||||||
|
{
|
||||||
|
public static function jsonDeSerialize(mixed $data): static;
|
||||||
|
}
|
||||||
17
vendor/hyperf/contract/src/Jsonable.php
vendored
Normal file
17
vendor/hyperf/contract/src/Jsonable.php
vendored
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface Jsonable
|
||||||
|
{
|
||||||
|
public function __toString(): string;
|
||||||
|
}
|
||||||
30
vendor/hyperf/contract/src/LengthAwarePaginatorInterface.php
vendored
Normal file
30
vendor/hyperf/contract/src/LengthAwarePaginatorInterface.php
vendored
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface LengthAwarePaginatorInterface extends PaginatorInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Create a range of pagination URLs.
|
||||||
|
*/
|
||||||
|
public function getUrlRange(int $start, int $end): array;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine the total number of items in the data store.
|
||||||
|
*/
|
||||||
|
public function total(): int;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the page number of the last available page.
|
||||||
|
*/
|
||||||
|
public function lastPage(): int;
|
||||||
|
}
|
||||||
87
vendor/hyperf/contract/src/MessageBag.php
vendored
Normal file
87
vendor/hyperf/contract/src/MessageBag.php
vendored
Normal file
@ -0,0 +1,87 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface MessageBag
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Get the keys present in the message bag.
|
||||||
|
*/
|
||||||
|
public function keys(): array;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add a message to the bag.
|
||||||
|
*/
|
||||||
|
public function add(string $key, string $message): MessageBag;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Merge a new array of messages into the bag.
|
||||||
|
*
|
||||||
|
* @param array|MessageProvider $messages
|
||||||
|
* @return $this
|
||||||
|
*/
|
||||||
|
public function merge($messages);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine if messages exist for a given key.
|
||||||
|
*
|
||||||
|
* @param array|string $key
|
||||||
|
*/
|
||||||
|
public function has($key): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the first message from the bag for a given key.
|
||||||
|
*/
|
||||||
|
public function first(?string $key = null, ?string $format = null): string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get all of the messages from the bag for a given key.
|
||||||
|
*/
|
||||||
|
public function get(string $key, ?string $format = null): array;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get all of the messages for every key in the bag.
|
||||||
|
*/
|
||||||
|
public function all(?string $format = null): array;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the raw messages in the container.
|
||||||
|
*/
|
||||||
|
public function getMessages(): array;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the default message format.
|
||||||
|
*/
|
||||||
|
public function getFormat(): string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set the default message format.
|
||||||
|
*
|
||||||
|
* @return $this
|
||||||
|
*/
|
||||||
|
public function setFormat(string $format = ':message');
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine if the message bag has any messages.
|
||||||
|
*/
|
||||||
|
public function isEmpty(): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine if the message bag has any messages.
|
||||||
|
*/
|
||||||
|
public function isNotEmpty(): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the number of messages in the container.
|
||||||
|
*/
|
||||||
|
public function count(): int;
|
||||||
|
}
|
||||||
20
vendor/hyperf/contract/src/MessageProvider.php
vendored
Normal file
20
vendor/hyperf/contract/src/MessageProvider.php
vendored
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface MessageProvider
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Get the messages for the instance.
|
||||||
|
*/
|
||||||
|
public function getMessageBag(): MessageBag;
|
||||||
|
}
|
||||||
17
vendor/hyperf/contract/src/MiddlewareInitializerInterface.php
vendored
Normal file
17
vendor/hyperf/contract/src/MiddlewareInitializerInterface.php
vendored
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface MiddlewareInitializerInterface
|
||||||
|
{
|
||||||
|
public function initCoreMiddleware(string $serverName): void;
|
||||||
|
}
|
||||||
34
vendor/hyperf/contract/src/NormalizerInterface.php
vendored
Normal file
34
vendor/hyperf/contract/src/NormalizerInterface.php
vendored
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
use ArrayObject;
|
||||||
|
|
||||||
|
interface NormalizerInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Normalizes an object into a set of arrays/scalars.
|
||||||
|
*
|
||||||
|
* @param mixed $object
|
||||||
|
* @return null|array|ArrayObject|bool|float|int|string
|
||||||
|
*/
|
||||||
|
public function normalize($object);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Denormalizes data back into an object of the given class.
|
||||||
|
*
|
||||||
|
* @param mixed $data Data to restore
|
||||||
|
* @param string $class The expected class to instantiate
|
||||||
|
* @return mixed|object
|
||||||
|
*/
|
||||||
|
public function denormalize($data, string $class);
|
||||||
|
}
|
||||||
23
vendor/hyperf/contract/src/OnCloseInterface.php
vendored
Normal file
23
vendor/hyperf/contract/src/OnCloseInterface.php
vendored
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
use Swoole\Http\Response;
|
||||||
|
use Swoole\Server;
|
||||||
|
|
||||||
|
interface OnCloseInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @param Response|Server $server
|
||||||
|
*/
|
||||||
|
public function onClose($server, int $fd, int $reactorId): void;
|
||||||
|
}
|
||||||
24
vendor/hyperf/contract/src/OnHandShakeInterface.php
vendored
Normal file
24
vendor/hyperf/contract/src/OnHandShakeInterface.php
vendored
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
use Swoole\Http\Request;
|
||||||
|
use Swoole\Http\Response;
|
||||||
|
|
||||||
|
interface OnHandShakeInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @param Request $request
|
||||||
|
* @param Response $response
|
||||||
|
*/
|
||||||
|
public function onHandShake($request, $response): void;
|
||||||
|
}
|
||||||
25
vendor/hyperf/contract/src/OnMessageInterface.php
vendored
Normal file
25
vendor/hyperf/contract/src/OnMessageInterface.php
vendored
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
use Swoole\Http\Response;
|
||||||
|
use Swoole\WebSocket\Frame;
|
||||||
|
use Swoole\WebSocket\Server;
|
||||||
|
|
||||||
|
interface OnMessageInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @param Response|Server $server
|
||||||
|
* @param Frame $frame
|
||||||
|
*/
|
||||||
|
public function onMessage($server, $frame): void;
|
||||||
|
}
|
||||||
25
vendor/hyperf/contract/src/OnOpenInterface.php
vendored
Normal file
25
vendor/hyperf/contract/src/OnOpenInterface.php
vendored
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
use Swoole\Http\Request;
|
||||||
|
use Swoole\Http\Response;
|
||||||
|
use Swoole\WebSocket\Server;
|
||||||
|
|
||||||
|
interface OnOpenInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @param Response|Server $server
|
||||||
|
* @param Request $request
|
||||||
|
*/
|
||||||
|
public function onOpen($server, $request): void;
|
||||||
|
}
|
||||||
24
vendor/hyperf/contract/src/OnPacketInterface.php
vendored
Normal file
24
vendor/hyperf/contract/src/OnPacketInterface.php
vendored
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
use Swoole\WebSocket\Server;
|
||||||
|
|
||||||
|
interface OnPacketInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @param Server $server
|
||||||
|
* @param mixed $data
|
||||||
|
* @param array $clientInfo
|
||||||
|
*/
|
||||||
|
public function onPacket($server, $data, $clientInfo): void;
|
||||||
|
}
|
||||||
24
vendor/hyperf/contract/src/OnReceiveInterface.php
vendored
Normal file
24
vendor/hyperf/contract/src/OnReceiveInterface.php
vendored
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
use Swoole\Coroutine\Server\Connection;
|
||||||
|
use Swoole\Server as SwooleServer;
|
||||||
|
use Swow\Socket;
|
||||||
|
|
||||||
|
interface OnReceiveInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @param Connection|Socket|SwooleServer $server
|
||||||
|
*/
|
||||||
|
public function onReceive($server, int $fd, int $reactorId, string $data): void;
|
||||||
|
}
|
||||||
21
vendor/hyperf/contract/src/OnRequestInterface.php
vendored
Normal file
21
vendor/hyperf/contract/src/OnRequestInterface.php
vendored
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface OnRequestInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @param mixed $request swoole request or psr server request
|
||||||
|
* @param mixed $response swoole response or swow session
|
||||||
|
*/
|
||||||
|
public function onRequest($request, $response): void;
|
||||||
|
}
|
||||||
19
vendor/hyperf/contract/src/PackerInterface.php
vendored
Normal file
19
vendor/hyperf/contract/src/PackerInterface.php
vendored
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface PackerInterface
|
||||||
|
{
|
||||||
|
public function pack($data): string;
|
||||||
|
|
||||||
|
public function unpack(string $data);
|
||||||
|
}
|
||||||
95
vendor/hyperf/contract/src/PaginatorInterface.php
vendored
Normal file
95
vendor/hyperf/contract/src/PaginatorInterface.php
vendored
Normal file
@ -0,0 +1,95 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface PaginatorInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Get the URL for a given page.
|
||||||
|
*/
|
||||||
|
public function url(int $page): string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add a set of query string values to the paginator.
|
||||||
|
*
|
||||||
|
* @param array|string $key
|
||||||
|
* @return $this
|
||||||
|
*/
|
||||||
|
public function appends($key, ?string $value = null);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get / set the URL fragment to be appended to URLs.
|
||||||
|
*
|
||||||
|
* @return $this|string
|
||||||
|
*/
|
||||||
|
public function fragment(?string $fragment = null);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The URL for the next page, or null.
|
||||||
|
*/
|
||||||
|
public function nextPageUrl(): ?string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the URL for the previous page, or null.
|
||||||
|
*/
|
||||||
|
public function previousPageUrl(): ?string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get all of the items being paginated.
|
||||||
|
*/
|
||||||
|
public function items(): array;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the "index" of the first item being paginated.
|
||||||
|
*/
|
||||||
|
public function firstItem(): ?int;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the "index" of the last item being paginated.
|
||||||
|
*/
|
||||||
|
public function lastItem(): ?int;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine how many items are being shown per page.
|
||||||
|
*/
|
||||||
|
public function perPage(): int;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine the current page being paginated.
|
||||||
|
*/
|
||||||
|
public function currentPage(): int;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine if there are enough items to split into multiple pages.
|
||||||
|
*/
|
||||||
|
public function hasPages(): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine if there is more items in the data store.
|
||||||
|
*/
|
||||||
|
public function hasMorePages(): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine if the list of items is empty or not.
|
||||||
|
*/
|
||||||
|
public function isEmpty(): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine if the list of items is not empty.
|
||||||
|
*/
|
||||||
|
public function isNotEmpty(): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Render the paginator using a given view.
|
||||||
|
*/
|
||||||
|
public function render(?string $view = null, array $data = []): string;
|
||||||
|
}
|
||||||
32
vendor/hyperf/contract/src/PoolInterface.php
vendored
Normal file
32
vendor/hyperf/contract/src/PoolInterface.php
vendored
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface PoolInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Get a connection from the connection pool.
|
||||||
|
*/
|
||||||
|
public function get(): ConnectionInterface;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Release a connection back to the connection pool.
|
||||||
|
*/
|
||||||
|
public function release(ConnectionInterface $connection): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Close and clear the connection pool.
|
||||||
|
*/
|
||||||
|
public function flush(): void;
|
||||||
|
|
||||||
|
public function getOption(): PoolOptionInterface;
|
||||||
|
}
|
||||||
27
vendor/hyperf/contract/src/PoolOptionInterface.php
vendored
Normal file
27
vendor/hyperf/contract/src/PoolOptionInterface.php
vendored
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface PoolOptionInterface
|
||||||
|
{
|
||||||
|
public function getMaxConnections(): int;
|
||||||
|
|
||||||
|
public function getMinConnections(): int;
|
||||||
|
|
||||||
|
public function getConnectTimeout(): float;
|
||||||
|
|
||||||
|
public function getWaitTimeout(): float;
|
||||||
|
|
||||||
|
public function getHeartbeat(): float;
|
||||||
|
|
||||||
|
public function getMaxIdleTime(): float;
|
||||||
|
}
|
||||||
36
vendor/hyperf/contract/src/ProcessInterface.php
vendored
Normal file
36
vendor/hyperf/contract/src/ProcessInterface.php
vendored
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
use Swoole\Coroutine\Http\Server as CoHttpServer;
|
||||||
|
use Swoole\Coroutine\Server as CoServer;
|
||||||
|
use Swoole\Server;
|
||||||
|
|
||||||
|
interface ProcessInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Create the process object according to process number and bind to server.
|
||||||
|
* @param CoHttpServer|CoServer|Server $server
|
||||||
|
*/
|
||||||
|
public function bind($server): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine if the process should start ?
|
||||||
|
* @param CoServer|Server $server
|
||||||
|
*/
|
||||||
|
public function isEnable($server): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The logical of process will place in here.
|
||||||
|
*/
|
||||||
|
public function handle(): void;
|
||||||
|
}
|
||||||
22
vendor/hyperf/contract/src/ResponseEmitterInterface.php
vendored
Normal file
22
vendor/hyperf/contract/src/ResponseEmitterInterface.php
vendored
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
use Psr\Http\Message\ResponseInterface;
|
||||||
|
|
||||||
|
interface ResponseEmitterInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @param mixed $connection swoole response or swow session
|
||||||
|
*/
|
||||||
|
public function emit(ResponseInterface $response, mixed $connection, bool $withContent = true): void;
|
||||||
|
}
|
||||||
160
vendor/hyperf/contract/src/SessionInterface.php
vendored
Normal file
160
vendor/hyperf/contract/src/SessionInterface.php
vendored
Normal file
@ -0,0 +1,160 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
use RuntimeException;
|
||||||
|
|
||||||
|
interface SessionInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Starts the session storage.
|
||||||
|
*
|
||||||
|
* @return bool True if session started
|
||||||
|
* @throws RuntimeException if session fails to start
|
||||||
|
*/
|
||||||
|
public function start(): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the session ID.
|
||||||
|
*
|
||||||
|
* @return string The session ID
|
||||||
|
*/
|
||||||
|
public function getId(): string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the session ID.
|
||||||
|
*/
|
||||||
|
public function setId(string $id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the session name.
|
||||||
|
*/
|
||||||
|
public function getName(): string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the session name.
|
||||||
|
*/
|
||||||
|
public function setName(string $name);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Invalidates the current session.
|
||||||
|
*
|
||||||
|
* Clears all session attributes and flashes and regenerates the
|
||||||
|
* session and deletes the old session from persistence.
|
||||||
|
*
|
||||||
|
* @param int $lifetime Sets the cookie lifetime for the session cookie. A null value
|
||||||
|
* will leave the system settings unchanged, 0 sets the cookie
|
||||||
|
* to expire with browser session. Time is in seconds, and is
|
||||||
|
* not a Unix timestamp.
|
||||||
|
*
|
||||||
|
* @return bool True if session invalidated, false if error
|
||||||
|
*/
|
||||||
|
public function invalidate(?int $lifetime = null): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Migrates the current session to a new session id while maintaining all
|
||||||
|
* session attributes.
|
||||||
|
*
|
||||||
|
* @param bool $destroy Whether to delete the old session or leave it to garbage collection
|
||||||
|
* @param int $lifetime Sets the cookie lifetime for the session cookie. A null value
|
||||||
|
* will leave the system settings unchanged, 0 sets the cookie
|
||||||
|
* to expire with browser session. Time is in seconds, and is
|
||||||
|
* not a Unix timestamp.
|
||||||
|
*
|
||||||
|
* @return bool True if session migrated, false if error
|
||||||
|
*/
|
||||||
|
public function migrate(bool $destroy = false, ?int $lifetime = null): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Force the session to be saved and closed.
|
||||||
|
*
|
||||||
|
* This method is generally not required for real sessions as
|
||||||
|
* the session will be automatically saved at the end of
|
||||||
|
* code execution.
|
||||||
|
*/
|
||||||
|
public function save(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Checks if an attribute is defined.
|
||||||
|
*
|
||||||
|
* @param string $name The attribute name
|
||||||
|
*
|
||||||
|
* @return bool true if the attribute is defined, false otherwise
|
||||||
|
*/
|
||||||
|
public function has(string $name): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns an attribute.
|
||||||
|
*
|
||||||
|
* @param string $name The attribute name
|
||||||
|
* @param mixed $default The default value if not found
|
||||||
|
*/
|
||||||
|
public function get(string $name, $default = null);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets an attribute.
|
||||||
|
* @param mixed $value
|
||||||
|
*/
|
||||||
|
public function set(string $name, $value): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Put a key / value pair or array of key / value pairs in the session.
|
||||||
|
*
|
||||||
|
* @param array|string $key
|
||||||
|
* @param null|mixed $value
|
||||||
|
*/
|
||||||
|
public function put($key, $value = null): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns attributes.
|
||||||
|
*/
|
||||||
|
public function all(): array;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets attributes.
|
||||||
|
*/
|
||||||
|
public function replace(array $attributes): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Removes an attribute, returning its value.
|
||||||
|
*
|
||||||
|
* @return mixed The removed value or null when it does not exist
|
||||||
|
*/
|
||||||
|
public function remove(string $name);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Remove one or many items from the session.
|
||||||
|
*
|
||||||
|
* @param array|string $keys
|
||||||
|
*/
|
||||||
|
public function forget($keys): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Clears all attributes.
|
||||||
|
*/
|
||||||
|
public function clear(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Checks if the session was started.
|
||||||
|
*/
|
||||||
|
public function isStarted(): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the previous URL from the session.
|
||||||
|
*/
|
||||||
|
public function previousUrl(): ?string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set the "previous" URL in the session.
|
||||||
|
*/
|
||||||
|
public function setPreviousUrl(string $url): void;
|
||||||
|
}
|
||||||
18
vendor/hyperf/contract/src/StdoutLoggerInterface.php
vendored
Normal file
18
vendor/hyperf/contract/src/StdoutLoggerInterface.php
vendored
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
use Psr\Log\LoggerInterface;
|
||||||
|
|
||||||
|
interface StdoutLoggerInterface extends LoggerInterface
|
||||||
|
{
|
||||||
|
}
|
||||||
20
vendor/hyperf/contract/src/Synchronized.php
vendored
Normal file
20
vendor/hyperf/contract/src/Synchronized.php
vendored
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface Synchronized
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Whether the data has been synchronized.
|
||||||
|
*/
|
||||||
|
public function isSynchronized(): bool;
|
||||||
|
}
|
||||||
39
vendor/hyperf/contract/src/TranslatorInterface.php
vendored
Normal file
39
vendor/hyperf/contract/src/TranslatorInterface.php
vendored
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
use Countable;
|
||||||
|
|
||||||
|
interface TranslatorInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Get the translation for a given key.
|
||||||
|
*/
|
||||||
|
public function trans(string $key, array $replace = [], ?string $locale = null): array|string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get a translation according to an integer value.
|
||||||
|
*
|
||||||
|
* @param array|Countable|int $number
|
||||||
|
*/
|
||||||
|
public function transChoice(string $key, $number, array $replace = [], ?string $locale = null): string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the default locale being used.
|
||||||
|
*/
|
||||||
|
public function getLocale(): string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set the default locale.
|
||||||
|
*/
|
||||||
|
public function setLocale(string $locale);
|
||||||
|
}
|
||||||
35
vendor/hyperf/contract/src/TranslatorLoaderInterface.php
vendored
Normal file
35
vendor/hyperf/contract/src/TranslatorLoaderInterface.php
vendored
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface TranslatorLoaderInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Load the messages for the given locale.
|
||||||
|
*/
|
||||||
|
public function load(string $locale, string $group, ?string $namespace = null): array;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add a new namespace to the loader.
|
||||||
|
*/
|
||||||
|
public function addNamespace(string $namespace, string $hint);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add a new JSON path to the loader.
|
||||||
|
*/
|
||||||
|
public function addJsonPath(string $path);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get an array of all the registered namespaces.
|
||||||
|
*/
|
||||||
|
public function namespaces(): array;
|
||||||
|
}
|
||||||
17
vendor/hyperf/contract/src/UnCompressInterface.php
vendored
Normal file
17
vendor/hyperf/contract/src/UnCompressInterface.php
vendored
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface UnCompressInterface
|
||||||
|
{
|
||||||
|
public function uncompress();
|
||||||
|
}
|
||||||
57
vendor/hyperf/contract/src/ValidatorInterface.php
vendored
Normal file
57
vendor/hyperf/contract/src/ValidatorInterface.php
vendored
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface ValidatorInterface extends MessageProvider
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the validator's rules against its data.
|
||||||
|
*/
|
||||||
|
public function validate(): array;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the attributes and values that were validated.
|
||||||
|
*/
|
||||||
|
public function validated(): array;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine if the data fails the validation rules.
|
||||||
|
*/
|
||||||
|
public function fails(): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the failed validation rules.
|
||||||
|
*/
|
||||||
|
public function failed(): array;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add conditions to a given field based on a Closure.
|
||||||
|
*
|
||||||
|
* @param array|string $attribute
|
||||||
|
* @param array|string $rules
|
||||||
|
* @return $this
|
||||||
|
*/
|
||||||
|
public function sometimes($attribute, $rules, callable $callback);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add an after validation callback.
|
||||||
|
*
|
||||||
|
* @param callable|string $callback
|
||||||
|
* @return $this
|
||||||
|
*/
|
||||||
|
public function after($callback);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get all of the validation error messages.
|
||||||
|
*/
|
||||||
|
public function errors(): MessageBag;
|
||||||
|
}
|
||||||
17
vendor/hyperf/contract/src/Xmlable.php
vendored
Normal file
17
vendor/hyperf/contract/src/Xmlable.php
vendored
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
namespace Hyperf\Contract;
|
||||||
|
|
||||||
|
interface Xmlable
|
||||||
|
{
|
||||||
|
public function __toString(): string;
|
||||||
|
}
|
||||||
2
vendor/hyperf/engine-contract/.gitattributes
vendored
Normal file
2
vendor/hyperf/engine-contract/.gitattributes
vendored
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
/tests export-ignore
|
||||||
|
/.github export-ignore
|
||||||
6
vendor/hyperf/engine-contract/.gitignore
vendored
Normal file
6
vendor/hyperf/engine-contract/.gitignore
vendored
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
/vendor/
|
||||||
|
composer.lock
|
||||||
|
*.cache
|
||||||
|
*.log
|
||||||
|
.vscode
|
||||||
|
.idea/*
|
||||||
104
vendor/hyperf/engine-contract/.php-cs-fixer.php
vendored
Normal file
104
vendor/hyperf/engine-contract/.php-cs-fixer.php
vendored
Normal file
@ -0,0 +1,104 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
$header = <<<'EOF'
|
||||||
|
This file is part of Hyperf.
|
||||||
|
|
||||||
|
@link https://www.hyperf.io
|
||||||
|
@document https://hyperf.wiki
|
||||||
|
@contact group@hyperf.io
|
||||||
|
@license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
EOF;
|
||||||
|
|
||||||
|
return (new PhpCsFixer\Config())
|
||||||
|
->setRiskyAllowed(true)
|
||||||
|
->setRules([
|
||||||
|
'@PSR2' => true,
|
||||||
|
'@Symfony' => true,
|
||||||
|
'@DoctrineAnnotation' => true,
|
||||||
|
'@PhpCsFixer' => true,
|
||||||
|
'header_comment' => [
|
||||||
|
'comment_type' => 'PHPDoc',
|
||||||
|
'header' => $header,
|
||||||
|
'separate' => 'none',
|
||||||
|
'location' => 'after_declare_strict',
|
||||||
|
],
|
||||||
|
'array_syntax' => [
|
||||||
|
'syntax' => 'short',
|
||||||
|
],
|
||||||
|
'list_syntax' => [
|
||||||
|
'syntax' => 'short',
|
||||||
|
],
|
||||||
|
'concat_space' => [
|
||||||
|
'spacing' => 'one',
|
||||||
|
],
|
||||||
|
'blank_line_before_statement' => [
|
||||||
|
'statements' => [
|
||||||
|
'declare',
|
||||||
|
],
|
||||||
|
],
|
||||||
|
'general_phpdoc_annotation_remove' => [
|
||||||
|
'annotations' => [
|
||||||
|
'author',
|
||||||
|
],
|
||||||
|
],
|
||||||
|
'ordered_imports' => [
|
||||||
|
'imports_order' => [
|
||||||
|
'class', 'function', 'const',
|
||||||
|
],
|
||||||
|
'sort_algorithm' => 'alpha',
|
||||||
|
],
|
||||||
|
'single_line_comment_style' => [
|
||||||
|
'comment_types' => [
|
||||||
|
],
|
||||||
|
],
|
||||||
|
'yoda_style' => [
|
||||||
|
'always_move_variable' => false,
|
||||||
|
'equal' => false,
|
||||||
|
'identical' => false,
|
||||||
|
],
|
||||||
|
'phpdoc_align' => [
|
||||||
|
'align' => 'left',
|
||||||
|
],
|
||||||
|
'multiline_whitespace_before_semicolons' => [
|
||||||
|
'strategy' => 'no_multi_line',
|
||||||
|
],
|
||||||
|
'constant_case' => [
|
||||||
|
'case' => 'lower',
|
||||||
|
],
|
||||||
|
'global_namespace_import' => [
|
||||||
|
'import_classes' => true,
|
||||||
|
'import_constants' => true,
|
||||||
|
'import_functions' => true,
|
||||||
|
],
|
||||||
|
'class_attributes_separation' => true,
|
||||||
|
'combine_consecutive_unsets' => true,
|
||||||
|
'declare_strict_types' => true,
|
||||||
|
'linebreak_after_opening_tag' => true,
|
||||||
|
'lowercase_static_reference' => true,
|
||||||
|
'no_useless_else' => true,
|
||||||
|
'no_unused_imports' => true,
|
||||||
|
'not_operator_with_successor_space' => true,
|
||||||
|
'not_operator_with_space' => false,
|
||||||
|
'ordered_class_elements' => true,
|
||||||
|
'php_unit_strict' => false,
|
||||||
|
'phpdoc_separation' => false,
|
||||||
|
'single_quote' => true,
|
||||||
|
'standardize_not_equals' => true,
|
||||||
|
'multiline_comment_opening_closing' => true,
|
||||||
|
'single_line_empty_body' => false,
|
||||||
|
])
|
||||||
|
->setFinder(
|
||||||
|
PhpCsFixer\Finder::create()
|
||||||
|
->exclude('vendor')
|
||||||
|
->in(__DIR__)
|
||||||
|
)
|
||||||
|
->setUsingCache(false);
|
||||||
6
vendor/hyperf/engine-contract/.phpstorm.meta.php
vendored
Normal file
6
vendor/hyperf/engine-contract/.phpstorm.meta.php
vendored
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace PHPSTORM_META {
|
||||||
|
// Reflect
|
||||||
|
override(\Psr\Container\ContainerInterface::get(0), map('@'));
|
||||||
|
}
|
||||||
21
vendor/hyperf/engine-contract/LICENSE
vendored
Normal file
21
vendor/hyperf/engine-contract/LICENSE
vendored
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
The MIT License (MIT)
|
||||||
|
|
||||||
|
Copyright (c) Hyperf
|
||||||
|
|
||||||
|
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.
|
||||||
9
vendor/hyperf/engine-contract/README.md
vendored
Normal file
9
vendor/hyperf/engine-contract/README.md
vendored
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
# Contract for Coroutine Engine
|
||||||
|
|
||||||
|
[](https://github.com/hyperf/engine-contract/actions/workflows/test.yml)
|
||||||
|
|
||||||
|
## How to install
|
||||||
|
|
||||||
|
```
|
||||||
|
composer require hyperf/engine-contract
|
||||||
|
```
|
||||||
53
vendor/hyperf/engine-contract/composer.json
vendored
Normal file
53
vendor/hyperf/engine-contract/composer.json
vendored
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
{
|
||||||
|
"name": "hyperf/engine-contract",
|
||||||
|
"type": "library",
|
||||||
|
"license": "MIT",
|
||||||
|
"keywords": [
|
||||||
|
"php",
|
||||||
|
"hyperf",
|
||||||
|
"coroutine",
|
||||||
|
"contract",
|
||||||
|
"engine"
|
||||||
|
],
|
||||||
|
"description": "Contract for Coroutine Engine",
|
||||||
|
"autoload": {
|
||||||
|
"psr-4": {
|
||||||
|
"Hyperf\\Engine\\Contract\\": "src/"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"autoload-dev": {
|
||||||
|
"psr-4": {
|
||||||
|
"HyperfTest\\": "tests"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"require": {
|
||||||
|
"php": ">=8.0"
|
||||||
|
},
|
||||||
|
"require-dev": {
|
||||||
|
"friendsofphp/php-cs-fixer": "^3.0",
|
||||||
|
"mockery/mockery": "^1.0",
|
||||||
|
"phpstan/phpstan": "^1.0",
|
||||||
|
"phpunit/phpunit": ">=7.0",
|
||||||
|
"psr/http-message": "^1.0",
|
||||||
|
"swoole/ide-helper": "^4.5"
|
||||||
|
},
|
||||||
|
"suggest": {
|
||||||
|
"psr/http-message": "Required to use WebSocket Frame."
|
||||||
|
},
|
||||||
|
"minimum-stability": "dev",
|
||||||
|
"prefer-stable": true,
|
||||||
|
"config": {
|
||||||
|
"optimize-autoloader": true,
|
||||||
|
"sort-packages": true
|
||||||
|
},
|
||||||
|
"extra": {
|
||||||
|
"branch-alias": {
|
||||||
|
"dev-master": "1.11-dev"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"scripts": {
|
||||||
|
"test": "phpunit -c phpunit.xml --colors=always",
|
||||||
|
"analyse": "phpstan analyse --memory-limit 1024M -l 0 ./src",
|
||||||
|
"cs-fix": "php-cs-fixer fix $1"
|
||||||
|
}
|
||||||
|
}
|
||||||
15
vendor/hyperf/engine-contract/phpunit.xml
vendored
Normal file
15
vendor/hyperf/engine-contract/phpunit.xml
vendored
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
bootstrap="tests/bootstrap.php"
|
||||||
|
backupGlobals="false"
|
||||||
|
colors="true"
|
||||||
|
processIsolation="false"
|
||||||
|
stopOnFailure="false"
|
||||||
|
xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/10.0/phpunit.xsd"
|
||||||
|
cacheDirectory=".phpunit.cache"
|
||||||
|
backupStaticProperties="false"
|
||||||
|
>
|
||||||
|
<testsuite name="Testsuite">
|
||||||
|
<directory>./tests/</directory>
|
||||||
|
</testsuite>
|
||||||
|
</phpunit>
|
||||||
28
vendor/hyperf/engine-contract/src/BarrierInterface.php
vendored
Normal file
28
vendor/hyperf/engine-contract/src/BarrierInterface.php
vendored
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Contract;
|
||||||
|
|
||||||
|
interface BarrierInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Wait for the barrier to be released.
|
||||||
|
*/
|
||||||
|
public static function wait(object &$barrier, int $timeout = -1): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create a new barrier instance.
|
||||||
|
*
|
||||||
|
* @return BarrierInterface
|
||||||
|
*/
|
||||||
|
public static function create(): object;
|
||||||
|
}
|
||||||
59
vendor/hyperf/engine-contract/src/ChannelInterface.php
vendored
Normal file
59
vendor/hyperf/engine-contract/src/ChannelInterface.php
vendored
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Contract;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @template TValue of mixed
|
||||||
|
*/
|
||||||
|
interface ChannelInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @param TValue $data
|
||||||
|
* @param float|int $timeout seconds [optional] = -1
|
||||||
|
*/
|
||||||
|
public function push(mixed $data, float $timeout = -1): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param float $timeout seconds [optional] = -1
|
||||||
|
* @return false|TValue when pop failed, return false
|
||||||
|
*/
|
||||||
|
public function pop(float $timeout = -1): mixed;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Swow: When the channel is closed, all the data in it will be destroyed.
|
||||||
|
* Swoole: When the channel is closed, the data in it can still be popped out, but push behavior will no longer succeed.
|
||||||
|
*/
|
||||||
|
public function close(): bool;
|
||||||
|
|
||||||
|
public function getCapacity(): int;
|
||||||
|
|
||||||
|
public function getLength(): int;
|
||||||
|
|
||||||
|
public function isAvailable(): bool;
|
||||||
|
|
||||||
|
public function hasProducers(): bool;
|
||||||
|
|
||||||
|
public function hasConsumers(): bool;
|
||||||
|
|
||||||
|
public function isEmpty(): bool;
|
||||||
|
|
||||||
|
public function isFull(): bool;
|
||||||
|
|
||||||
|
public function isReadable(): bool;
|
||||||
|
|
||||||
|
public function isWritable(): bool;
|
||||||
|
|
||||||
|
public function isClosing(): bool;
|
||||||
|
|
||||||
|
public function isTimeout(): bool;
|
||||||
|
}
|
||||||
96
vendor/hyperf/engine-contract/src/CoroutineInterface.php
vendored
Normal file
96
vendor/hyperf/engine-contract/src/CoroutineInterface.php
vendored
Normal file
@ -0,0 +1,96 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Contract;
|
||||||
|
|
||||||
|
use ArrayObject;
|
||||||
|
use Hyperf\Engine\Exception\CoroutineDestroyedException;
|
||||||
|
use Hyperf\Engine\Exception\RunningInNonCoroutineException;
|
||||||
|
|
||||||
|
interface CoroutineInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @param callable $callable [required]
|
||||||
|
*/
|
||||||
|
public function __construct(callable $callable);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param mixed ...$data
|
||||||
|
*/
|
||||||
|
public function execute(...$data): static;
|
||||||
|
|
||||||
|
public function getId(): int;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param callable $callable [required]
|
||||||
|
* @param mixed ...$data
|
||||||
|
* @return $this
|
||||||
|
*/
|
||||||
|
public static function create(callable $callable, ...$data): static;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return int returns coroutine id from current coroutine, -1 in non coroutine environment
|
||||||
|
*/
|
||||||
|
public static function id(): int;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the parent coroutine ID.
|
||||||
|
* Returns 0 when running in the top level coroutine.
|
||||||
|
* @throws RunningInNonCoroutineException when running in non-coroutine context
|
||||||
|
* @throws CoroutineDestroyedException when the coroutine has been destroyed
|
||||||
|
*/
|
||||||
|
public static function pid(?int $id = null): int;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set config to coroutine.
|
||||||
|
*/
|
||||||
|
public static function set(array $config): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param null|int $id coroutine id
|
||||||
|
*/
|
||||||
|
public static function getContextFor(?int $id = null): ?ArrayObject;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Execute callback when coroutine destruct.
|
||||||
|
*/
|
||||||
|
public static function defer(callable $callable): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Yield the current coroutine.
|
||||||
|
* @param mixed $data only Support Swow
|
||||||
|
* @return bool|mixed Swow:mixed, Swoole:bool
|
||||||
|
*/
|
||||||
|
public static function yield(mixed $data = null): mixed;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Resume the coroutine by coroutine Id.
|
||||||
|
* @param mixed $data only Support Swow
|
||||||
|
* @return bool|mixed Swow:mixed, Swoole:bool
|
||||||
|
*/
|
||||||
|
public static function resumeById(int $id, mixed ...$data): mixed;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the coroutine stats.
|
||||||
|
*/
|
||||||
|
public static function stats(): array;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check if a coroutine exists or not.
|
||||||
|
*/
|
||||||
|
public static function exists(int $id): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return iterable<int> returns all coroutine IDs
|
||||||
|
*/
|
||||||
|
public static function list(): iterable;
|
||||||
|
}
|
||||||
21
vendor/hyperf/engine-contract/src/DefaultOptionInterface.php
vendored
Normal file
21
vendor/hyperf/engine-contract/src/DefaultOptionInterface.php
vendored
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Contract;
|
||||||
|
|
||||||
|
interface DefaultOptionInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Get Hook Coroutine Flags.
|
||||||
|
*/
|
||||||
|
public static function hookFlags(): int;
|
||||||
|
}
|
||||||
23
vendor/hyperf/engine-contract/src/Http/ClientInterface.php
vendored
Normal file
23
vendor/hyperf/engine-contract/src/Http/ClientInterface.php
vendored
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Contract\Http;
|
||||||
|
|
||||||
|
interface ClientInterface
|
||||||
|
{
|
||||||
|
public function set(array $settings): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param string[][] $headers
|
||||||
|
*/
|
||||||
|
public function request(string $method = 'GET', string $path = '/', array $headers = [], string $contents = '', string $version = '1.1'): RawResponseInterface;
|
||||||
|
}
|
||||||
24
vendor/hyperf/engine-contract/src/Http/Http.php
vendored
Normal file
24
vendor/hyperf/engine-contract/src/Http/Http.php
vendored
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Contract\Http;
|
||||||
|
|
||||||
|
use Stringable;
|
||||||
|
|
||||||
|
interface Http
|
||||||
|
{
|
||||||
|
public const DEFAULT_PROTOCOL_VERSION = '1.1';
|
||||||
|
|
||||||
|
public static function packRequest(string $method, string|Stringable $path, array $headers = [], string|Stringable $body = '', string $protocolVersion = self::DEFAULT_PROTOCOL_VERSION): string;
|
||||||
|
|
||||||
|
public static function packResponse(int $statusCode, string $reasonPhrase = '', array $headers = [], string|Stringable $body = '', string $protocolVersion = self::DEFAULT_PROTOCOL_VERSION): string;
|
||||||
|
}
|
||||||
27
vendor/hyperf/engine-contract/src/Http/RawResponseInterface.php
vendored
Normal file
27
vendor/hyperf/engine-contract/src/Http/RawResponseInterface.php
vendored
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Contract\Http;
|
||||||
|
|
||||||
|
interface RawResponseInterface
|
||||||
|
{
|
||||||
|
public function getStatusCode(): int;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return string[][]
|
||||||
|
*/
|
||||||
|
public function getHeaders(): array;
|
||||||
|
|
||||||
|
public function getBody(): string;
|
||||||
|
|
||||||
|
public function getVersion(): string;
|
||||||
|
}
|
||||||
18
vendor/hyperf/engine-contract/src/Http/ServerFactoryInterface.php
vendored
Normal file
18
vendor/hyperf/engine-contract/src/Http/ServerFactoryInterface.php
vendored
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Contract\Http;
|
||||||
|
|
||||||
|
interface ServerFactoryInterface
|
||||||
|
{
|
||||||
|
public function make(string $name, int $port = 0): ServerInterface;
|
||||||
|
}
|
||||||
22
vendor/hyperf/engine-contract/src/Http/ServerInterface.php
vendored
Normal file
22
vendor/hyperf/engine-contract/src/Http/ServerInterface.php
vendored
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Contract\Http;
|
||||||
|
|
||||||
|
interface ServerInterface
|
||||||
|
{
|
||||||
|
public function handle(callable $callable): static;
|
||||||
|
|
||||||
|
public function start(): void;
|
||||||
|
|
||||||
|
public function close(): bool;
|
||||||
|
}
|
||||||
18
vendor/hyperf/engine-contract/src/Http/V2/ClientFactoryInterface.php
vendored
Normal file
18
vendor/hyperf/engine-contract/src/Http/V2/ClientFactoryInterface.php
vendored
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Contract\Http\V2;
|
||||||
|
|
||||||
|
interface ClientFactoryInterface
|
||||||
|
{
|
||||||
|
public function make(string $host, int $port = 80, bool $ssl = false);
|
||||||
|
}
|
||||||
33
vendor/hyperf/engine-contract/src/Http/V2/ClientInterface.php
vendored
Normal file
33
vendor/hyperf/engine-contract/src/Http/V2/ClientInterface.php
vendored
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Contract\Http\V2;
|
||||||
|
|
||||||
|
interface ClientInterface
|
||||||
|
{
|
||||||
|
public function set(array $settings): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return int StreamID
|
||||||
|
*/
|
||||||
|
public function send(RequestInterface $request): int;
|
||||||
|
|
||||||
|
public function recv(float $timeout = 0): ResponseInterface;
|
||||||
|
|
||||||
|
public function write(int $streamId, mixed $data, bool $end = false): bool;
|
||||||
|
|
||||||
|
public function ping(): bool;
|
||||||
|
|
||||||
|
public function close(): bool;
|
||||||
|
|
||||||
|
public function isConnected(): bool;
|
||||||
|
}
|
||||||
26
vendor/hyperf/engine-contract/src/Http/V2/RequestInterface.php
vendored
Normal file
26
vendor/hyperf/engine-contract/src/Http/V2/RequestInterface.php
vendored
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Contract\Http\V2;
|
||||||
|
|
||||||
|
interface RequestInterface
|
||||||
|
{
|
||||||
|
public function getPath(): string;
|
||||||
|
|
||||||
|
public function getMethod(): string;
|
||||||
|
|
||||||
|
public function getHeaders(): array;
|
||||||
|
|
||||||
|
public function getBody(): string;
|
||||||
|
|
||||||
|
public function isPipeline(): bool;
|
||||||
|
}
|
||||||
24
vendor/hyperf/engine-contract/src/Http/V2/ResponseInterface.php
vendored
Normal file
24
vendor/hyperf/engine-contract/src/Http/V2/ResponseInterface.php
vendored
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Contract\Http\V2;
|
||||||
|
|
||||||
|
interface ResponseInterface
|
||||||
|
{
|
||||||
|
public function getStreamId(): int;
|
||||||
|
|
||||||
|
public function getStatusCode(): int;
|
||||||
|
|
||||||
|
public function getHeaders(): array;
|
||||||
|
|
||||||
|
public function getBody(): ?string;
|
||||||
|
}
|
||||||
22
vendor/hyperf/engine-contract/src/Http/Writable.php
vendored
Normal file
22
vendor/hyperf/engine-contract/src/Http/Writable.php
vendored
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Contract\Http;
|
||||||
|
|
||||||
|
interface Writable
|
||||||
|
{
|
||||||
|
public function getSocket(): mixed;
|
||||||
|
|
||||||
|
public function write(string $data): bool;
|
||||||
|
|
||||||
|
public function end(): ?bool;
|
||||||
|
}
|
||||||
23
vendor/hyperf/engine-contract/src/ResponseEmitterInterface.php
vendored
Normal file
23
vendor/hyperf/engine-contract/src/ResponseEmitterInterface.php
vendored
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Contract;
|
||||||
|
|
||||||
|
use Psr\Http\Message\ResponseInterface;
|
||||||
|
|
||||||
|
interface ResponseEmitterInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @param mixed $connection swoole response or swow session
|
||||||
|
*/
|
||||||
|
public function emit(ResponseInterface $response, mixed $connection, bool $withContent = true): void;
|
||||||
|
}
|
||||||
18
vendor/hyperf/engine-contract/src/SignalInterface.php
vendored
Normal file
18
vendor/hyperf/engine-contract/src/SignalInterface.php
vendored
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Contract;
|
||||||
|
|
||||||
|
interface SignalInterface
|
||||||
|
{
|
||||||
|
public static function wait(int $signo, float $timeout = -1): bool;
|
||||||
|
}
|
||||||
20
vendor/hyperf/engine-contract/src/Socket/SocketFactoryInterface.php
vendored
Normal file
20
vendor/hyperf/engine-contract/src/Socket/SocketFactoryInterface.php
vendored
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Contract\Socket;
|
||||||
|
|
||||||
|
use Hyperf\Engine\Contract\SocketInterface;
|
||||||
|
|
||||||
|
interface SocketFactoryInterface
|
||||||
|
{
|
||||||
|
public function make(SocketOptionInterface $option): SocketInterface;
|
||||||
|
}
|
||||||
36
vendor/hyperf/engine-contract/src/Socket/SocketOptionInterface.php
vendored
Normal file
36
vendor/hyperf/engine-contract/src/Socket/SocketOptionInterface.php
vendored
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Contract\Socket;
|
||||||
|
|
||||||
|
interface SocketOptionInterface
|
||||||
|
{
|
||||||
|
public function getHost(): string;
|
||||||
|
|
||||||
|
public function getPort(): int;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Connect timeout, seconds.
|
||||||
|
*/
|
||||||
|
public function getTimeout(): ?float;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return [
|
||||||
|
* 'open_length_check' => true,
|
||||||
|
* 'package_max_length' => 1024 * 1024 * 2,
|
||||||
|
* 'package_length_type' => 'N',
|
||||||
|
* 'package_length_offset' => 0,
|
||||||
|
* 'package_body_offset' => 4,
|
||||||
|
* ]
|
||||||
|
*/
|
||||||
|
public function getProtocol(): array;
|
||||||
|
}
|
||||||
24
vendor/hyperf/engine-contract/src/SocketInterface.php
vendored
Normal file
24
vendor/hyperf/engine-contract/src/SocketInterface.php
vendored
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Contract;
|
||||||
|
|
||||||
|
interface SocketInterface
|
||||||
|
{
|
||||||
|
public function sendAll(string $data, float $timeout = 0): false|int;
|
||||||
|
|
||||||
|
public function recvAll(int $length = 65536, float $timeout = 0): false|string;
|
||||||
|
|
||||||
|
public function recvPacket(float $timeout = 0): false|string;
|
||||||
|
|
||||||
|
public function close(): bool;
|
||||||
|
}
|
||||||
73
vendor/hyperf/engine-contract/src/WebSocket/FrameInterface.php
vendored
Normal file
73
vendor/hyperf/engine-contract/src/WebSocket/FrameInterface.php
vendored
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Contract\WebSocket;
|
||||||
|
|
||||||
|
use Psr\Http\Message\StreamInterface;
|
||||||
|
use Stringable;
|
||||||
|
|
||||||
|
interface FrameInterface extends Stringable
|
||||||
|
{
|
||||||
|
public function getOpcode(): int;
|
||||||
|
|
||||||
|
public function setOpcode(int $opcode): static;
|
||||||
|
|
||||||
|
public function withOpcode(int $opcode): static;
|
||||||
|
|
||||||
|
public function getFin(): bool;
|
||||||
|
|
||||||
|
public function setFin(bool $fin): static;
|
||||||
|
|
||||||
|
public function withFin(bool $fin): static;
|
||||||
|
|
||||||
|
public function getRSV1(): bool;
|
||||||
|
|
||||||
|
public function setRSV1(bool $rsv1): static;
|
||||||
|
|
||||||
|
public function withRSV1(bool $rsv1): static;
|
||||||
|
|
||||||
|
public function getRSV2(): bool;
|
||||||
|
|
||||||
|
public function setRSV2(bool $rsv2): static;
|
||||||
|
|
||||||
|
public function withRSV2(bool $rsv2): static;
|
||||||
|
|
||||||
|
public function getRSV3(): bool;
|
||||||
|
|
||||||
|
public function setRSV3(bool $rsv3): static;
|
||||||
|
|
||||||
|
public function withRSV3(bool $rsv3): static;
|
||||||
|
|
||||||
|
public function getPayloadLength(): int;
|
||||||
|
|
||||||
|
public function setPayloadLength(int $payloadLength): static;
|
||||||
|
|
||||||
|
public function withPayloadLength(int $payloadLength): static;
|
||||||
|
|
||||||
|
public function getMask(): bool;
|
||||||
|
|
||||||
|
public function getMaskingKey(): string;
|
||||||
|
|
||||||
|
public function setMaskingKey(string $maskingKey): static;
|
||||||
|
|
||||||
|
public function withMaskingKey(string $maskingKey): static;
|
||||||
|
|
||||||
|
public function getPayloadData(): StreamInterface;
|
||||||
|
|
||||||
|
public function setPayloadData(mixed $payloadData): static;
|
||||||
|
|
||||||
|
public function withPayloadData(mixed $payloadData): static;
|
||||||
|
|
||||||
|
public function toString(bool $withoutPayloadData = false): string;
|
||||||
|
|
||||||
|
public static function from(mixed $frame): static;
|
||||||
|
}
|
||||||
28
vendor/hyperf/engine-contract/src/WebSocket/ResponseInterface.php
vendored
Normal file
28
vendor/hyperf/engine-contract/src/WebSocket/ResponseInterface.php
vendored
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Contract\WebSocket;
|
||||||
|
|
||||||
|
interface ResponseInterface
|
||||||
|
{
|
||||||
|
public function push(FrameInterface $frame): bool;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Init fd by frame or request and so on,
|
||||||
|
* Must be used in swoole process mode.
|
||||||
|
*/
|
||||||
|
public function init(mixed $frame): static;
|
||||||
|
|
||||||
|
public function getFd(): int;
|
||||||
|
|
||||||
|
public function close(): bool;
|
||||||
|
}
|
||||||
24
vendor/hyperf/engine-contract/src/WebSocket/WebSocketInterface.php
vendored
Normal file
24
vendor/hyperf/engine-contract/src/WebSocket/WebSocketInterface.php
vendored
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Contract\WebSocket;
|
||||||
|
|
||||||
|
interface WebSocketInterface
|
||||||
|
{
|
||||||
|
public const ON_MESSAGE = 'message';
|
||||||
|
|
||||||
|
public const ON_CLOSE = 'close';
|
||||||
|
|
||||||
|
public function on(string $event, callable $callback): void;
|
||||||
|
|
||||||
|
public function start(): void;
|
||||||
|
}
|
||||||
4
vendor/hyperf/engine/.gitattributes
vendored
Normal file
4
vendor/hyperf/engine/.gitattributes
vendored
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
/.github export-ignore
|
||||||
|
/examples export-ignore
|
||||||
|
/tests export-ignore
|
||||||
|
|
||||||
5
vendor/hyperf/engine/.gitignore
vendored
Normal file
5
vendor/hyperf/engine/.gitignore
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
/vendor/
|
||||||
|
composer.lock
|
||||||
|
*.cache
|
||||||
|
*.log
|
||||||
|
.idea/*
|
||||||
95
vendor/hyperf/engine/.php-cs-fixer.php
vendored
Normal file
95
vendor/hyperf/engine/.php-cs-fixer.php
vendored
Normal file
@ -0,0 +1,95 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
$header = <<<'EOF'
|
||||||
|
This file is part of Hyperf.
|
||||||
|
|
||||||
|
@link https://www.hyperf.io
|
||||||
|
@document https://hyperf.wiki
|
||||||
|
@contact group@hyperf.io
|
||||||
|
@license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
EOF;
|
||||||
|
|
||||||
|
return (new PhpCsFixer\Config())
|
||||||
|
->setRiskyAllowed(true)
|
||||||
|
->setRules([
|
||||||
|
'@PSR2' => true,
|
||||||
|
'@Symfony' => true,
|
||||||
|
'@DoctrineAnnotation' => true,
|
||||||
|
'@PhpCsFixer' => true,
|
||||||
|
'header_comment' => [
|
||||||
|
'comment_type' => 'PHPDoc',
|
||||||
|
'header' => $header,
|
||||||
|
'separate' => 'none',
|
||||||
|
'location' => 'after_declare_strict',
|
||||||
|
],
|
||||||
|
'array_syntax' => [
|
||||||
|
'syntax' => 'short'
|
||||||
|
],
|
||||||
|
'list_syntax' => [
|
||||||
|
'syntax' => 'short'
|
||||||
|
],
|
||||||
|
'concat_space' => [
|
||||||
|
'spacing' => 'one'
|
||||||
|
],
|
||||||
|
'blank_line_before_statement' => [
|
||||||
|
'statements' => [
|
||||||
|
'declare',
|
||||||
|
],
|
||||||
|
],
|
||||||
|
'general_phpdoc_annotation_remove' => [
|
||||||
|
'annotations' => [
|
||||||
|
'author'
|
||||||
|
],
|
||||||
|
],
|
||||||
|
'ordered_imports' => [
|
||||||
|
'imports_order' => [
|
||||||
|
'class', 'function', 'const',
|
||||||
|
],
|
||||||
|
'sort_algorithm' => 'alpha',
|
||||||
|
],
|
||||||
|
'single_line_comment_style' => [
|
||||||
|
'comment_types' => [
|
||||||
|
],
|
||||||
|
],
|
||||||
|
'yoda_style' => [
|
||||||
|
'always_move_variable' => false,
|
||||||
|
'equal' => false,
|
||||||
|
'identical' => false,
|
||||||
|
],
|
||||||
|
'phpdoc_align' => [
|
||||||
|
'align' => 'left',
|
||||||
|
],
|
||||||
|
'multiline_whitespace_before_semicolons' => [
|
||||||
|
'strategy' => 'no_multi_line',
|
||||||
|
],
|
||||||
|
'constant_case' => [
|
||||||
|
'case' => 'lower',
|
||||||
|
],
|
||||||
|
'global_namespace_import' => [
|
||||||
|
'import_classes' => true,
|
||||||
|
'import_constants' => true,
|
||||||
|
'import_functions' => true,
|
||||||
|
],
|
||||||
|
'class_attributes_separation' => true,
|
||||||
|
'combine_consecutive_unsets' => true,
|
||||||
|
'declare_strict_types' => true,
|
||||||
|
'linebreak_after_opening_tag' => true,
|
||||||
|
'lowercase_static_reference' => true,
|
||||||
|
'no_useless_else' => true,
|
||||||
|
'no_unused_imports' => true,
|
||||||
|
'not_operator_with_successor_space' => true,
|
||||||
|
'not_operator_with_space' => false,
|
||||||
|
'ordered_class_elements' => true,
|
||||||
|
'php_unit_strict' => false,
|
||||||
|
'phpdoc_separation' => false,
|
||||||
|
'single_quote' => true,
|
||||||
|
'standardize_not_equals' => true,
|
||||||
|
'multiline_comment_opening_closing' => true,
|
||||||
|
'single_line_empty_body' => false,
|
||||||
|
])
|
||||||
|
->setFinder(
|
||||||
|
PhpCsFixer\Finder::create()
|
||||||
|
->exclude('vendor')
|
||||||
|
->in(__DIR__)
|
||||||
|
)
|
||||||
|
->setUsingCache(false);
|
||||||
6
vendor/hyperf/engine/.phpstorm.meta.php
vendored
Normal file
6
vendor/hyperf/engine/.phpstorm.meta.php
vendored
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace PHPSTORM_META {
|
||||||
|
// Reflect
|
||||||
|
override(\Psr\Container\ContainerInterface::get(0), map('@'));
|
||||||
|
}
|
||||||
44
vendor/hyperf/engine/Dockerfile
vendored
Normal file
44
vendor/hyperf/engine/Dockerfile
vendored
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
# Default Dockerfile
|
||||||
|
#
|
||||||
|
# @link https://www.hyperf.io
|
||||||
|
# @document https://hyperf.wiki
|
||||||
|
# @contact group@hyperf.io
|
||||||
|
# @license https://github.com/hyperf-cloud/hyperf/blob/master/LICENSE
|
||||||
|
|
||||||
|
ARG PHP_VERSION
|
||||||
|
ARG ALPINE_VERSION
|
||||||
|
|
||||||
|
FROM hyperf/hyperf:${PHP_VERSION}-alpine-${ALPINE_VERSION}-swoole
|
||||||
|
LABEL maintainer="Hyperf Developers <group@hyperf.io>" version="1.0" license="MIT" app.name="Hyperf"
|
||||||
|
|
||||||
|
ARG timezone
|
||||||
|
ARG PHP_VERSION
|
||||||
|
|
||||||
|
ENV TIMEZONE=${timezone:-"Asia/Shanghai"}
|
||||||
|
ENV COMPOSER_ROOT_VERSION="v2.0.0"
|
||||||
|
|
||||||
|
# update
|
||||||
|
RUN set -ex \
|
||||||
|
# show php version and extensions
|
||||||
|
&& php -v \
|
||||||
|
&& php -m \
|
||||||
|
&& php --ri swoole \
|
||||||
|
# ---------- some config ----------
|
||||||
|
&& cd /etc/php* \
|
||||||
|
# - config PHP
|
||||||
|
&& { \
|
||||||
|
echo "upload_max_filesize=128M"; \
|
||||||
|
echo "post_max_size=128M"; \
|
||||||
|
echo "memory_limit=1G"; \
|
||||||
|
echo "date.timezone=${TIMEZONE}"; \
|
||||||
|
} | tee conf.d/99_overrides.ini \
|
||||||
|
# - config timezone
|
||||||
|
&& ln -sf /usr/share/zoneinfo/${TIMEZONE} /etc/localtime \
|
||||||
|
&& echo "${TIMEZONE}" > /etc/timezone \
|
||||||
|
# ---------- clear works ----------
|
||||||
|
&& rm -rf /var/cache/apk/* /tmp/* /usr/share/man \
|
||||||
|
&& echo -e "\033[42;37m Build Completed :).\033[0m\n"
|
||||||
|
|
||||||
|
WORKDIR /opt/www
|
||||||
|
|
||||||
|
COPY . /opt/www
|
||||||
7
vendor/hyperf/engine/README.md
vendored
Normal file
7
vendor/hyperf/engine/README.md
vendored
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# Swoole Engine
|
||||||
|
|
||||||
|
[](https://github.com/hyperf/engine/actions/workflows/test.yml)
|
||||||
|
|
||||||
|
```
|
||||||
|
composer require hyperf/engine
|
||||||
|
```
|
||||||
66
vendor/hyperf/engine/composer.json
vendored
Normal file
66
vendor/hyperf/engine/composer.json
vendored
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
{
|
||||||
|
"name": "hyperf/engine",
|
||||||
|
"type": "library",
|
||||||
|
"license": "MIT",
|
||||||
|
"keywords": [
|
||||||
|
"php",
|
||||||
|
"hyperf",
|
||||||
|
"engine",
|
||||||
|
"swoole"
|
||||||
|
],
|
||||||
|
"description": "Coroutine engine provided by swoole.",
|
||||||
|
"autoload": {
|
||||||
|
"psr-4": {
|
||||||
|
"Hyperf\\Engine\\": "src/"
|
||||||
|
},
|
||||||
|
"files": [
|
||||||
|
"src/Functions.php"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"autoload-dev": {
|
||||||
|
"psr-4": {
|
||||||
|
"HyperfTest\\": "tests"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"require": {
|
||||||
|
"php": ">=8.0",
|
||||||
|
"hyperf/engine-contract": "~1.13.0"
|
||||||
|
},
|
||||||
|
"require-dev": {
|
||||||
|
"friendsofphp/php-cs-fixer": "^3.0",
|
||||||
|
"hyperf/guzzle": "^3.0",
|
||||||
|
"hyperf/http-message": "^3.0",
|
||||||
|
"mockery/mockery": "^1.5",
|
||||||
|
"phpstan/phpstan": "^1.0",
|
||||||
|
"phpunit/phpunit": "^9.4",
|
||||||
|
"swoole/ide-helper": "5.*"
|
||||||
|
},
|
||||||
|
"suggest": {
|
||||||
|
"ext-sockets": "*",
|
||||||
|
"ext-swoole": ">=5.0",
|
||||||
|
"psr/http-message": "Required to use WebSocket Frame.",
|
||||||
|
"hyperf/http-message": "Required to use ResponseEmitter."
|
||||||
|
},
|
||||||
|
"conflict": {
|
||||||
|
"ext-swoole": "<5.0"
|
||||||
|
},
|
||||||
|
"minimum-stability": "dev",
|
||||||
|
"prefer-stable": true,
|
||||||
|
"config": {
|
||||||
|
"optimize-autoloader": true,
|
||||||
|
"sort-packages": true
|
||||||
|
},
|
||||||
|
"extra": {
|
||||||
|
"branch-alias": {
|
||||||
|
"dev-master": "2.14-dev"
|
||||||
|
},
|
||||||
|
"hyperf": {
|
||||||
|
"config": "Hyperf\\Engine\\ConfigProvider"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"scripts": {
|
||||||
|
"test": "phpunit -c phpunit.xml --colors=always",
|
||||||
|
"analyse": "phpstan analyse --memory-limit 1024M -l 0 ./src",
|
||||||
|
"cs-fix": "php-cs-fixer fix $1"
|
||||||
|
}
|
||||||
|
}
|
||||||
15
vendor/hyperf/engine/phpunit.xml
vendored
Normal file
15
vendor/hyperf/engine/phpunit.xml
vendored
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<phpunit bootstrap="tests/bootstrap.php"
|
||||||
|
backupGlobals="false"
|
||||||
|
backupStaticAttributes="false"
|
||||||
|
verbose="true"
|
||||||
|
colors="true"
|
||||||
|
convertErrorsToExceptions="true"
|
||||||
|
convertNoticesToExceptions="true"
|
||||||
|
convertWarningsToExceptions="true"
|
||||||
|
processIsolation="false"
|
||||||
|
stopOnFailure="false">
|
||||||
|
<testsuite name="Testsuite">
|
||||||
|
<directory>./tests/</directory>
|
||||||
|
</testsuite>
|
||||||
|
</phpunit>
|
||||||
29
vendor/hyperf/engine/src/Barrier.php
vendored
Normal file
29
vendor/hyperf/engine/src/Barrier.php
vendored
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine;
|
||||||
|
|
||||||
|
use Hyperf\Engine\Contract\BarrierInterface;
|
||||||
|
use Swoole\Coroutine\Barrier as SwooleBarrier;
|
||||||
|
|
||||||
|
class Barrier implements BarrierInterface
|
||||||
|
{
|
||||||
|
public static function wait(object &$barrier, int $timeout = -1): void
|
||||||
|
{
|
||||||
|
SwooleBarrier::wait($barrier, $timeout);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function create(): object
|
||||||
|
{
|
||||||
|
return SwooleBarrier::make();
|
||||||
|
}
|
||||||
|
}
|
||||||
94
vendor/hyperf/engine/src/Channel.php
vendored
Normal file
94
vendor/hyperf/engine/src/Channel.php
vendored
Normal file
@ -0,0 +1,94 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine;
|
||||||
|
|
||||||
|
use Hyperf\Engine\Contract\ChannelInterface;
|
||||||
|
use Hyperf\Engine\Exception\RuntimeException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @template TValue of mixed
|
||||||
|
* @implements ChannelInterface
|
||||||
|
*/
|
||||||
|
class Channel extends \Swoole\Coroutine\Channel implements ChannelInterface
|
||||||
|
{
|
||||||
|
protected bool $closed = false;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param TValue $data
|
||||||
|
* @param float|int $timeout seconds [optional] = -1
|
||||||
|
*/
|
||||||
|
public function push(mixed $data, float $timeout = -1): bool
|
||||||
|
{
|
||||||
|
return parent::push($data, $timeout);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param float $timeout seconds [optional] = -1
|
||||||
|
* @return false|TValue when pop failed, return false
|
||||||
|
*/
|
||||||
|
public function pop(float $timeout = -1): mixed
|
||||||
|
{
|
||||||
|
return parent::pop($timeout);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getCapacity(): int
|
||||||
|
{
|
||||||
|
return $this->capacity;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getLength(): int
|
||||||
|
{
|
||||||
|
return $this->length();
|
||||||
|
}
|
||||||
|
|
||||||
|
public function isAvailable(): bool
|
||||||
|
{
|
||||||
|
return ! $this->isClosing();
|
||||||
|
}
|
||||||
|
|
||||||
|
public function close(): bool
|
||||||
|
{
|
||||||
|
$this->closed = true;
|
||||||
|
return parent::close();
|
||||||
|
}
|
||||||
|
|
||||||
|
public function hasProducers(): bool
|
||||||
|
{
|
||||||
|
throw new RuntimeException('Not supported.');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function hasConsumers(): bool
|
||||||
|
{
|
||||||
|
throw new RuntimeException('Not supported.');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function isReadable(): bool
|
||||||
|
{
|
||||||
|
throw new RuntimeException('Not supported.');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function isWritable(): bool
|
||||||
|
{
|
||||||
|
throw new RuntimeException('Not supported.');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function isClosing(): bool
|
||||||
|
{
|
||||||
|
return $this->closed || $this->errCode === SWOOLE_CHANNEL_CLOSED;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function isTimeout(): bool
|
||||||
|
{
|
||||||
|
return ! $this->closed && $this->errCode === SWOOLE_CHANNEL_TIMEOUT;
|
||||||
|
}
|
||||||
|
}
|
||||||
28
vendor/hyperf/engine/src/ConfigProvider.php
vendored
Normal file
28
vendor/hyperf/engine/src/ConfigProvider.php
vendored
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine;
|
||||||
|
|
||||||
|
use Hyperf\Engine\Contract\Socket\SocketFactoryInterface;
|
||||||
|
use Hyperf\Engine\Socket\SocketFactory;
|
||||||
|
|
||||||
|
class ConfigProvider
|
||||||
|
{
|
||||||
|
public function __invoke(): array
|
||||||
|
{
|
||||||
|
return [
|
||||||
|
'dependencies' => [
|
||||||
|
SocketFactoryInterface::class => SocketFactory::class,
|
||||||
|
],
|
||||||
|
];
|
||||||
|
}
|
||||||
|
}
|
||||||
26
vendor/hyperf/engine/src/Constant.php
vendored
Normal file
26
vendor/hyperf/engine/src/Constant.php
vendored
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine;
|
||||||
|
|
||||||
|
use Swoole\Coroutine\Http\Server as HttpServer;
|
||||||
|
use Swoole\Coroutine\Server;
|
||||||
|
|
||||||
|
class Constant
|
||||||
|
{
|
||||||
|
public const ENGINE = 'Swoole';
|
||||||
|
|
||||||
|
public static function isCoroutineServer($server): bool
|
||||||
|
{
|
||||||
|
return $server instanceof Server || $server instanceof HttpServer;
|
||||||
|
}
|
||||||
|
}
|
||||||
28
vendor/hyperf/engine/src/Constant/SocketType.php
vendored
Normal file
28
vendor/hyperf/engine/src/Constant/SocketType.php
vendored
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
/**
|
||||||
|
* This file is part of Hyperf.
|
||||||
|
*
|
||||||
|
* @link https://www.hyperf.io
|
||||||
|
* @document https://hyperf.wiki
|
||||||
|
* @contact group@hyperf.io
|
||||||
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Hyperf\Engine\Constant;
|
||||||
|
|
||||||
|
class SocketType
|
||||||
|
{
|
||||||
|
public const TCP = SWOOLE_SOCK_TCP;
|
||||||
|
|
||||||
|
public const TCP6 = SWOOLE_SOCK_TCP6;
|
||||||
|
|
||||||
|
public const UDP = SWOOLE_SOCK_UDP;
|
||||||
|
|
||||||
|
public const UDP6 = SWOOLE_SOCK_UDP6;
|
||||||
|
|
||||||
|
public const UNIX_STREAM = SWOOLE_SOCK_UNIX_STREAM;
|
||||||
|
|
||||||
|
public const UNIX_DGRAM = SWOOLE_SOCK_UNIX_DGRAM;
|
||||||
|
}
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user