Proyectos de Subversion Moodle

Rev

| Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 efrain 1
<?php
2
namespace Aws\S3\Crypto;
3
 
4
use Aws\AwsClientInterface;
5
use Aws\Middleware;
6
use Psr\Http\Message\RequestInterface;
7
 
8
trait UserAgentTrait
9
{
10
    private function appendUserAgent(AwsClientInterface $client, $agentString)
11
    {
12
        $list = $client->getHandlerList();
13
        $list->appendBuild(Middleware::mapRequest(
14
            function(RequestInterface $req) use ($agentString) {
15
                if (!empty($req->getHeader('User-Agent'))
16
                    && !empty($req->getHeader('User-Agent')[0])
17
                ) {
18
                    $userAgent = $req->getHeader('User-Agent')[0];
19
                    if (strpos($userAgent, $agentString) === false) {
20
                        $userAgent .= " {$agentString}";
21
                    };
22
                } else {
23
                    $userAgent = $agentString;
24
                }
25
 
26
                $req =  $req->withHeader('User-Agent', $userAgent);
27
                return $req;
28
            }
29
        ));
30
    }
31
}