build and file maintenance
[m6w6/ext-http] / php_http_request_pool.h
index f75c01dde3801282cd99e937d8d978c7f2bd5fe6..d2b6eb47310ed7edc4ae7c58d5c6f3b035831968 100644 (file)
@@ -1,3 +1,14 @@
+/*
+    +--------------------------------------------------------------------+
+    | PECL :: http                                                       |
+    +--------------------------------------------------------------------+
+    | Redistribution and use in source and binary forms, with or without |
+    | modification, are permitted provided that the conditions mentioned |
+    | in the accompanying LICENSE file are met.                          |
+    +--------------------------------------------------------------------+
+    | Copyright (c) 2004-2011, Michael Wallner <mike@php.net>            |
+    +--------------------------------------------------------------------+
+*/
 
 #ifndef PHP_HTTP_REQUESTPOOL_H
 #define PHP_HTTP_REQUESTPOOL_H
@@ -23,6 +34,7 @@ typedef STATUS (*php_http_request_pool_detach_func_t)(php_http_request_pool_t *p
 typedef STATUS (*php_http_request_pool_setopt_func_t)(php_http_request_pool_t *p, php_http_request_pool_setopt_opt_t opt, void *arg);
 
 typedef struct php_http_request_pool_ops {
+       php_http_resource_factory_ops_t *rsrc;
        php_http_request_pool_init_func_t init;
        php_http_request_pool_copy_func_t copy;
        php_http_request_pool_dtor_func_t dtor;
@@ -37,6 +49,7 @@ typedef struct php_http_request_pool_ops {
 
 struct php_http_request_pool {
        void *ctx;
+       php_http_resource_factory_t *rf;
        php_http_request_pool_ops_t *ops;
 
        struct {
@@ -44,12 +57,14 @@ struct php_http_request_pool {
                zend_llist finished;
        } requests;
 
+       zval *persistent_handle_id;
+
 #ifdef ZTS
        void ***ts;
 #endif
 };
 
-PHP_HTTP_API php_http_request_pool_t *php_http_request_pool_init(php_http_request_pool_t *pool, php_http_request_pool_ops_t *ops, void *init_arg TSRMLS_DC);
+PHP_HTTP_API php_http_request_pool_t *php_http_request_pool_init(php_http_request_pool_t *pool, php_http_request_pool_ops_t *ops, php_http_resource_factory_t *rf, void *init_arg TSRMLS_DC);
 PHP_HTTP_API php_http_request_pool_t *php_http_request_pool_copy(php_http_request_pool_t *from, php_http_request_pool_t *to);
 PHP_HTTP_API void php_http_request_pool_dtor(php_http_request_pool_t *pool);
 PHP_HTTP_API void php_http_request_pool_free(php_http_request_pool_t **pool);
@@ -65,6 +80,7 @@ PHP_HTTP_API void php_http_request_pool_requests(php_http_request_pool_t *h, zva
 typedef struct php_http_request_pool_object {
        zend_object zo;
        php_http_request_pool_t *pool;
+       zend_object_value factory;
        struct {
                long pos;
        } iterator;
@@ -99,3 +115,13 @@ PHP_METHOD(HttpRequestPool, enableEvents);
 PHP_MINIT_FUNCTION(http_request_pool);
 
 #endif /* PHP_HTTP_REQUESTPOOL_H */
+
+/*
+ * Local variables:
+ * tab-width: 4
+ * c-basic-offset: 4
+ * End:
+ * vim600: noet sw=4 ts=4 fdm=marker
+ * vim<600: noet sw=4 ts=4
+ */
+