mirror of
https://github.com/Yetangitu/ampache
synced 2025-10-05 02:39:47 +02:00
Move from React 0.4.0 to 0.3.4 for PHP 5.3 compatibility reasons
This commit is contained in:
parent
d3f01a3bc7
commit
7f82bea13e
50 changed files with 608 additions and 1937 deletions
|
@ -4,6 +4,7 @@ namespace React\Dns\Query;
|
|||
|
||||
use React\Dns\Model\Message;
|
||||
use React\Dns\Model\Record;
|
||||
use React\Promise\When;
|
||||
|
||||
class CachedExecutor implements ExecutorInterface
|
||||
{
|
||||
|
@ -18,14 +19,15 @@ class CachedExecutor implements ExecutorInterface
|
|||
|
||||
public function query($nameserver, Query $query)
|
||||
{
|
||||
$that = $this;
|
||||
$executor = $this->executor;
|
||||
$cache = $this->cache;
|
||||
|
||||
return $this->cache
|
||||
->lookup($query)
|
||||
->then(
|
||||
function ($cachedRecords) use ($query) {
|
||||
return $this->buildResponse($query, $cachedRecords);
|
||||
function ($cachedRecords) use ($that, $query) {
|
||||
return $that->buildResponse($query, $cachedRecords);
|
||||
},
|
||||
function () use ($executor, $cache, $nameserver, $query) {
|
||||
return $executor
|
||||
|
|
|
@ -48,14 +48,15 @@ class Executor implements ExecutorInterface
|
|||
|
||||
public function doQuery($nameserver, $transport, $queryData, $name)
|
||||
{
|
||||
$that = $this;
|
||||
$parser = $this->parser;
|
||||
$loop = $this->loop;
|
||||
|
||||
$response = new Message();
|
||||
$deferred = new Deferred();
|
||||
|
||||
$retryWithTcp = function () use ($nameserver, $queryData, $name) {
|
||||
return $this->doQuery($nameserver, 'tcp', $queryData, $name);
|
||||
$retryWithTcp = function () use ($that, $nameserver, $queryData, $name) {
|
||||
return $that->doQuery($nameserver, 'tcp', $queryData, $name);
|
||||
};
|
||||
|
||||
$timer = $this->loop->addTimer($this->timeout, function () use (&$conn, $name, $deferred) {
|
||||
|
|
|
@ -5,7 +5,7 @@ namespace React\Dns\Query;
|
|||
use React\Cache\CacheInterface;
|
||||
use React\Dns\Model\Message;
|
||||
use React\Dns\Model\Record;
|
||||
use React\Promise;
|
||||
use React\Promise\When;
|
||||
|
||||
class RecordCache
|
||||
{
|
||||
|
@ -29,7 +29,7 @@ class RecordCache
|
|||
$recordBag = unserialize($value);
|
||||
|
||||
if (null !== $expiredAt && $expiredAt <= $query->currentTime) {
|
||||
return Promise\reject();
|
||||
return When::reject();
|
||||
}
|
||||
|
||||
return $recordBag->all();
|
||||
|
|
|
@ -19,16 +19,17 @@ class RetryExecutor implements ExecutorInterface
|
|||
{
|
||||
$deferred = new Deferred();
|
||||
|
||||
$this->tryQuery($nameserver, $query, $this->retries, $deferred);
|
||||
$this->tryQuery($nameserver, $query, $this->retries, $deferred->resolver());
|
||||
|
||||
return $deferred->promise();
|
||||
}
|
||||
|
||||
public function tryQuery($nameserver, Query $query, $retries, $deferred)
|
||||
public function tryQuery($nameserver, Query $query, $retries, $resolver)
|
||||
{
|
||||
$errorback = function ($error) use ($nameserver, $query, $retries, $deferred) {
|
||||
$that = $this;
|
||||
$errorback = function ($error) use ($nameserver, $query, $retries, $resolver, $that) {
|
||||
if (!$error instanceof TimeoutException) {
|
||||
$deferred->reject($error);
|
||||
$resolver->reject($error);
|
||||
return;
|
||||
}
|
||||
if (0 >= $retries) {
|
||||
|
@ -37,14 +38,14 @@ class RetryExecutor implements ExecutorInterface
|
|||
0,
|
||||
$error
|
||||
);
|
||||
$deferred->reject($error);
|
||||
$resolver->reject($error);
|
||||
return;
|
||||
}
|
||||
$this->tryQuery($nameserver, $query, $retries-1, $deferred);
|
||||
$that->tryQuery($nameserver, $query, $retries-1, $resolver);
|
||||
};
|
||||
|
||||
$this->executor
|
||||
->query($nameserver, $query)
|
||||
->then(array($deferred, 'resolve'), $errorback);
|
||||
->then(array($resolver, 'resolve'), $errorback);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue