Refactored tests.
[awesomized/libmemcached] / include / memcached.hh
index a359488d72d7cf0845c6cca6052deb89fd2cc119..9a38187f1254722afb36647cbd424cdd0281bd97 100644 (file)
@@ -3,6 +3,7 @@
 #endif
 
 #include <memcached.h>
+#include <string.h>
 #include <stdio.h>
 
 class Memcached
@@ -11,13 +12,66 @@ 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);
+  }
+
+  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 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);
 };