X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=example%2Finterface_v0.cc;h=cf53dded75c22283b86c3772cfaac735063de42f;hb=3ffc968aaf182bf1ff1e18157c7bde2bdb41668d;hp=cc2f17d274fb9a71df32c87017912173bc51db9d;hpb=357b107e59d9918a0f3bdd7e4aad9493c70e03f1;p=awesomized%2Flibmemcached diff --git a/example/interface_v0.cc b/example/interface_v0.cc index cc2f17d2..cf53dded 100644 --- a/example/interface_v0.cc +++ b/example/interface_v0.cc @@ -5,21 +5,29 @@ * specification next to your coffee ;-) */ -#include "config.h" +#include "mem_config.h" -#include +#include #include -#include -#include +#include +#if HAVE_UNISTD_H +# include +#endif #include -#include -#include -#include +#include +#include +#include -#include +#include #include #include "example/memcached_light.h" #include "example/storage.h" +#include "util/log.hpp" + + +using namespace datadifferential; + +static util::log_info_st *log_file= NULL; static protocol_binary_response_status noop_command_handler(const void *cookie, protocol_binary_request_header *header, @@ -121,18 +129,22 @@ static protocol_binary_response_status delete_command_handler(const void *cookie response.message.header.response.opcode= header->request.opcode; response.message.header.response.opaque= header->request.opaque; - if (!delete_item(key, keylen)) + if (delete_item(key, keylen) == false) { + log_file->write(util::VERBOSE_NOTICE, "%s not found: %.*s", __func__, keylen, key); response.message.header.response.status= htons(PROTOCOL_BINARY_RESPONSE_KEY_ENOENT); return response_handler(cookie, header, (protocol_binary_response_header*)&response); } else if (header->request.opcode == PROTOCOL_BINARY_CMD_DELETE) { + log_file->write(util::VERBOSE_NOTICE, "%s not found: %.*s", __func__, keylen, key); /* DELETEQ doesn't want success response */ response.message.header.response.status= htons(PROTOCOL_BINARY_RESPONSE_SUCCESS); return response_handler(cookie, header, (protocol_binary_response_header*)&response); } + log_file->write(util::VERBOSE_NOTICE, "%s deleted: %.*s", __func__, keylen, key); + return PROTOCOL_BINARY_RESPONSE_SUCCESS; } @@ -516,8 +528,10 @@ static protocol_binary_response_status stat_command_handler(const void *cookie, memcached_binary_protocol_callback_st interface_v0_impl; -void initialize_interface_v0_handler(void) +void initialize_interface_v0_handler(util::log_info_st& arg) { + log_file= &arg; + interface_v0_impl.interface_version= MEMCACHED_PROTOCOL_HANDLER_V0; interface_v0_impl.interface.v0.comcode[PROTOCOL_BINARY_CMD_GET]= get_command_handler; interface_v0_impl.interface.v0.comcode[PROTOCOL_BINARY_CMD_SET]= set_command_handler;