X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=test%2Flib%2FMemcachedCluster.hpp;h=dcda9ddd72afb30744ac70acd939ac0bad4b84b6;hb=4dbf7c03641596dd9cd080c05761d159371219d9;hp=5dbe5c2c8848b8bd3175e55e6811ff2c1758421d;hpb=d01f59eec297365fdbfeba38248245bf4e5d827a;p=awesomized%2Flibmemcached diff --git a/test/lib/MemcachedCluster.hpp b/test/lib/MemcachedCluster.hpp index 5dbe5c2c..dcda9ddd 100644 --- a/test/lib/MemcachedCluster.hpp +++ b/test/lib/MemcachedCluster.hpp @@ -1,31 +1,46 @@ +/* + +--------------------------------------------------------------------+ + | libmemcached - C/C++ Client Library for memcached | + +--------------------------------------------------------------------+ + | Redistribution and use in source and binary forms, with or without | + | modification, are permitted under the terms of the BSD license. | + | You should have received a copy of the license in a bundled file | + | named LICENSE; in case you did not receive a copy you can review | + | the terms online at: https://opensource.org/licenses/BSD-3-Clause | + +--------------------------------------------------------------------+ + | Copyright (c) 2006-2014 Brian Aker https://datadifferential.com/ | + | Copyright (c) 2020 Michael Wallner | + +--------------------------------------------------------------------+ +*/ + #pragma once #include "common.hpp" #include "Cluster.hpp" #include "ReturnMatcher.hpp" - class MemcachedCluster { public: + using behavior_t = pair; + using behaviors_t = vector; + Cluster cluster; memcached_st memc{empty_memc}; ReturnMatcher returns{&memc}; MemcachedCluster(); - explicit - MemcachedCluster(Cluster &&cluster); + explicit MemcachedCluster(Cluster &&cluster, behaviors_t to_set = {}); ~MemcachedCluster(); MemcachedCluster(const MemcachedCluster &) = delete; MemcachedCluster &operator=(const MemcachedCluster &) = delete; - MemcachedCluster(MemcachedCluster &&mc);; - MemcachedCluster &operator=(MemcachedCluster &&mc); + MemcachedCluster(MemcachedCluster &&mc) noexcept; + MemcachedCluster &operator=(MemcachedCluster &&mc) noexcept; void enableBinaryProto(bool enable = true); void enableBuffering(bool enable = true); void enableReplication(); - void enableUdp(bool enable = true); void flush(); static MemcachedCluster mixed(); @@ -37,9 +52,10 @@ public: static MemcachedCluster sasl(); #endif - void killOneServer(); + void killOneServer() const; private: + behaviors_t to_set; static const memcached_st empty_memc; void init();