Skip to content

Commit

Permalink
Update for Responder → RequestHandler
Browse files Browse the repository at this point in the history
  • Loading branch information
trowski committed Mar 19, 2018
1 parent 102c607 commit ef6cfa3
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 12 deletions.
10 changes: 5 additions & 5 deletions src/SessionMiddleware.php
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
use Amp\Http\Cookie\ResponseCookie;
use Amp\Http\Server\Middleware;
use Amp\Http\Server\Request;
use Amp\Http\Server\Responder;
use Amp\Http\Server\RequestHandler;
use Amp\Http\Server\Response;
use Amp\Promise;
use function Amp\call;
Expand Down Expand Up @@ -40,11 +40,11 @@ public function __construct(

/**
* @param Request $request
* @param Responder $responder Request responder.
* @param RequestHandler $responder Request responder.
*
* @return Promise<\Amp\Http\Server\Response>
*/
public function process(Request $request, Responder $responder): Promise {
public function handleRequest(Request $request, RequestHandler $responder): Promise {
return call(function () use ($request, $responder) {
$cookie = $request->getCookie($this->cookieName);

Expand All @@ -54,15 +54,15 @@ public function process(Request $request, Responder $responder): Promise {
$request->setAttribute(Session::class, $session);

try {
$response = yield $responder->respond($request);
$response = yield $responder->handleRequest($request);
} finally {
if ($session->isLocked()) {
$session->unlock();
}
}

if (!$response instanceof Response) {
throw new \TypeError("Responder must resolve to an instance of " . Response::class);
throw new \TypeError("Request handler must resolve to an instance of " . Response::class);
}

$id = $session->getId();
Expand Down
15 changes: 8 additions & 7 deletions test/DriverTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

namespace Amp\Http\Server\Session\Test;

use Amp\ByteStream\Message;
use Amp\ByteStream\Payload;
use Amp\Http\Cookie\ResponseCookie;
use Amp\Http\Server;
use Amp\Http\Server\Session\Session;
Expand All @@ -16,12 +16,12 @@ abstract protected function createDriver(): Server\Session\Driver;

protected function respondWithSession(
Server\Session\Driver $driver,
callable $responder,
callable $requestHandler,
string $sessionId = null
): Server\Response {
return wait(call(function () use ($driver, $responder, $sessionId) {
$responder = Server\Middleware\stack(
new Server\CallableResponder($responder),
return wait(call(function () use ($driver, $requestHandler, $sessionId) {
$requestHandler = Server\Middleware\stack(
new Server\RequestHandler\CallableRequestHandler($requestHandler),
new Server\Session\SessionMiddleware($driver)
);

Expand All @@ -31,7 +31,7 @@ protected function respondWithSession(
$request->setHeader('cookie', Server\Session\SessionMiddleware::DEFAULT_COOKIE_NAME . '=' . $sessionId);
}

return $responder->respond($request);
return $requestHandler->handleRequest($request);
}));
}

Expand Down Expand Up @@ -82,6 +82,7 @@ public function testPersistsData() {
return new Server\Response($session->get("foo"));
}, $sessionCookie->getValue());

$this->assertSame("bar", wait(new Message($response->getBody())));
$payload = new Payload($response->getBody());
$this->assertSame("bar", wait($payload->buffer()));
}
}

0 comments on commit ef6cfa3

Please sign in to comment.