| 125 | } |
| 126 | |
| 127 | void OnRequest(IRequestRef req) override { |
| 128 | if (C_) { |
| 129 | if (auto error = C_(req)) { |
| 130 | req->SendError(*error); |
| 131 | return; |
| 132 | } |
| 133 | } |
| 134 | if (!*HasLoop_) { |
| 135 | ServeRequest(LocalMap_.GetRef(), req); |
| 136 | } else { |
| 137 | RQ_->Schedule(req); |
| 138 | } |
| 139 | } |
| 140 | |
| 141 | private: |
| 142 | class TLoopFunc: public TFunc { |