@BeforeClass
  public static void initClass() throws Exception {
    _connect = new CyclicBarrier(2);

    _server = new Server();
    _connector = new ServerConnector(_server);
    _statistics = new ConnectorStatistics();
    _connector.addBean(_statistics);
    _server.addConnector(_connector);

    HandlerWrapper wrapper =
        new HandlerWrapper() {
          @Override
          public void handle(
              String path,
              Request request,
              HttpServletRequest httpRequest,
              HttpServletResponse httpResponse)
              throws IOException, ServletException {
            try {
              _connect.await();
            } catch (Exception ex) {
              LOG.debug(ex);
            } finally {
              super.handle(path, request, httpRequest, httpResponse);
            }
          }
        };
    _server.setHandler(wrapper);

    Handler handler =
        new AbstractHandler() {
          @Override
          public void handle(
              String target,
              Request baseRequest,
              HttpServletRequest request,
              HttpServletResponse response)
              throws IOException, ServletException {
            try {
              Thread.sleep(1);
            } catch (Exception e) {
            }
            baseRequest.setHandled(true);
            PrintWriter out = response.getWriter();
            out.write("Server response\n");
            out.close();

            response.setStatus(HttpServletResponse.SC_OK);
          }
        };
    wrapper.setHandler(handler);

    _server.start();
  }