summaryrefslogtreecommitdiff
path: root/vendor/symfony/http-kernel/Client.php
diff options
context:
space:
mode:
authorGreg Roach <fisharebest@webtrees.net>2019-06-03 14:19:10 +0100
committerGreg Roach <fisharebest@webtrees.net>2019-06-03 14:19:10 +0100
commit69c8d4f5c90cef75da102f92e4e992d03a8f1cd8 (patch)
tree4f956848961891482b64ee2cd5c8d7290936e354 /vendor/symfony/http-kernel/Client.php
parent425f99bc29ab9e477e5407b5c86da5c85ba47461 (diff)
downloadwebtrees-69c8d4f5c90cef75da102f92e4e992d03a8f1cd8.tar.gz
webtrees-69c8d4f5c90cef75da102f92e4e992d03a8f1cd8.tar.bz2
webtrees-69c8d4f5c90cef75da102f92e4e992d03a8f1cd8.zip
:Update vendor dependencies
Diffstat (limited to 'vendor/symfony/http-kernel/Client.php')
-rw-r--r--vendor/symfony/http-kernel/Client.php190
1 files changed, 2 insertions, 188 deletions
diff --git a/vendor/symfony/http-kernel/Client.php b/vendor/symfony/http-kernel/Client.php
index 51b853c6e1..ed1e1382ea 100644
--- a/vendor/symfony/http-kernel/Client.php
+++ b/vendor/symfony/http-kernel/Client.php
@@ -11,194 +11,8 @@
namespace Symfony\Component\HttpKernel;
-use Symfony\Component\BrowserKit\Client as BaseClient;
-use Symfony\Component\BrowserKit\CookieJar;
-use Symfony\Component\BrowserKit\History;
-use Symfony\Component\BrowserKit\Request as DomRequest;
-use Symfony\Component\BrowserKit\Response as DomResponse;
-use Symfony\Component\HttpFoundation\File\UploadedFile;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
+@trigger_error(sprintf('The "%s" class is deprecated since Symfony 4.3, use "%s" instead.', Client::class, HttpKernelBrowser::class), E_USER_DEPRECATED);
-/**
- * Client simulates a browser and makes requests to a Kernel object.
- *
- * @author Fabien Potencier <fabien@symfony.com>
- *
- * @method Request getRequest() A Request instance
- * @method Response getResponse() A Response instance
- */
-class Client extends BaseClient
+class Client extends HttpKernelBrowser
{
- protected $kernel;
- private $catchExceptions = true;
-
- /**
- * @param HttpKernelInterface $kernel An HttpKernel instance
- * @param array $server The server parameters (equivalent of $_SERVER)
- * @param History $history A History instance to store the browser history
- * @param CookieJar $cookieJar A CookieJar instance to store the cookies
- */
- public function __construct(HttpKernelInterface $kernel, array $server = [], History $history = null, CookieJar $cookieJar = null)
- {
- // These class properties must be set before calling the parent constructor, as it may depend on it.
- $this->kernel = $kernel;
- $this->followRedirects = false;
-
- parent::__construct($server, $history, $cookieJar);
- }
-
- /**
- * Sets whether to catch exceptions when the kernel is handling a request.
- *
- * @param bool $catchExceptions Whether to catch exceptions
- */
- public function catchExceptions($catchExceptions)
- {
- $this->catchExceptions = $catchExceptions;
- }
-
- /**
- * Makes a request.
- *
- * @return Response A Response instance
- */
- protected function doRequest($request)
- {
- $response = $this->kernel->handle($request, HttpKernelInterface::MASTER_REQUEST, $this->catchExceptions);
-
- if ($this->kernel instanceof TerminableInterface) {
- $this->kernel->terminate($request, $response);
- }
-
- return $response;
- }
-
- /**
- * Returns the script to execute when the request must be insulated.
- *
- * @return string
- */
- protected function getScript($request)
- {
- $kernel = var_export(serialize($this->kernel), true);
- $request = var_export(serialize($request), true);
-
- $errorReporting = error_reporting();
-
- $requires = '';
- foreach (get_declared_classes() as $class) {
- if (0 === strpos($class, 'ComposerAutoloaderInit')) {
- $r = new \ReflectionClass($class);
- $file = \dirname(\dirname($r->getFileName())).'/autoload.php';
- if (file_exists($file)) {
- $requires .= 'require_once '.var_export($file, true).";\n";
- }
- }
- }
-
- if (!$requires) {
- throw new \RuntimeException('Composer autoloader not found.');
- }
-
- $code = <<<EOF
-<?php
-
-error_reporting($errorReporting);
-
-$requires
-
-\$kernel = unserialize($kernel);
-\$request = unserialize($request);
-EOF;
-
- return $code.$this->getHandleScript();
- }
-
- protected function getHandleScript()
- {
- return <<<'EOF'
-$response = $kernel->handle($request);
-
-if ($kernel instanceof Symfony\Component\HttpKernel\TerminableInterface) {
- $kernel->terminate($request, $response);
-}
-
-echo serialize($response);
-EOF;
- }
-
- /**
- * Converts the BrowserKit request to a HttpKernel request.
- *
- * @return Request A Request instance
- */
- protected function filterRequest(DomRequest $request)
- {
- $httpRequest = Request::create($request->getUri(), $request->getMethod(), $request->getParameters(), $request->getCookies(), $request->getFiles(), $request->getServer(), $request->getContent());
-
- foreach ($this->filterFiles($httpRequest->files->all()) as $key => $value) {
- $httpRequest->files->set($key, $value);
- }
-
- return $httpRequest;
- }
-
- /**
- * Filters an array of files.
- *
- * This method created test instances of UploadedFile so that the move()
- * method can be called on those instances.
- *
- * If the size of a file is greater than the allowed size (from php.ini) then
- * an invalid UploadedFile is returned with an error set to UPLOAD_ERR_INI_SIZE.
- *
- * @see UploadedFile
- *
- * @return array An array with all uploaded files marked as already moved
- */
- protected function filterFiles(array $files)
- {
- $filtered = [];
- foreach ($files as $key => $value) {
- if (\is_array($value)) {
- $filtered[$key] = $this->filterFiles($value);
- } elseif ($value instanceof UploadedFile) {
- if ($value->isValid() && $value->getSize() > UploadedFile::getMaxFilesize()) {
- $filtered[$key] = new UploadedFile(
- '',
- $value->getClientOriginalName(),
- $value->getClientMimeType(),
- UPLOAD_ERR_INI_SIZE,
- true
- );
- } else {
- $filtered[$key] = new UploadedFile(
- $value->getPathname(),
- $value->getClientOriginalName(),
- $value->getClientMimeType(),
- $value->getError(),
- true
- );
- }
- }
- }
-
- return $filtered;
- }
-
- /**
- * Converts the HttpKernel response to a BrowserKit response.
- *
- * @return DomResponse A DomResponse instance
- */
- protected function filterResponse($response)
- {
- // this is needed to support StreamedResponse
- ob_start();
- $response->sendContent();
- $content = ob_get_clean();
-
- return new DomResponse($content, $response->getStatusCode(), $response->headers->all());
- }
}