Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 0 additions & 60 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,6 @@ supporting compression and decompression of GZIP, ZLIB and raw DEFLATE formats.
* [Usage](#usage)
* [Compressor](#compressor)
* [Decompressor](#decompressor)
* [ZlibFilterStream](#zlibfilterstream)
* [createCompressor()](#createcompressor)
* [createDecompressor()](#createdecompressor)
* [Inconsistencies](#inconsistencies)
* [Install](#install)
* [Tests](#tests)
Expand Down Expand Up @@ -137,10 +134,6 @@ $input->pipe($filterBadWords)->pipe($compressor)->pipe($output);
For more details, see ReactPHP's
[`DuplexStreamInterface`](https://github.com/reactphp/stream#duplexstreaminterface).

> Internally, it implements the deprecated `ZlibFilterStream` class only for
BC reasons. For best forwards compatibility, you should only rely on it
implementing the `DuplexStreamInterface`.

### Decompressor

The `Decompressor` class can be used to decompress a stream of data.
Expand Down Expand Up @@ -169,59 +162,6 @@ $input->pipe($decompressor)->pipe($filterBadWords)->pipe($output);
For more details, see ReactPHP's
[`DuplexStreamInterface`](https://github.com/reactphp/stream#duplexstreaminterface).

> Internally, it implements the deprecated `ZlibFilterStream` class only for
BC reasons. For best forwards compatibility, you should only rely on it
implementing the `DuplexStreamInterface`.

### ZlibFilterStream

The deprecated `ZlibFilterStream` is a small wrapper around the underlying `zlib.deflate` and `zlib.inflate`
stream compression filters offered via `ext-zlib`.

#### createCompressor()

The following deprecated methods can be used to
create a `Compressor` instance with the respective encoding parameter:

```php
// deprecated
$compressor = ZlibFilterStream::createGzipCompressor();
$compressor = ZlibFilterStream::createDeflateCompressor();
$compressor = ZlibFilterStream::createZlibCompressor();
```

Using any of these methods is deprecated.
Instead, you should explicitly create a `Compressor` like this:

```php
$encoding = ZLIB_ENCODING_GZIP; // or ZLIB_ENCODING_RAW or ZLIB_ENCODING_DEFLATE
$compressor = new Clue\React\Zlib\Compressor($encoding);
```

See also [`Compressor`](#compressor) for more details.

#### createDecompressor()

The following deprecated methods can be used to
create a `Decompressor` instanceof with the respective encoding parameter:

```php
// deprecated
$decompressor = ZlibFilterStream::createGzipDecompressor();
$decompressor = ZlibFilterStream::createDeflateDecompressor();
$decompressor = ZlibFilterStream::createZlibDecompressor();
```

Using any of these methods is deprecated.
Instead, you should explicitly create a `Decompressor` like this:

```php
$encoding = ZLIB_ENCODING_GZIP; // or ZLIB_ENCODING_RAW or ZLIB_ENCODING_DEFLATE
$decompressor = new Clue\React\Zlib\Decompressor($encoding);
```

See also [`Compressor`](#compressor) for more details.

### Inconsistencies

The stream compression filters are not exactly the most commonly used features of PHP.
Expand Down
4 changes: 0 additions & 4 deletions src/Compressor.php
Original file line number Diff line number Diff line change
Expand Up @@ -30,10 +30,6 @@
*
* For more details, see ReactPHP's
* [`DuplexStreamInterface`](https://github.com/reactphp/stream#duplexstreaminterface).
*
* > Internally, it implements the deprecated `ZlibFilterStream` class only for
* BC reasons. For best forwards compatibility, you should only rely on it
* implementing the `DuplexStreamInterface`.
*/
final class Compressor extends ZlibFilterStream
{
Expand Down
4 changes: 0 additions & 4 deletions src/Decompressor.php
Original file line number Diff line number Diff line change
Expand Up @@ -30,10 +30,6 @@
*
* For more details, see ReactPHP's
* [`DuplexStreamInterface`](https://github.com/reactphp/stream#duplexstreaminterface).
*
* > Internally, it implements the deprecated `ZlibFilterStream` class only for
* BC reasons. For best forwards compatibility, you should only rely on it
* implementing the `DuplexStreamInterface`.
*/
final class Decompressor extends ZlibFilterStream
{
Expand Down
58 changes: 2 additions & 56 deletions src/ZlibFilterStream.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,75 +3,21 @@
namespace Clue\React\Zlib;

/**
* Compressor and decompressor using PHP's zlib compression filters.
* [Internal] Compressor and decompressor using PHP's zlib compression filters.
*
* Supports the following compression formats:
*
* RFC 1952 (GZIP compressed format)
* RFC 1951 (raw DEFLATE compressed format)
* RFC 1950 (ZLIB compressed format)
*
* @internal Should not be relied upon outside of this package.
* @link http://php.net/manual/en/filters.compression.php
* @deprecated 0.2.2 External usage of `ZlibFilterStream` is deprecated, use `Compressor` or `Decompressor` instead.
* @see Compressor
* @see Decompressor
*/
class ZlibFilterStream extends TransformStream
{
/**
* @deprecated
* @return self
*/
public static function createGzipCompressor($level = -1)
{
return new Compressor(ZLIB_ENCODING_GZIP, $level);
}

/**
* @deprecated
* @return self
*/
public static function createGzipDecompressor()
{
return new Decompressor(ZLIB_ENCODING_GZIP);
}

/**
* @deprecated
* @return self
*/
public static function createDeflateCompressor($level = -1)
{
return new Compressor(ZLIB_ENCODING_RAW, $level);
}

/**
* @deprecated
* @return self
*/
public static function createDeflateDecompressor()
{
return new Decompressor(ZLIB_ENCODING_RAW);
}

/**
* @deprecated
* @return self
*/
public static function createZlibCompressor($level = -1)
{
return new Compressor(ZLIB_ENCODING_DEFLATE, $level);
}

/**
* @deprecated
* @return self
*/
public static function createZlibDecompressor()
{
return new Decompressor(ZLIB_ENCODING_DEFLATE);
}

private $filter;

/**
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
<?php

use Clue\React\Zlib\ZlibFilterStream;
use Clue\React\Zlib\Decompressor;

class ZlibFilterDeflateDecompressorTest extends TestCase
class DeflateDecompressorTest extends TestCase
{
private $decompressor;

public function setUp()
{
$this->decompressor = ZlibFilterStream::createDeflateDecompressor();
$this->decompressor = new Decompressor(ZLIB_ENCODING_RAW);
}

public function testInflateEmpty()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
<?php

use Clue\React\Zlib\ZlibFilterStream;
use Clue\React\Zlib\Compressor;

class ZlibFilterDeflateCompressorTest extends TestCase
class DeflateCompressorTest extends TestCase
{
private $compressor;

public function setUp()
{
$this->compressor = ZlibFilterStream::createDeflateCompressor();
$this->compressor = new Compressor(ZLIB_ENCODING_RAW);
}

public function testDeflateEmpty()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
<?php

use Clue\React\Zlib\ZlibFilterStream;
use Clue\React\Zlib\Compressor;

class ZlibFilterGzipCompressorTest extends TestCase
class GzipCompressorTest extends TestCase
{
private $compressor;

public function setUp()
{
$this->compressor = ZlibFilterStream::createGzipCompressor();
$this->compressor = new Compressor(ZLIB_ENCODING_GZIP);
}

public function testCompressEmpty()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
<?php

use Clue\React\Zlib\ZlibFilterStream;
use Clue\React\Zlib\Decompressor;

class ZlibFilterGzipDecompressorTest extends TestCase
class GzipDecompressorTest extends TestCase
{
private $decompressor;

public function setUp()
{
$this->decompressor = ZlibFilterStream::createGzipDecompressor();
$this->decompressor = new Decompressor(ZLIB_ENCODING_GZIP);
}

public function testDecompressEmpty()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
<?php

use Clue\React\Zlib\ZlibFilterStream;
use Clue\React\Zlib\Compressor;

class ZlibFilterZlibCompressorTest extends TestCase
class ZlibCompressorTest extends TestCase
{
private $compressor;

public function setUp()
{
$this->compressor = ZlibFilterStream::createZlibCompressor();
$this->compressor = new Compressor(ZLIB_ENCODING_DEFLATE);
}

public function testCompressEmpty()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
<?php

use Clue\React\Zlib\ZlibFilterStream;
use Clue\React\Zlib\Decompressor;

class ZlibFilterZlibDecompressorTest extends TestCase
class ZlibDecompressorTest extends TestCase
{
private $decompressor;

public function setUp()
{
$this->decompressor = ZlibFilterStream::createZlibDecompressor();
$this->decompressor = new Decompressor(ZLIB_ENCODING_DEFLATE);
}

public function testDecompressEmpty()
Expand Down