# packeta/2.1/src/Packetery/Module/HttpRequestFactory.php

Packeta, version 2.1. 48 lines.

- Page: https://pluginprobe.com/plugins/packeta/2.1/code/src/Packetery/Module/HttpRequestFactory.php
- Raw: https://pluginprobe.com/plugins/packeta/2.1/raw/src/Packetery/Module/HttpRequestFactory.php
- Modified: 2025-04-03T13:11:36+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/packeta/2.1/code/src/Packetery/Module/HttpRequestFactory.php#L10-L20`.

```php
<?php
declare(strict_types=1);

namespace Packetery\Module;

use Packetery\Nette\Http\Request;
use Packetery\Nette\Http\RequestFactory;
use Packetery\Nette\Http\UrlScript;

final class HttpRequestFactory {
	/**
	 * @var bool
	 */
	private $consoleMode;

	/**
	 * @var bool
	 */
	private $binary;

	/**
	 * @var RequestFactory
	 */
	private $originalHttpRequestFactory;

	public function __construct(
		bool $consoleMode,
		bool $binary,
		RequestFactory $originalHttpRequestFactory
	) {
		$this->consoleMode                = $consoleMode;
		$this->binary                     = $binary;
		$this->originalHttpRequestFactory = $originalHttpRequestFactory;
	}

	public function createHttpRequest(): Request {
		if ( $this->consoleMode ) {
			$urlScript = new UrlScript( '/', '/' );

			return new Request( $urlScript );
		}

		$this->originalHttpRequestFactory->setBinary( $this->binary );

		return $this->originalHttpRequestFactory->fromGlobals();
	}
}

```
