MCPcopy Create free account
hub / github.com/acl-dev/acl / role_slave

Method role_slave

lib_acl_cpp/src/redis/redis_role.cpp:137–175  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

135}
136
137bool redis_role::role_slave(const redis_result** a, size_t n)
138{
139 if (n < 5) {
140 logger_error("redis_result's size(%d) too small", (int) n);
141 return false;
142 }
143
144 if (a[1]->get_type() != REDIS_RESULT_STRING) {
145 logger_error("no ip");
146 return false;
147 }
148 string buf;
149 a[1]->argv_to_string(buf);
150 role4slave_.set_ip(buf);
151
152 if (a[2]->get_type() != REDIS_RESULT_INTEGER) {
153 logger_error("no port");
154 return false;
155 }
156 int port = a[2]->get_integer();
157 role4slave_.set_port(port);
158
159 if (a[3]->get_type() != REDIS_RESULT_STRING) {
160 logger_error("no status");
161 return false;
162 }
163 buf.clear();
164 a[3]->argv_to_string(buf);
165 role4slave_.set_status(buf);
166
167 if (a[4]->get_type() != REDIS_RESULT_INTEGER) {
168 logger_error("no offset");
169 return false;
170 }
171 long long off = a[4]->get_integer64();
172 role4slave_.set_offset(off);
173
174 return true;
175}
176
177}
178

Callers

nothing calls this directly

Calls 6

get_typeMethod · 0.45
argv_to_stringMethod · 0.45
get_integerMethod · 0.45
clearMethod · 0.45
set_statusMethod · 0.45
get_integer64Method · 0.45

Tested by

no test coverage detected