#include <cassert>
+memcached_server_st *__server_create_with(memcached_st *memc,
+ memcached_server_st* self,
+ const memcached_string_t& hostname,
+ const in_port_t port,
+ uint32_t weight,
+ const memcached_connection_t type);
+
+memcached_return_t memcached_server_add_parsed(memcached_st *ptr,
+ const char *hostname,
+ size_t hostname_length,
+ in_port_t port,
+ uint32_t weight);
+
+void __server_free(memcached_server_st *);
+
static inline bool memcached_is_valid_servername(const memcached_string_t& arg)
{
- return arg.size > 0 or arg.size < NI_MAXHOST;
+ return (arg.c_str != NULL or arg.size == 0) and arg.size < MEMCACHED_NI_MAXHOST;
}
-static inline void memcached_mark_server_as_clean(memcached_server_write_instance_st server)
+static inline bool memcached_is_valid_filename(const memcached_string_t& arg)
{
- server->server_failure_counter= 0;
- server->next_retry= 0;
+ return arg.c_str != NULL and arg.size > 0 and arg.size < MEMCACHED_NI_MAXHOST;
}
+void memcached_instance_free(memcached_instance_st *);
-static inline void set_last_disconnected_host(memcached_server_write_instance_st self)
-{
- assert(self->root);
- if (self->root == NULL)
- {
- return;
- }
+void set_last_disconnected_host(memcached_instance_st* self);
- if (self->root->last_disconnected_server and self->root->last_disconnected_server->version == self->version)
- {
- return;
- }
-
- // const_cast
- memcached_st *root= (memcached_st *)self->root;
-
- memcached_server_free(root->last_disconnected_server);
- root->last_disconnected_server= memcached_server_clone(NULL, self);
- root->last_disconnected_server->version= self->version;
-}
-
-static inline void memcached_mark_server_for_timeout(memcached_server_write_instance_st server)
+static inline void memcached_mark_server_for_timeout(memcached_instance_st* server)
{
if (server->state != MEMCACHED_SERVER_STATE_IN_TIMEOUT)
{
set_last_disconnected_host(server);
}
}
-
-LIBMEMCACHED_LOCAL
- memcached_server_st *__server_create_with(memcached_st *memc,
- memcached_server_write_instance_st host,
- const memcached_string_t& hostname,
- const in_port_t port,
- uint32_t weight,
- const memcached_connection_t type);