MCPcopy Create free account
hub / github.com/acl-dev/acl / renamenx

Method renamenx

lib_acl_cpp/src/redis/redis_key.cpp:380–410  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

378}
379
380int redis_key::renamenx(const char* key, const char* newkey)
381{
382 const char* argv[3];
383 size_t lens[3];
384
385 argv[0] = "RENAMENX";
386 lens[0] = sizeof("RENAMENX") - 1;
387
388 argv[1] = key;
389 lens[1] = strlen(key);
390
391 argv[2] = newkey;
392 lens[2] = strlen(newkey);
393
394 build_request(3, argv, lens);
395 const redis_result* result = run();
396 if (result == NULL) {
397 logger_error("result NULL, key=%s, newkey=%s", key, newkey);
398 return -2;
399 }
400
401 if (result->get_type() == REDIS_RESULT_INTEGER)
402 return result->get_integer();
403 else if (result->get_type() == REDIS_RESULT_ERROR)
404 return -1;
405 else {
406 logger_error("invalid type=%d, key=%s, newkey=%s",
407 result->get_type(), key, newkey);
408 return -3;
409 }
410}
411
412bool redis_key::restore(const char* key, const char* value, size_t len,
413 int nttl, bool replace /* = false */)

Callers

nothing calls this directly

Calls 4

build_requestFunction · 0.50
runFunction · 0.50
get_typeMethod · 0.45
get_integerMethod · 0.45

Tested by

no test coverage detected