#include "php_http_message_object.h"
#include "php_http_response_object.h"
#include "php_http_request_object.h"
+#include "php_http_exception_object.h"
#ifdef ZEND_ENGINE_2
zend_bool do_cache = 0, do_gzip = 0;
getObject(http_response_object, obj);
- if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|bb", &do_cache, &do_gzip)) {
- // throw exception
- return;
+ SET_EH_THROW_HTTP();
+ if (SUCCESS == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|bb", &do_cache, &do_gzip)) {
+ UPD_PROP(obj, long, cache, do_cache);
+ UPD_PROP(obj, long, gzip, do_gzip);
}
-
- UPD_PROP(obj, long, cache, do_cache);
- UPD_PROP(obj, long, gzip, do_gzip);
+ SET_EH_NORMAL();
}
/* }}} */
{
zval *message;
getObject(http_message_object, obj);
-
+
if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "z/", &message)) {
return;
}
{
zval *body;
getObject(http_message_object, obj);
-
+
NO_ARGS;
body = GET_PROP(obj, body);
{
zval *headers;
getObject(http_message_object, obj);
-
+
NO_ARGS;
-
+
headers = GET_PROP(obj, headers);
array_init(return_value);
array_copy(headers, return_value);
long meth = -1;
getObject(http_request_object, obj);
- if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|sl", &URL, &URL_len, &meth)) {
- return;
- }
-
- INIT_PARR(obj, options);
- INIT_PARR(obj, responseInfo);
- INIT_PARR(obj, responseData);
- INIT_PARR(obj, postData);
- INIT_PARR(obj, postFiles);
+ SET_EH_THROW_HTTP();
+ if (SUCCESS == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|sl", &URL, &URL_len, &meth)) {
+ INIT_PARR(obj, options);
+ INIT_PARR(obj, responseInfo);
+ INIT_PARR(obj, responseData);
+ INIT_PARR(obj, postData);
+ INIT_PARR(obj, postFiles);
- if (URL) {
- UPD_PROP(obj, string, url, URL);
- }
- if (meth > -1) {
- UPD_PROP(obj, long, method, meth);
+ if (URL) {
+ UPD_PROP(obj, string, url, URL);
+ }
+ if (meth > -1) {
+ UPD_PROP(obj, long, method, meth);
+ }
}
+ SET_EH_NORMAL();
}
/* }}} */
getObject(http_request_object, obj);
NO_ARGS;
+
+ SET_EH_THROW_HTTP();
if ((!obj->ch) && (!(obj->ch = curl_easy_init()))) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Could not initilaize cURL");
efree(request_uri);
/* final data handling */
- if (status != SUCCESS) {
- RETURN_FALSE;
- } else {
+ if (status == SUCCESS) {
char *body = NULL;
size_t body_len = 0;
zval *zheaders;
RETURN_TRUE;
}
- /* */
+
+ SET_EH_NORMAL();
+ RETURN_SUCCESS(status);
}
/* }}} */
/* }}} */