Proyectos de Subversion Moodle

Rev

| Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1441 ariadna 1
<?php
2
 
3
declare(strict_types=1);
4
 
5
namespace Slim\Factory\Psr17;
6
 
7
use Slim\Interfaces\ServerRequestCreatorInterface;
8
 
9
class NyholmPsr17Factory extends Psr17Factory
10
{
11
    protected static string $responseFactoryClass = 'Nyholm\Psr7\Factory\Psr17Factory';
12
    protected static string $streamFactoryClass = 'Nyholm\Psr7\Factory\Psr17Factory';
13
    protected static string $serverRequestCreatorClass = 'Nyholm\Psr7Server\ServerRequestCreator';
14
    protected static string $serverRequestCreatorMethod = 'fromGlobals';
15
 
16
    /**
17
     * {@inheritdoc}
18
     */
19
    public static function getServerRequestCreator(): ServerRequestCreatorInterface
20
    {
21
        /*
22
         * Nyholm Psr17Factory implements all factories in one unified
23
         * factory which implements all of the PSR-17 factory interfaces
24
         */
25
        $psr17Factory = new static::$responseFactoryClass();
26
 
27
        $serverRequestCreator = new static::$serverRequestCreatorClass(
28
            $psr17Factory,
29
            $psr17Factory,
30
            $psr17Factory,
31
            $psr17Factory
32
        );
33
 
34
        return new ServerRequestCreator($serverRequestCreator, static::$serverRequestCreatorMethod);
35
    }
36
}