コード例 #1
0
ファイル: router.php プロジェクト: estvoyage/risingsun
<?php

namespace estvoyage\risingsun\demo\http;

use estvoyage\risingsun\time, estvoyage\risingsun\bench, estvoyage\risingsun\output, estvoyage\risingsun\http\header, estvoyage\risingsun\http\method, estvoyage\risingsun\http\request, estvoyage\risingsun\http\router, estvoyage\risingsun\http\route, estvoyage\risingsun\http\route\endpoint;
require __DIR__ . '/../../vendor/autoload.php';
$stdout = new output\stdout();
$endpoint = new endpoint\blackhole();
$subRoute = new route\toUri(new route\uri\anyString(new request\data\name('foo')), $endpoint);
$uris = new route\prefilled($numberOfRoute = new route\prefilled\numberOfRoute(100), new route\prefilled\route\toUri($startRequestUri = new request\uri('/a'), $endpoint, $subRoute), new route\collection\indexed(new route\indexer\hash(), new route\collection()));
$router = new router(new route\toMethod(new method\get(), $uris), $endpoint, $endpoint);
$bench = new bench\average(new bench\total(new bench\second\micro(), new bench\loop\number(30000)));
$benchDurationFormater = new time\duration\formater\second\micro();
$requestForFirstRoute = new request\http(new method\get(), new request\uri($startRequestUri . '/firstroute'), new header\collection(), new request\data\collection());
$bench->recipientOfBenchDurationForCallableIs(function () use($router, $requestForFirstRoute) {
    $router->httpRequestIs($requestForFirstRoute);
}, new bench\formater\duration($stdout, new bench\name('East oriented first route: '), $benchDurationFormater));
$stdout->endOfLine();
$requestForLastRoute = new request\http(new method\get(), new request\uri($startRequestUri->httpRequestUriOffsetIs(new request\uri\offset($numberOfRoute->value - 1)) . '/lastroute'), new header\collection(), new request\data\collection());
$bench->recipientOfBenchDurationForCallableIs(function () use($router, $requestForLastRoute) {
    $router->httpRequestIs($requestForLastRoute);
}, new bench\formater\duration($stdout, new bench\name('East oriented last route: '), $benchDurationFormater));
$stdout->endOfLine();
$bench->recipientOfBenchDurationForCallableIs(function () use($router) {
    $router->httpRequestIs(new request\http(new method\get(), new request\uri('/' . uniqid()), new header\collection(), new request\data\collection()));
}, new bench\formater\duration($stdout, new bench\name('East oriented unknown route: '), $benchDurationFormater));
$stdout->endOfLine();
コード例 #2
0
ファイル: withLogger.php プロジェクト: estvoyage/risingsun
 function httpRequestHasEndpoint(http\request $request, http\route\endpoint $endpoint)
 {
     $this->logger->httpRouterHasEndpointForRequest($this, $endpoint, $request);
     return parent::httpRequestHasEndpoint($request, $endpoint);
 }