class HandlerProvider implements Handler {

    @Override
    public Promise<Response, NeverThrowsException> handle(Context context, Request request) {
        if (handler == null) {
            handler = InjectorHolder.getInstance(key);
        }
        return handler.handle(context, request);
    }

      HandlerProvider(Key<? extends Handler> key);

}