X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=http_methods.c;h=ebb892a6a73ac3c86eaabfadd405074b63d55060;hp=e10923b2b473a2e30d09c6cd9b1e0829c4eb37cb;hb=ace08ce673845bc13aa2497182f881bcf5e32e17;hpb=2269e8e11a6837fc165ae85406ea6db84c1995cc diff --git a/http_methods.c b/http_methods.c index e10923b..ebb892a 100644 --- a/http_methods.c +++ b/http_methods.c @@ -2233,6 +2233,59 @@ PHP_METHOD(HttpRequestPool, send) } /* }}} */ +/* {{{ proto protected bool HttpRequestPool::socketSend() + * + * Usage: + *
+ * socketSend()) {
+ *         do_something_else();
+ *         if (!$pool->socketSelect()) {
+ *             die('Socket error');
+ *         }
+ *     }
+ *     $pool->socketRead();
+ * ?>
+ * 
+ */ +PHP_METHOD(HttpRequestPool, socketSend) +{ + getObject(http_requestpool_object, obj); + + NO_ARGS; + + RETURN_BOOL(0 < http_request_pool_perform(&obj->pool)); +} +/* }}} */ + +/* {{{ proto protected bool HttpRequestPool::socketSelect() + * + * See HttpRequestPool::socketSend(). + */ +PHP_METHOD(HttpRequestPool, socketSelect) +{ + getObject(http_requestpool_object, obj); + + NO_ARGS; + + RETURN_SUCCESS(http_request_pool_select(&obj->pool)); +} +/* }}} */ + +/* {{{ proto protected void HttpRequestPool::socketRead() + * + * See HttpRequestPool::socketSend(). + */ +PHP_METHOD(HttpRequestPool, socketRead) +{ + getObject(http_requestpool_object, obj); + + NO_ARGS; + + zend_llist_apply(&obj->pool.handles, (llist_apply_func_t) http_request_pool_responsehandler TSRMLS_CC); +} +/* }}} */ + /* }}} */ /* }}} */