2017-05-25 12:00:58 +00:00
|
|
|
#ifndef OD_ROUTE_POOL_H
|
|
|
|
#define OD_ROUTE_POOL_H
|
|
|
|
|
|
|
|
/*
|
2017-07-05 12:42:49 +00:00
|
|
|
* Odissey.
|
2017-05-25 12:00:58 +00:00
|
|
|
*
|
2017-07-05 12:42:49 +00:00
|
|
|
* Advanced PostgreSQL connection pooler.
|
2017-05-25 12:00:58 +00:00
|
|
|
*/
|
|
|
|
|
|
|
|
typedef struct od_routepool od_routepool_t;
|
|
|
|
|
|
|
|
struct od_routepool
|
|
|
|
{
|
|
|
|
od_list_t list;
|
2017-05-31 11:38:06 +00:00
|
|
|
int count;
|
2017-05-25 12:00:58 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
void od_routepool_init(od_routepool_t*);
|
|
|
|
void od_routepool_free(od_routepool_t*);
|
2017-07-19 15:25:44 +00:00
|
|
|
void od_routepool_gc(od_routepool_t*);
|
2017-05-25 12:00:58 +00:00
|
|
|
|
|
|
|
od_route_t*
|
2017-07-21 14:29:01 +00:00
|
|
|
od_routepool_new(od_routepool_t*, od_schemeroute_t*,
|
2017-05-25 12:00:58 +00:00
|
|
|
od_routeid_t*);
|
|
|
|
|
|
|
|
od_route_t*
|
2017-07-24 11:21:32 +00:00
|
|
|
od_routepool_match_latest(od_routepool_t*, od_routeid_t*);
|
2017-05-25 12:00:58 +00:00
|
|
|
|
|
|
|
od_server_t*
|
|
|
|
od_routepool_next(od_routepool_t*, od_serverstate_t);
|
|
|
|
|
|
|
|
od_server_t*
|
|
|
|
od_routepool_foreach(od_routepool_t*, od_serverstate_t,
|
|
|
|
od_serverpool_cb_t, void*);
|
|
|
|
|
|
|
|
#endif /* OD_ROUTE_POOL_H */
|