2 +--------------------------------------------------------------------+
4 +--------------------------------------------------------------------+
5 | Redistribution and use in source and binary forms, with or without |
6 | modification, are permitted provided that the conditions mentioned |
7 | in the accompanying LICENSE file are met. |
8 +--------------------------------------------------------------------+
9 | Copyright (c) 2004-2005, Michael Wallner <mike@php.net> |
10 +--------------------------------------------------------------------+
15 #ifndef PHP_HTTP_MESSAGE_OBJECT_H
16 #define PHP_HTTP_MESSAGE_OBJECT_H
19 #include "php_http_message_api.h"
23 http_message
*message
;
24 zend_object_value parent
;
25 } http_message_object
;
27 extern zend_class_entry
*http_message_object_ce
;
28 extern zend_function_entry http_message_object_fe
[];
30 extern PHP_MINIT_FUNCTION(http_message_object
);
32 #define http_message_object_new _http_message_object_new
33 extern zend_object_value
_http_message_object_new(zend_class_entry
*ce TSRMLS_DC
);
34 #define http_message_object_new_ex(ce, msg) _http_message_object_new_ex(ce, msg TSRMLS_CC)
35 #define http_message_object_from_msg(msg) _http_message_object_new_ex(http_message_object_ce, msg TSRMLS_CC)
36 extern zend_object_value
_http_message_object_new_ex(zend_class_entry
*ce
, http_message
*msg TSRMLS_DC
);
37 #define http_message_object_clone(zobj) _http_message_object_clone(zobj TSRMLS_CC)
38 extern zend_object_value
_http_message_object_clone(zval
*object TSRMLS_DC
);
39 #define http_message_object_free _http_message_object_free
40 extern void _http_message_object_free(zend_object
*object TSRMLS_DC
);
42 #define HTTP_MSG_PROPHASH_TYPE 276192743LU
43 #define HTTP_MSG_PROPHASH_HTTP_VERSION 1138628683LU
44 #define HTTP_MSG_PROPHASH_BODY 254474387LU
45 #define HTTP_MSG_PROPHASH_HEADERS 3199929089LU
46 #define HTTP_MSG_PROPHASH_PARENT_MESSAGE 2105714836LU
47 #define HTTP_MSG_PROPHASH_REQUEST_METHOD 1669022159LU
48 #define HTTP_MSG_PROPHASH_REQUEST_URI 3208695486LU
49 #define HTTP_MSG_PROPHASH_RESPONSE_STATUS 3857097400LU
50 #define HTTP_MSG_PROPHASH_RESPONSE_CODE 1305615119LU
52 #define HTTP_MSG_CHECK_OBJ(obj, dofail) \
53 if (!(obj)->message) { \
54 http_error(E_WARNING, HTTP_E_MSG, "HttpMessage is empty"); \
57 #define HTTP_MSG_CHECK_STD() HTTP_MSG_CHECK_OBJ(obj, RETURN_FALSE)
59 #define HTTP_MSG_INIT_OBJ(obj) \
60 if (!(obj)->message) { \
61 (obj)->message = http_message_new(); \
63 #define HTTP_MSG_INIT_STD() HTTP_MSG_INIT_OBJ(obj)
65 PHP_METHOD(HttpMessage
, __construct
);
66 PHP_METHOD(HttpMessage
, getBody
);
67 PHP_METHOD(HttpMessage
, setBody
);
68 PHP_METHOD(HttpMessage
, getHeaders
);
69 PHP_METHOD(HttpMessage
, setHeaders
);
70 PHP_METHOD(HttpMessage
, addHeaders
);
71 PHP_METHOD(HttpMessage
, getType
);
72 PHP_METHOD(HttpMessage
, setType
);
73 PHP_METHOD(HttpMessage
, getResponseCode
);
74 PHP_METHOD(HttpMessage
, setResponseCode
);
75 PHP_METHOD(HttpMessage
, getRequestMethod
);
76 PHP_METHOD(HttpMessage
, setRequestMethod
);
77 PHP_METHOD(HttpMessage
, getRequestUri
);
78 PHP_METHOD(HttpMessage
, setRequestUri
);
79 PHP_METHOD(HttpMessage
, getHttpVersion
);
80 PHP_METHOD(HttpMessage
, setHttpVersion
);
81 PHP_METHOD(HttpMessage
, getParentMessage
);
82 PHP_METHOD(HttpMessage
, send
);
83 PHP_METHOD(HttpMessage
, toString
);
85 PHP_METHOD(HttpMessage
, fromString
);
95 * vim600: noet sw=4 ts=4 fdm=marker
96 * vim<600: noet sw=4 ts=4