public function geocode($address)
{
if (null === $this->apiKey) {
throw new InvalidCredentials('No API key provided.');
}
// This API doesn't handle IPs
if (filter_var($address, FILTER_VALIDATE_IP)) {
throw new UnsupportedOperation('The BingMaps provider does not support IP addresses, only street addresses.');
}
$query = sprintf(self::GEOCODE_ENDPOINT_URL, $this->getLimit(), urlencode($address), $this->apiKey);
return $this->executeQuery($query);
}