| 215 | } |
| 216 | |
| 217 | void KeeperHTTPStorageHandler::performZooKeeperSetRequest( |
| 218 | const std::string & storage_path, HTTPServerRequest & request, HTTPServerResponse & response) const |
| 219 | { |
| 220 | const auto maybe_request_version = getVersionFromRequest(request); |
| 221 | if (!maybe_request_version.has_value()) |
| 222 | { |
| 223 | response.setStatusAndReason(Poco::Net::HTTPResponse::HTTP_BAD_REQUEST, "Version parameter is not set or invalid."); |
| 224 | *response.send() << "Version parameter is not set or invalid for set request.\n"; |
| 225 | return; |
| 226 | } |
| 227 | |
| 228 | const auto error = keeper_client->get()->trySet(storage_path, getRawBytesFromRequest(request, keeper_context), maybe_request_version.value()); |
| 229 | |
| 230 | if (setErrorResponseForZKCode(error, response)) |
| 231 | return; |
| 232 | |
| 233 | response.setStatus(Poco::Net::HTTPResponse::HTTP_OK); |
| 234 | response.setContentType("text/plain"); |
| 235 | *response.send() << "OK\n"; |
| 236 | } |
| 237 | |
| 238 | void KeeperHTTPStorageHandler::performZooKeeperCreateRequest( |
| 239 | const std::string & storage_path, HTTPServerRequest & request, HTTPServerResponse & response) const |
nothing calls this directly
no test coverage detected