38
38
#include <libmemcached/common.h>
40
static inline void _server_init(org::libmemcached::Instance* self, Memcached *root,
40
static inline void _server_init(memcached_instance_st* self, Memcached *root,
41
41
const memcached_string_t& hostname,
43
43
uint32_t weight, memcached_connection_t type)
87
87
self->hostname(hostname);
90
static org::libmemcached::Instance* _server_create(org::libmemcached::Instance* self, const memcached_st *memc)
90
static memcached_instance_st* _server_create(memcached_instance_st* self, const memcached_st *memc)
94
self= libmemcached_xmalloc(memc, org::libmemcached::Instance);
94
self= libmemcached_xmalloc(memc, memcached_instance_st);
131
131
_events&= short(~arg);
134
org::libmemcached::Instance* __instance_create_with(memcached_st *memc,
135
org::libmemcached::Instance* self,
134
memcached_instance_st* __instance_create_with(memcached_st *memc,
135
memcached_instance_st* self,
136
136
const memcached_string_t& hostname,
137
137
const in_port_t port,
204
204
size_t errors= 0;
205
205
for (uint32_t x= 0; x < memcached_instance_list_count(memc); x++)
207
org::libmemcached::Instance* instance= memcached_instance_by_position(memc, x);
207
memcached_instance_st* instance= memcached_instance_by_position(memc, x);
209
209
for (uint32_t y= 0; y < number_of_callbacks; y++)
233
233
bool some_errors= false;;
234
234
for (uint32_t x= 0; x < memcached_instance_list_count(memc); x++)
236
org::libmemcached::Instance* instance= memcached_instance_fetch(memc, x);
236
memcached_instance_st* instance= memcached_instance_fetch(memc, x);
238
238
memcached_return_t rc= (*callback)(memc, instance, context);
239
239
if (rc == MEMCACHED_INVALID_ARGUMENTS)
250
250
return MEMCACHED_SUCCESS;
253
memcached_server_instance_st memcached_server_by_key(memcached_st *shell,
253
const memcached_instance_st * memcached_server_by_key(memcached_st *shell,
255
255
size_t key_length,
256
256
memcached_return_t *error)
284
284
If we do not have a valid object to clone from, we toss an error.
286
static org::libmemcached::Instance* memcached_instance_clone(org::libmemcached::Instance* source)
286
static memcached_instance_st* memcached_instance_clone(memcached_instance_st* source)
288
288
/* We just do a normal create if source is missing */
289
289
if (source == NULL)
314
314
memcached_st *root= (memcached_st *)self->root;
316
memcached_instance_free((org::libmemcached::Instance*)(root->last_disconnected_server));
316
memcached_instance_free((memcached_instance_st*)(root->last_disconnected_server));
318
318
// We set is_parsing so that no lookup happens
319
319
root->state.is_parsing= true;
320
320
root->last_disconnected_server= memcached_instance_clone(self);
321
321
root->state.is_parsing= false;
323
((org::libmemcached::Instance*)memcached_server_get_last_disconnect(root))->version= self->version;
323
((memcached_instance_st*)memcached_server_get_last_disconnect(root))->version= self->version;
327
memcached_server_instance_st memcached_server_get_last_disconnect(const memcached_st *shell)
327
const memcached_instance_st * memcached_server_get_last_disconnect(const memcached_st *shell)
329
329
const Memcached* self= memcached2Memcached(shell);
332
return (memcached_server_instance_st)self->last_disconnected_server;
332
return (const memcached_instance_st *)self->last_disconnected_server;
338
void memcached_instance_next_retry(memcached_server_instance_st self, const time_t absolute_time)
338
void memcached_instance_next_retry(const memcached_instance_st * self, const time_t absolute_time)
340
340
WATCHPOINT_ASSERT(self);
343
((org::libmemcached::Instance*)self)->next_retry= absolute_time;
348
namespace libmemcached {
350
bool Instance::valid() const
352
if (fd == INVALID_SOCKET)
360
bool Instance::is_shutting_down() const
362
return options.is_shutting_down;
365
} // namespace libmemcached
343
((memcached_instance_st*)self)->next_retry= absolute_time;
347
bool memcached_instance_st::valid() const
349
if (fd == INVALID_SOCKET)
357
bool memcached_instance_st::is_shutting_down() const
359
return options.is_shutting_down;