function afterFilterHandler($request, stdClass $context)
{
$stream = new BytesIO($request);
try {
switch ($stream->getc()) {
case Tags::TagCall:
$data = $this->doInvoke($stream, $context);
$stream->close();
return $data;
case Tags::TagEnd:
$stream->close();
return Future\value($this->doFunctionList());
default:
throw new Exception("Wrong Request: \r\n{$request}");
}
} catch (Exception $e) {
$stream->close();
return Future\error($e);
}
}