public function asExistingHttpUri(callable $checkdnsrr = null)
    {
        $httpUri = $this->asHttpUri();
        if (null === $httpUri) {
            return null;
        }

        if ($httpUri->hasDnsRecord($checkdnsrr)) {
            return $httpUri;
        }

        $this->paramErrors->append($this->paramName, 'HTTP_URI_NOT_AVAILABLE');
        return null;
    }