X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=include%2Fmemcached.hh;h=82fbd3ce15badafbd49a643d8e509d40e4abbe14;hb=95513a66427c064a71845ae0643dfb28e6732bac;hp=a359488d72d7cf0845c6cca6052deb89fd2cc119;hpb=9cfc3faa3f8471083350cecce7e49114ce827c89;p=awesomized%2Flibmemcached diff --git a/include/memcached.hh b/include/memcached.hh index a359488d..82fbd3ce 100644 --- a/include/memcached.hh +++ b/include/memcached.hh @@ -3,6 +3,7 @@ #endif #include +#include #include class Memcached @@ -11,13 +12,91 @@ class Memcached public: - Memcached(); - Memcached(memcached_st *clone); + Memcached() + { + memcached_create(&memc); + } + + Memcached(memcached_st *clone) + { + WATCHPOINT; + memcached_clone(&memc, clone); + WATCHPOINT; + } + + char *get(char *key, size_t *value_length) + { + uint32_t flags; + memcached_return rc; + + return memcached_get(&memc, key, strlen(key), + value_length, &flags, &rc); + } + + char *get_by_key(char *key, char *master_key, size_t *value_length) + { + uint32_t flags; + memcached_return rc; + + return memcached_get_by_key(&memc, key, strlen(key), master_key, strlen(master_key), + value_length, &flags, &rc); + } + + memcached_return mget(char **keys, size_t *key_length, unsigned int number_of_keys) + { + + return memcached_mget(&memc, keys, key_length, number_of_keys); + } + + memcached_return set(char *key, char *value, size_t value_length) + { + return memcached_set(&memc, key, strlen(key), + value, value_length, + (time_t)0, (uint32_t)0); + } + + memcached_return set_by_key(char *master_key, char *key, char *value, size_t value_length) + { + return memcached_set_by_key(&memc, master_key, strlen(master_key), + key, strlen(key), + value, value_length, + (time_t)0, + (uint32_t)0 ); + } + + + memcached_return add(char *key, char *value, size_t value_length) + { + return memcached_add(&memc, key, strlen(key), + value, value_length, + (time_t)0, (uint32_t)0); + } + + memcached_return replace(char *key, char *value, size_t value_length) + { + return memcached_replace(&memc, key, strlen(key), + value, value_length, + (time_t)0, (uint32_t)0); + } + + memcached_return prepend(char *key, char *value, size_t value_length) + { + return memcached_prepend(&memc, key, strlen(key), + value, value_length, + (time_t)0, + (uint32_t)0); + } + + + memcached_return append(char *key, char *value, size_t value_length) + { + return memcached_append(&memc, key, strlen(key), + value, value_length, + (time_t)0, + (uint32_t)0); + } ~Memcached() { memcached_free(&memc); } - - char *get(char *key, size_t *value_length); - memcached_return set(char *key, char *value, size_t value_length); };