flush
authorMichael Wallner <mike@php.net>
Thu, 7 Nov 2013 19:45:51 +0000 (20:45 +0100)
committerMichael Wallner <mike@php.net>
Thu, 7 Nov 2013 19:45:51 +0000 (20:45 +0100)
http.md
http/Encoding.md [new file with mode: 0644]
http/Encoding/Stream.md [new file with mode: 0644]
http/Exception.md

diff --git a/http.md b/http.md
index a2d427b816702d57235aa9133b08d4ad24970373..16eaaae107e01762b5dcb9023227fdc0a0615909 100644 (file)
--- a/http.md
+++ b/http.md
@@ -4,14 +4,13 @@
 
 ## About:
 
-Extended HTTP support. Again. Keep in mind that it's got the major version 2, because it's incompatible with pecl_http v1.
+Extended HTTP support. Again. 
 
 * Introduces the http namespace.
-* Message bodies have been remodeled to use PHP temporary streams instead of in-memory buffers.
-* The utterly misunderstood HttpResponse class has been reimplemented as http\Env\Response inheriting http\Message.
-* Currently, there's only one Exception class left, http\Exception.
-* Errors triggered by the extension can be configured statically by http\Object::$defaultErrorHandling or inherited http\Object->errorHandling.
-* The request ecosystem has been modularized to support different libraries, though for the moment only libcurl is supported.
+* PHP stream based message bodies.
+* Encapsulated env request/response.
+* Versatile error handling.
+* Modular client support.
 
 ## Installation:
 
@@ -19,8 +18,42 @@ This extension is hosted at PECL (<http://pecl.php.net>) and can be installed ei
 
     # pecl install pecl_http
 
+## Dependencies:
+
+This extension unconditionally depends on the pre-loaded presence of the following PHP extensions:
+
+* raphf
+* propro
+* spl
+
+
+If configured ```--with-http-shared-deps``` (default) it requires on the pre-loaded presence of the following extensions, as long as they where available at build time:
+
+* hash
+* iconv
+* json
+
+## Conflicts:
+
+pecl/http-v2 conflicts with thw following extensions:
+
+* http-v1
+* event
+
 ## INI Directives:
 
 * http.etag.mode = "crc32b"  
   Default hash method for dynamic response payloads to generate an ETag.
 
+## Stream Filters:
+
+The http extension registers the ```http.*``` namespace for its stream filters. Provided stream filters are:
+
+* http.chunked_decode  
+  Decode a stream encoded with chunked transfer encoding.
+* http.chunked_encode  
+  Encode a stream with chunked transfer encoding.
+* http.inflate  
+  Decode a stream encoded with deflate/zlib/gzip encoding.
+* http.deflate  
+  Encode a stream with deflate/zlib/gzip encoding.
diff --git a/http/Encoding.md b/http/Encoding.md
new file mode 100644 (file)
index 0000000..2de9a65
--- /dev/null
@@ -0,0 +1 @@
+# namespace http\Encoding
diff --git a/http/Encoding/Stream.md b/http/Encoding/Stream.md
new file mode 100644 (file)
index 0000000..99f7dcc
--- /dev/null
@@ -0,0 +1,12 @@
+# abstract class http\Encoding\Stream extends http\Object
+
+Base for encoding stream implementations.
+
+## Constants:
+
+* FLUSH_NONE  
+  Do no intermittend flushes.
+* FLUSH_SYNC  
+  Flush at appropriate transfer points.
+* FLUSH_FULL  
+  Flush at each IO operation.
index 7c1865523ece4a5a4bc5c334810aee3b6326edc7..4f6609eb40d2743e1564301931d97a07d9df028a 100644 (file)
@@ -1,3 +1,27 @@
 # class http\Exception extends Exception
 
 The http extension's Exception.
+
+## Constants:
+
+* E_UNKNOWN  
+* E_RUNTIME  
+* E_INVALID_PARAM  
+* E_HEADER  
+* E_MALFORMED_HEADERS  
+* E_MESSAGE  
+* E_MESSAGE_TYPE  
+* E_MESSAGE_BODY  
+* E_ENCODING  
+* E_CLIENT  
+* E_CLIENT_POOL  
+* E_CLIENT_DATASHARE  
+* E_SOCKET  
+* E_RESPONSE  
+* E_URL  
+* E_QUERYSTRING  
+* E_COOKIE  
+
+## Properties:
+
+None.