kea-custom-hooks
FeM custom hooks libraries for Kea DHCP
|
A wrapper for the hiredis C interface with multi-client support. More...
#include <HiredisAdapter.hpp>
Public Types | |
using | set_reply_t = std::unique_ptr< redisReply, std::function< void(redisReply *)> > |
using | sadd_reply_t = set_reply_t |
using | get_reply_t = set_reply_t |
using | smembers_reply_t = set_reply_t |
using | timeout_t = size_t |
Public Member Functions | |
HiredisAdapter (const std::string &srv_ip="127.0.0.1", int port=REDIS_DEFAULT_PORT) | |
Initialize the adapter. More... | |
HiredisAdapter (const HiredisAdapter &)=delete | |
HiredisAdapter (HiredisAdapter &&)=default | |
virtual | ~HiredisAdapter () |
virtual bool | last_expire_has_failed () const noexcept |
Connection management | |
virtual void | connect () |
Connect to the Redis server. More... | |
virtual void | disconnect () |
virtual bool | is_connected () const noexcept |
Redis functions | |
These functions are abstractions of actual Redis functions which can also be called by using redis-cli. All functions take the same parameters as the actual Redis functions and behave the same way. The results are redisReply objects as returned by hiredis. See the hiredis documentation on information about how to interact with these objects. | |
virtual set_reply_t | set (const std::string &key, const std::string &value, const timeout_t expire=0) |
virtual sadd_reply_t | sadd (const std::string &key, const std::string &value, const timeout_t expire=0) |
virtual void | expire (const std::string &key, timeout_t expire) |
virtual get_reply_t | get (const std::string &key) |
virtual smembers_reply_t | smembers (const std::string &key) |
Static Public Attributes | |
static constexpr int | REDIS_DEFAULT_PORT {6379} |
A wrapper for the hiredis C interface with multi-client support.
This class provides a wrapper for interacting with a Redis server using the hiredis library. By using the subclass HiredisMultiAdapter
, support for interacting with multiple Redis servers at once is provided.
Responses usually return a smart pointer to the generated redisReply as returned by the hiredis functions.
Definition at line 21 of file HiredisAdapter.hpp.
Definition at line 26 of file HiredisAdapter.hpp.
Definition at line 25 of file HiredisAdapter.hpp.
using HiredisAdapter::set_reply_t = std::unique_ptr<redisReply, std::function<void(redisReply*)> > |
Definition at line 24 of file HiredisAdapter.hpp.
Definition at line 27 of file HiredisAdapter.hpp.
using HiredisAdapter::timeout_t = size_t |
Definition at line 28 of file HiredisAdapter.hpp.
|
inline |
Initialize the adapter.
This constructor does not connect to any Redis servers.
Definition at line 37 of file HiredisAdapter.hpp.
|
delete |
|
default |
|
virtual |
Definition at line 5 of file HiredisAdapter.cpp.
|
virtual |
Connect to the Redis server.
This method connects to the Redis server and must be called before any other methods may be called. Only after a successful connection may other functions be called (check with is_connected()
).
HiredisException | on connection failure |
Reimplemented in HiredisMultiAdapter.
Definition at line 12 of file HiredisAdapter.cpp.
|
virtual |
Reimplemented in HiredisMultiAdapter.
Definition at line 29 of file HiredisAdapter.cpp.
|
virtual |
Reimplemented in HiredisMultiAdapter.
Definition at line 56 of file HiredisAdapter.cpp.
|
virtual |
Reimplemented in HiredisMultiAdapter.
Definition at line 70 of file HiredisAdapter.cpp.
|
inlinevirtualnoexcept |
Reimplemented in HiredisMultiAdapter.
Definition at line 59 of file HiredisAdapter.hpp.
|
inlinevirtualnoexcept |
Reimplemented in HiredisMultiAdapter.
Definition at line 86 of file HiredisAdapter.hpp.
|
virtual |
Reimplemented in HiredisMultiAdapter.
Definition at line 47 of file HiredisAdapter.cpp.
|
virtual |
Reimplemented in HiredisMultiAdapter.
Definition at line 38 of file HiredisAdapter.cpp.
|
virtual |
Reimplemented in HiredisMultiAdapter.
Definition at line 77 of file HiredisAdapter.cpp.
|
staticconstexpr |
Definition at line 30 of file HiredisAdapter.hpp.