From: Michael Wallner Date: Fri, 8 Nov 2013 12:43:19 +0000 (+0100) Subject: http\Encoding X-Git-Url: https://git.m6w6.name/?a=commitdiff_plain;h=352076ea2c4849eb9243ac51f7fb698489053b4d;p=mdref%2Fmdref http\Encoding --- diff --git a/http/Encoding/Stream.md b/http/Encoding/Stream.md index 99f7dcc..0656593 100644 --- a/http/Encoding/Stream.md +++ b/http/Encoding/Stream.md @@ -1,6 +1,6 @@ # abstract class http\Encoding\Stream extends http\Object -Base for encoding stream implementations. +Base class for encoding stream implementations. ## Constants: diff --git a/http/Encoding/Stream/Dechunk.md b/http/Encoding/Stream/Dechunk.md new file mode 100644 index 0000000..9d8dd2d --- /dev/null +++ b/http/Encoding/Stream/Dechunk.md @@ -0,0 +1,11 @@ +# class http\Encoding\Stream\Dechunk extends http\Encoding\Stream + +A stream decoding data encoded with chunked transfer encoding. + +## Constants: + +None. + +## Properties: + +None. diff --git a/http/Encoding/Stream/Dechunk/decode.md b/http/Encoding/Stream/Dechunk/decode.md new file mode 100644 index 0000000..e87d79e --- /dev/null +++ b/http/Encoding/Stream/Dechunk/decode.md @@ -0,0 +1,12 @@ +# static string http\Encoding\Stream\Dechunk::decode(string $data) + +Decode chunked encoded data. + +## Params: + +* string $data + The data to decode. + +## Returns: + +* string, the decoded data. diff --git a/http/Encoding/Stream/Deflate.md b/http/Encoding/Stream/Deflate.md new file mode 100644 index 0000000..741d6bc --- /dev/null +++ b/http/Encoding/Stream/Deflate.md @@ -0,0 +1,49 @@ +# class http\Encoding\Stream\Deflate extends http\Encoding\Stream + +A deflate stream supporting deflate, zlib and gzip encodings. + +## Constants: + +* TYPE_GZIP + Gzip encoding. RFC1952 +* TYPE_ZLIB + Zlib encoding. RFC1950 +* TYPE_RAW + Deflate encoding. RFC1951 +* LEVEL_DEF + Default compression level. +* LEVEL_MIN + Least compression level. +* LEVEL_MAX + Greatest compression level. +* STRATEGY_DEF + Default compression strategy. +* STRATEGY_FILT + Filtered compression strategy. +* STRATEGY_HUFF + Huffman strategy only. +* STRATEGY_RLE + Run-length encoding strategy. +* STRATEGY_FIXED + Encoding with fixed Huffman codes only. + +> **A note on the compression strategy:** +> +> The strategy parameter is used to tune the compression algorithm. +> +> Use the value DEFAULT_STRATEGY for normal data, FILTERED for data produced by a filter (or predictor), HUFFMAN_ONLY to force Huffman encoding only (no string match), or RLE to limit match distances to one (run-length encoding). +> +> Filtered data consists mostly of small values with a somewhat random distribution. In this case, the compression algorithm is tuned to compress them better. The effect of FILTERED is to force more Huffman coding and less string matching; it is somewhat intermediate between DEFAULT_STRATEGY and HUFFMAN_ONLY. +> +> RLE is designed to be almost as fast as HUFFMAN_ONLY, but give better compression for PNG image data. +> +> FIXED prevents the use of dynamic Huffman codes, allowing for a simpler decoder for special applications. +> +> The strategy parameter only affects the compression ratio but not the correctness of the compressed output even if it is not set appropriately. +> +>_Source: [zlib Manual](http://www.zlib.net/manual.html)_ + + +## Properties: + +None. diff --git a/http/Encoding/Stream/Deflate/encode.md b/http/Encoding/Stream/Deflate/encode.md new file mode 100644 index 0000000..7a8ff70 --- /dev/null +++ b/http/Encoding/Stream/Deflate/encode.md @@ -0,0 +1,14 @@ +# static string http\Encoding\Stream\Deflate::encode(string $data[, int $flags = 0]) + +Encode data with deflate/zlib/gzip encoding. + +## Params: + +* string $data + The data to compress. +* Optional int $flags = 0 + Any compression tuning flags. See http\Encoding\Stream\Deflate and http\Encoding\Stream constants. + +## Returns: + +* string, the compressed data. diff --git a/http/Encoding/Stream/Inflate.md b/http/Encoding/Stream/Inflate.md new file mode 100644 index 0000000..1d63e27 --- /dev/null +++ b/http/Encoding/Stream/Inflate.md @@ -0,0 +1,11 @@ +# class http\Encoding\Stream\Inflate extends http\Encoding\Stream + +A inflate stream supporting deflate, zlib and gzip encodings. + +## Constants: + +None. + +## Properties: + +None. diff --git a/http/Encoding/Stream/Inflate/decode.md b/http/Encoding/Stream/Inflate/decode.md new file mode 100644 index 0000000..74c5048 --- /dev/null +++ b/http/Encoding/Stream/Inflate/decode.md @@ -0,0 +1,12 @@ +# static string http\Encoding\Stream\Inflate::decode(string $data) + +Decode deflate/zlib/gzip encoded data. + +## Params: + +* string $data + The data to uncompress. + +## Returns: + +* string, the uncompressed data. diff --git a/http/Encoding/Stream/__construct.md b/http/Encoding/Stream/__construct.md new file mode 100644 index 0000000..baf8923 --- /dev/null +++ b/http/Encoding/Stream/__construct.md @@ -0,0 +1,12 @@ +# void http\Encoding\Stream::__construct([int $flags = 0]) + +Base constructor for encoding stream implementations. + +## Params: + +* Optional int $flags = 0 + See http\Encoding\Stream and implementation specific constants. + +## Throws: + +* http\Exception. diff --git a/http/Encoding/Stream/done.md b/http/Encoding/Stream/done.md new file mode 100644 index 0000000..6026320 --- /dev/null +++ b/http/Encoding/Stream/done.md @@ -0,0 +1,11 @@ +# bool http\Encoding\Stream::done() + +Check whether the encoding stream is already done. + +## Params: + +None. + +## Returns: + +* bool, whether the encoding stream is completed. diff --git a/http/Encoding/Stream/finish.md b/http/Encoding/Stream/finish.md new file mode 100644 index 0000000..3ec8e12 --- /dev/null +++ b/http/Encoding/Stream/finish.md @@ -0,0 +1,12 @@ +# string http\Encoding\Stream::finish() + +Finish and reset the encoding stream. +Returns any pending data. + +## Params: + +None. + +## Returns: + +* string, any pending data. diff --git a/http/Encoding/Stream/flush.md b/http/Encoding/Stream/flush.md new file mode 100644 index 0000000..5daea86 --- /dev/null +++ b/http/Encoding/Stream/flush.md @@ -0,0 +1,12 @@ +# string http\Encoding\Stream::flush() + +Flush the encoding stream. +Returns any pending data. + +## Params: + +None. + +## Returns: + +* string, any pending data. diff --git a/http/Encoding/Stream/update.md b/http/Encoding/Stream/update.md new file mode 100644 index 0000000..7bcdd9b --- /dev/null +++ b/http/Encoding/Stream/update.md @@ -0,0 +1,12 @@ +# string http\Encoding\Stream::update(string $data) + +Update the encoding stream with more input. + +## Params: + +* string $data + The data to pass through the stream. + +## Returns: + +* string, processed data.