public function fetch(ProviderResource $resource)
{
if ($resource->getProviderClassName() !== static::class) {
throw new ForeignResourceException(sprintf('Cannot fetch data from foreign source: "%s".', get_class($resource)));
}
return $resource->fetch($this->connector, $this->options ? clone $this->options : null);
}