1
0
mirror of https://github.com/apache/httpd.git synced 2025-08-08 15:02:10 +03:00

Allow for modules to keep track of worker slot

numbers themselves if they want, by allowing for
worker create/alloc functions to take a slot number id.
Done via _wid() variants of 3 proxy funcs.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@964089 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Jim Jagielski
2010-07-14 16:03:19 +00:00
parent f1f6c850eb
commit ed67c11e05
3 changed files with 83 additions and 14 deletions

View File

@@ -526,6 +526,21 @@ typedef __declspec(dllimport) const char *
PROXY_DECLARE(proxy_worker *) ap_proxy_get_worker(apr_pool_t *p,
proxy_server_conf *conf,
const char *url);
/**
* Add the worker to proxy configuration
* @param worker the new worker
* @param p memory pool to allocate worker from
* @param conf current proxy server configuration
* @param url url containing worker name
* @param id slotnumber id or -1 for auto allocation
* @return error message or NULL if successfull
*/
PROXY_DECLARE(const char *) ap_proxy_add_worker_wid(proxy_worker **worker,
apr_pool_t *p,
proxy_server_conf *conf,
const char *url,
int id);
/**
* Add the worker to proxy configuration
* @param worker the new worker
@@ -539,6 +554,14 @@ PROXY_DECLARE(const char *) ap_proxy_add_worker(proxy_worker **worker,
proxy_server_conf *conf,
const char *url);
/**
* Create new worker
* @param p memory pool to allocate worker from
* @param id slotnumber id or -1 for auto allocation
* @return new worker
*/
PROXY_DECLARE(proxy_worker *) ap_proxy_create_worker_wid(apr_pool_t *p, int id);
/**
* Create new worker
* @param p memory pool to allocate worker from
@@ -591,6 +614,18 @@ PROXY_DECLARE(const char *) ap_proxy_add_balancer(proxy_balancer **balancer,
proxy_server_conf *conf,
const char *url);
/**
* Add the worker to the balancer
* @param pool memory pool for adding worker
* @param balancer balancer to add to
* @param worker worker to add
* @param id slotnumber id or -1 for auto allocation
* @note Single worker can be added to multiple balancers.
*/
PROXY_DECLARE(void) ap_proxy_add_worker_to_balancer_wid(apr_pool_t *pool,
proxy_balancer *balancer,
proxy_worker *worker,
int id);
/**
* Add the worker to the balancer
* @param pool memory pool for adding worker