diff --git a/src/Console/StartWebSocketServer.php b/src/Console/StartWebSocketServer.php index d33dc1e..a4e8ff2 100644 --- a/src/Console/StartWebSocketServer.php +++ b/src/Console/StartWebSocketServer.php @@ -6,9 +6,9 @@ use React\Socket\Connector; use Clue\React\Buzz\Browser; use Illuminate\Console\Command; use React\Dns\Config\Config as DnsConfig; +use React\Dns\Resolver\ResolverInterface; use React\EventLoop\Factory as LoopFactory; use React\Dns\Resolver\Factory as DnsFactory; -use React\Dns\Resolver\Resolver as ReactDnsResolver; use BeyondCode\LaravelWebSockets\Statistics\DnsResolver; use BeyondCode\LaravelWebSockets\Facades\StatisticsLogger; use BeyondCode\LaravelWebSockets\Facades\WebSocketsRouter; @@ -135,7 +135,7 @@ class StartWebSocketServer extends Command ->run(); } - protected function getDnsResolver(): ReactDnsResolver + protected function getDnsResolver(): ResolverInterface { if (! config('websockets.statistics.perform_dns_lookup')) { return new DnsResolver; diff --git a/src/Statistics/DnsResolver.php b/src/Statistics/DnsResolver.php index 824167c..e6522f0 100644 --- a/src/Statistics/DnsResolver.php +++ b/src/Statistics/DnsResolver.php @@ -2,11 +2,13 @@ namespace BeyondCode\LaravelWebSockets\Statistics; -use React\Dns\Resolver\Resolver; use React\Promise\FulfilledPromise; +use React\Dns\Resolver\ResolverInterface; -class DnsResolver extends Resolver +class DnsResolver implements ResolverInterface { + private $internalIP = '127.0.0.1'; + /* * This empty constructor is needed so we don't have to setup the parent's dependencies. */ @@ -17,6 +19,21 @@ class DnsResolver extends Resolver public function resolve($domain) { - return new FulfilledPromise('127.0.0.1'); + return $this->resolveInternal($domain); + } + + public function resolveAll($domain, $type) + { + return $this->resolveInternal($domain, $type); + } + + private function resolveInternal($domain, $type = null) + { + return new FulfilledPromise($this->internalIP); + } + + public function __toString() + { + return $this->internalIP; } }