acl  3.5.3.0
redis_connection.hpp
浏览该文件的文档.
1 #pragma once
2 #include "../acl_cpp_define.hpp"
3 #include "redis_command.hpp"
4 
5 #if !defined(ACL_CLIENT_ONLY) && !defined(ACL_REDIS_DISABLE)
6 
7 namespace acl
8 {
9 
10 class redis_client;
11 
12 /**
13  * redis Connection 类,包含命令如下:
14  * AUTH、ECHO、PING、QUIT、SELECT
15  * redis connection command clss, including as below:
16  * AUTH, ECHO, PING, QUIT, SELECT
17  */
19 {
20 public:
21  /**
22  * see redis_command::redis_command()
23  */
24  redis_connection(void);
25 
26  /**
27  * see redis_command::redis_command(redis_client*)
28  */
30 
31  /**
32  * see redis_command::redis_command(redis_client_cluster*)
33  */
35 
37  redis_connection(redis_client_cluster* cluster, size_t max_conns);
38 
40 
41  virtual ~redis_connection(void);
42 
43  /////////////////////////////////////////////////////////////////////
44 
45  /**
46  * 连接至 redis-server 时进行身份验证
47  * AUTH command to login the redis server.
48  * @param passwd {const char*} 在 redis 配置文件中指定的认证密码
49  * the password in redis-server configure
50  * @return {bool} 身份认证是否成功,返回 false 表示认证失败或操作失败
51  * return true if success, or false because auth failed or error.
52  */
53  bool auth(const char* passwd);
54 
55  /**
56  * 选择 redis-server 中的数据库 ID
57  * SELECT command to select the DB id in redis-server
58  * @param dbnum {int} redis 数据库 ID
59  * the DB id
60  * @return {bool} 操作是否成功
61  * return true if success, or false for failed.
62  */
63  bool select(int dbnum);
64 
65  /**
66  * 探测 redis 连接是否正常
67  * PING command for testing if the connection is OK
68  * @return {bool} 连接是否正常
69  * return true if success
70  */
71  bool ping();
72 
73  /**
74  * 测试用命令,让 redis-server 回显给定字符串
75  * ECHO command, request redis-server to echo something.
76  * @return {bool} 操作是否成功
77  * return true if success
78  */
79  bool echo(const char* s);
80 
81  /**
82  * 关闭 redis 连接
83  * QUIT command to close the redis connection
84  * @return {bool}
85  * return true if success
86  */
87  bool quit();
88 };
89 
90 } // namespace acl
91 
92 #endif // !defined(ACL_CLIENT_ONLY) && !defined(ACL_REDIS_DISABLE)
#define ACL_CPP_DEPRECATED
Definition: atomic.hpp:86
#define ACL_CPP_API